Хорошо ли переоснащение в сверточной сети? - PullRequest
1 голос
/ 28 июня 2019

Я использую resnet50 для классификации изображений цветов из набора данных Kaggle.Я хотел бы уточнить кое-что о моих результатах.

 epoch  train_loss  valid_loss  error_rate  time

   0    0.205352    0.226580    0.077546    02:01

   1    0.148942    0.205224    0.074074    02:01

Это две последние эпохи обучения.Как вы можете видеть, вторая эпоха демонстрирует некоторое переоснащение, потому что train_loss является хорошим запасом ниже, чем потери при проверке.Несмотря на переоснащение, error_rate и потеря проверки уменьшились.Мне интересно, действительно ли модель улучшилась, несмотря на переоснащение.Лучше ли использовать модель эпохи 0 или эпохи 1 для невидимых данных?Спасибо!

1 Ответ

2 голосов
/ 28 июня 2019

К сожалению, в настоящее время термин «переоснащение» употребляется очень часто, и он означает почти все, что связано с неоптимальной производительностью; тем не менее, практически говоря, переоснащение означает что-то очень специфическое: его контрольная подпись - это когда ваша потеря при проверке начинает увеличиваться, а ваша потеря при обучении продолжает уменьшаться, т.е.

adapted from Wikipedia

(Изображение адаптировано из записи Википедии о переоснащении )

Понятно, что ничего подобного не происходит в вашем случае; «граница» между вашей тренировкой и потерей при проверке - это совсем другая история (она называется разрыв в обобщении ) и не означает переобучения.

Таким образом, в принципе , у вас есть абсолютно нет причин вообще выбирать модель с более высокой проверкой потерей (т.е. вашей первой) вместо одной с меньшей потерей проверки (ваш второй).

...