2015-03-23 5 views
0

Я понимаю, что в SGD мы обновляем весы w.r.t. на один пример обучения, такие как:Линейная регрессия с правилом обновления Stochastic Gradient Descent (SGD)

for i in range(m): 
    weights = weights + (alpha * gradient) # for each i in m 

ли мы затем вычислить новую среднеквадратическую ошибку (моя стоимость функции) на основе этого одного обновления или после целой пробегают обучающий набор?

ответ

1

Основано на одном обновлении. Градиент оценивается с использованием одного примера обучения, а затем используется для обновления ваших весов. После обновления вы можете затем вычислить новую функцию потерь, чтобы увидеть, как работает ваша оптимизация.

+0

Так что: Для каждого г в обучающем наборе: 1. Обновление веса WRT на D 2. Compute новая ошибка – indecisivecoder

+0

Звуки правильно :) Вы можете запустить через обучение по мере необходимости, как много раз установить. Обратите внимание, что вам может потребоваться перетасовать тренировочный набор, чтобы избежать колебания сигнала ошибки. – casper

+0

Вы вычисляете функцию потерь w.r.t на эту единую точку данных или w.r.t. весь набор тренировок? – indecisivecoder

Смежные вопросы