Функции стоимости (cost functions) являются фундаментальным элементом обучения нейронных сетей. Они определяют меру ошибки сети, оценивая расхождение между предсказанными значениями и реальными целевыми значениями. В библиотеке Synaptic реализованы несколько стандартных функций стоимости: CROSS_ENTROPY, MSE, BINARY. Каждая из них предназначена для конкретных типов задач и имеет свои особенности в вычислении и поведении при обучении.
Cross-Entropy (кросс-энтропия) используется преимущественно для задач классификации, где на выходе сети ожидаются вероятности принадлежности к классам.
Определение и формула: Для бинарной классификации с одним выходным нейроном:
[ C = - _{i=1}^{N} ]
Для многоклассовой классификации используется расширение формулы через сумму по классам:
[ C = - {i=1}^{N} {k=1}^{K} y_{ik} (_{ik})]
Особенности:
Пример использования в Synaptic:
const { Network, Trainer } = require('synaptic');
let myNetwork = new Network();
let trainer = new Trainer(myNetwork);
trainer.train(trainingSet, {
rate: 0.1,
iterations: 20000,
cost: Trainer.cost.CROSS_ENTROPY,
log: 1000
});
MSE (среднеквадратичная ошибка) широко применяется для регрессионных задач и задач предсказания численных значений.
Определение и формула:
[ MSE = _{i=1}^{N} (y_i - _i)^2]
Особенности:
Пример использования в Synaptic:
trainer.train(trainingSet, {
rate: 0.05,
iterations: 15000,
cost: Trainer.cost.MSE,
log: 500
});
Функция BINARY применяется для задач бинарной классификации, где выходные значения сети должны быть строго 0 или 1.
Определение: BINARY вычисляет количество неверно классифицированных элементов, используя пороговое преобразование выхода сети.
[ C = _{i=1}^{N} ((_i) y_i)]
Особенности:
Пример использования в Synaptic:
trainer.train(trainingSet, {
rate: 0.1,
iterations: 10000,
cost: Trainer.cost.BINARY,
log: 100
});
Правильный выбор функции стоимости напрямую влияет на скорость
сходимости сети и качество конечной модели. В Synaptic каждая функция
встроена и легко подключается через параметр cost в объекте
Trainer, обеспечивая гибкость настройки обучения.