Усеченное обратное распространение во времени (BPTT) в Pytorch - PullRequest
0 голосов
/ 24 декабря 2018

В pytorch я обучаю сеть RNN / GRU / LSTM, запуская обратное распространение (через время) с:

loss.backward()

Когда последовательность длинная, я хотел бы сделать Усеченное обратное распространение через время вместо обычного обратного распространения через время, когда используется вся последовательность.

Но я не могу найти в API-интерфейсе Pytorch какие-либо параметры или функции для настройки усеченного BPTT.Я пропустил это?Я должен сам кодировать это в Pytorch?

1 Ответ

0 голосов
/ 18 марта 2019

Вот пример:

for t in range(T):
   y = lstm(y)
   if T-t == k:
      out.detach()
out.backward()

Так что в этом примере k - это параметр, который вы используете для управления временными шагами, которые вы хотите развернуть.

...