Отличие функции стоимости обучающей выборки от функции стоимости мини-пакета

Допустим, у меня есть нейронная сеть с именем «NN» с 500 весами и смещениями (всего параметры = 500).

Для одной обучающей выборки: она вводится через «NN», выдает результат (Out1), результат сравнивается с обучающей меткой, и с помощью алгоритма обратного распространения есть небольшое изменение (положительное или отрицательное) в каждом параметре « НН'. Функция стоимости представлена ​​вектором размерности 1x500 со всеми небольшими модификациями, полученными алгоритмом обратного распространения.

Допустим, mini_batch_size=10

Для одной мини-партии: каждая из 10 обучающих выборок обеспечивает функцию стоимости размером 1x500.

Чтобы лучше визуализировать и объяснить, скажем, мы создаем матрицу 10x500 (называемую M), где каждая строка является функцией стоимости каждой обучающей выборки.

Вопрос: Для примера обучения мини-пакета: является ли конечная функция стоимости мини-пакета результатом среднего значения всех элементов столбца?

ПД. В случае, если вопрос недостаточно ясен, я оставил некоторый код того, что я имею в виду.

for j=1:500
Cost_mini_batch(j)=sum(M(:,j))/10
end

Размер Cost_mini_batch составляет 1x500.


person Arman Mojaver    schedule 21.03.2020    source источник


Ответы (1)


«Стоимость» относится к потерям, то есть к ошибке между Out1 и обучающей меткой.

Функция стоимости представлена ​​вектором размерности 1x500 со всеми небольшими модификациями, полученными алгоритмом обратного распространения.

Это называется «градиент», а не функция стоимости.

Вопрос: Для примера обучения мини-пакета: является ли конечная функция стоимости мини-пакета результатом среднего значения всех элементов столбца?

Да, функция градиента и стоимости для мини-пакета представляет собой среднее значение градиентов каждого примера в мини-пакете.

person BlackBear    schedule 21.03.2020