Я исследую RNN и после прочтения этой статьи узнал, как Backrpop-time-time работает на RNN: https://arxiv.org/pdf/1610.02583.pdf
Но у меня есть некоторая путаница со следующей реализацией (из cs231):
for t in reversed(xrange(T)): dh_current = dh[t] + dh_prev dx_t, dh_prev, dWx_t, dWh_t, db_t = rnn_step_backward(dh_current, cache[t]) dx[t] += dx_t dh0 = dh_prev dWx += dWx_t dWh += dWh_t db += db_t
Зачем суммировать градиенты dh [t] и dh_prev, dh_current = dh [t] + dh_prev ?
Полный исходный код: https://github.com/williamchan/cs231-assignment3/blob/master/cs231n/rnn_layers.py