Учитель заставляет с помощью model.eval () - PullRequest
0 голосов
/ 17 января 2020

У меня есть seq2seq GRU модель, основанная на Pytorch Chatbot Tutorial со 100% принуждением учителя. Потеря приятно уменьшается с течением времени. Однако, когда я помещаю свою модель в режим model.eval () и без принудительного воздействия учителя, потеря eval с течением времени отклоняется (увеличивается) от потери обучения (уменьшается).

Я пытался использовать принуждение учителя планировщики во время обучения, например, экспоненциальная вероятность, или, в качестве альтернативы, планировщик, который дает 0,5 вероятности использования на заданном временном шаге, это не привело к изменению тренда eval-train.

Затем я попробовал следующее:

  • данные поезда == eval data, результаты: тот же тренд

  • удалить перетасовку партии, результаты: тот же тренд

  • изменить размер пакета, результаты: та же тенденция

  • изменить размер набора данных, результаты: та же тенденция

Примечание: у меня нет партии нормализация в моей модели. Включение принудительного воздействия учителя в мою функцию eval дает ожидаемые потери eval (такие же, как потеря поезда).

Есть ли что-нибудь, что могло бы объяснить такие результаты, кроме ошибок кодирования (у меня есть модульные тесты на каждом этапе).

Спасибо.

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