Моя тренировка нейронной сети в pytorch становится очень странной.
Я тренирую известный набор данных, который был разбит на поезд и проверку. Я перетасовываю данные во время тренировок и делаю пополнение данных на лету.
У меня есть такие результаты:
Точность поезда начинается с 80% и увеличивается
Потеря поезда уменьшается и остается стабильным
Точность проверки начинается с 30% , но медленно увеличивается
Потери при проверке возрастают
У меня есть следующие графики, чтобы показать:
Как вы можете объяснить, что потери при проверке возрастают, а точность проверки увеличивается?
Как может быть такая большая разница в точности между проверочными и обучающими наборами? 90% и 40%?
Обновление:
Я сбалансировал набор данных. Это бинарная классификация. Теперь у него 1700 примеров из 1 класса, 1200 примеров из 2 класса. Всего 600 для проверки и 2300 для обучения. Я по-прежнему вижу подобное поведение:
** Может ли это быть, потому что я заморозил веса в части сети?
* * Может ли это быть из-за гиперпараметров типа lr?