У меня есть seq2seq GRU модель, основанная на Pytorch Chatbot Tutorial со 100% принуждением учителя. Потеря приятно уменьшается с течением времени. Однако, когда я помещаю свою модель в режим model.eval () и без принудительного воздействия учителя, потеря eval с течением времени отклоняется (увеличивается) от потери обучения (уменьшается).
Я пытался использовать принуждение учителя планировщики во время обучения, например, экспоненциальная вероятность, или, в качестве альтернативы, планировщик, который дает 0,5 вероятности использования на заданном временном шаге, это не привело к изменению тренда eval-train.
Затем я попробовал следующее:
данные поезда == eval data, результаты: тот же тренд
удалить перетасовку партии, результаты: тот же тренд
изменить размер пакета, результаты: та же тенденция
изменить размер набора данных, результаты: та же тенденция
Примечание: у меня нет партии нормализация в моей модели. Включение принудительного воздействия учителя в мою функцию eval дает ожидаемые потери eval (такие же, как потеря поезда).
Есть ли что-нибудь, что могло бы объяснить такие результаты, кроме ошибок кодирования (у меня есть модульные тесты на каждом этапе).
Спасибо.