Проблема в глубоком обучении при обратном распространении.(Python) - PullRequest
0 голосов
/ 01 января 2019

Не могу понять проблему с этой простой двухуровневой сетью.Процесс пересылки, как представляется, не содержит ошибок, однако я не могу понять, как рассчитать стоимость для w1, w2 и b1, которые являются весами и смещением для первого слоя.

//forward

z1 = point[0]*w1 + point[1]*w2 +  b1
z2 = sigmoid(z1)*w3 + b2
pred = sigmoid(z2)


//backward

z2_d_cost = 2 * (pred-target)
z2_d_pred = sigmoid_p(z2)
z2_cost_pred = z2_d_cost * z2_d_pred

w3 = w3 - z2*lrate*z2_cost_pred
b2 = b2 - lrate*z2_cost_pred

z1_d_pred = sigmoid_p(z1) * z2_cost_pred * w3

w1 = w1 - point[0]*lrate*z1_d_pred
w2 = w2 - point[1]*lrate*z1_d_pred
b1 = b1 - lrate*z1_d_pred

1 Ответ

0 голосов
/ 01 января 2019

нвм понял это.простая ошибка, это должно быть w3 = w3 - z1 * lrate * z2_cost_pred

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...