Да, это хорошо работает.
Вы должны относиться к функции стоимости mse
.
mse = tf.reduce_mean(tf.square((x*w+b)-y))
Функция стоимости вычисляет квадрат разности. Это означает, что всегда -
значения становятся +
.
И, Вы правы.
7-1
и 5+ -1
имеют ту же стоимость, что и 36.
Для большего понимания градиентного спуска Вам необходимо знать, как минимизировать mse
.
На изображении ниже вы можете видеть текущие mse
по x*w+b
.
В этот момент градиентный спуск получает наклон, чтобы определить направление w, которое будет изменено.

Наклон вычисляется как производная .

Вы можете увидеть следующую формулу после производной функции mse
.

Итак, вы можете видеть направление W, где W будет смещено влево, если ((w*x-y)*x) > 0
, и смещено вправо, если нет.