Может ли ошибка проверки набора данных быть выше, чем ошибка теста в течение всего процесса обучения нейронной сети?

Я тренирую сверточную нейронную сеть, используя библиотеку pylearn2, и во время всех ephocs моя ошибка проверки достоверно выше, чем ошибка тестирования. Является ли это возможным? Если да, то в каких ситуациях?

2 ответа

Решение

перемещение комментария к ответу; изменение моего предыдущего ответа казалось неправильным

Полный набор данных может быть неправильно перемешан, поэтому примеры в тестовом наборе легче классифицировать.

Повторение эксперимента с примерами, перераспределенными между подмножествами train / valid / test, покажет, если это так.

Обучающий набор - это набор изображений, которые подаются в сеть, ошибки вычисляются на другом конце, а затем параметры сети корректируются на основе этих ошибок. Набор проверки - это набор изображений, которые подаются в сеть, ошибки вычисляются, но параметры сети НЕ настраиваются.

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

С этой точки зрения вы должны ожидать, что в большинстве случаев ошибка будет выше valid_y_misclass чем на train_y_miscalss,

Смотрите здесь для обсуждения наборов изображений.


Редактировать: пример с использованием нотации pylearn2

Размер поезда: 700 Примеры; Размер действительного набора: 300 Примеры

После некоторой тренировки (скажем, 5 эпох) сетевые гвозди 650 снаружи 700 примеры в учебном наборе и 200 снаружи 300 в действительном наборе.

В итоге после 5 эпох:

train_y_misclass = (700 - 650) / 700 = 0.07142857142
valid_y_misclass = (300 - 200) / 300 = 0.33333333333

valid_y_misclass > train_y_misclass и этого следовало ожидать.

Другие вопросы по тегам