В настоящее время я обучаю нейронную сеть, и я не могу решить, какой из них использовать для реализации моих критериев ранней остановки: потеря проверки или метрики, такие как точность / f1score / auc / независимо от того, что вычислено на наборе проверки.
В своем исследовании я натолкнулся на статьи, защищающие обе точки зрения. Керас, по-видимому, по умолчанию потеряет валидацию, но я также натолкнулся на убедительные ответы для противоположного подхода (например, здесь ).
У кого-нибудь есть указания о том, когда использовать предпочтительно потери проверки и когда использовать конкретную метрику?
cross_entropy
потеря является более предпочтительным кандидатом, чемMSE
илиMAE
. Ознакомьтесь с разделом «Заключение» этой статьи и этой статьей о статистике .На мой взгляд, это субъективно и специфично для проблемы. В качестве метрики вождения вы должны использовать все, что является наиболее важным фактором в вашем уме, поскольку это может сделать ваши решения о том, как изменить модель, более сфокусированным.
Большинство показателей, которые можно вычислить, будут коррелированны / похожи во многих отношениях: например, если вы используете MSE для своей потери, а затем записывает MAPE (средняя средняя процентная ошибка) или простая потеря , они дают вам сопоставимые кривые потерь.L1
Например, если вы будете сообщать оценку F1 в своем отчете / своему боссу и т. Д. (И при условии, что это действительно то, о чем они действительно заботятся), то использование этого показателя может быть наиболее целесообразным. Например, оценка F1 учитывает точность и отзыв, т. Е. Описывает связь между двумя более детальными метриками.
Объединяя эти вещи, вычисление результатов, отличных от нормальных потерь, может быть полезным для обзора и для того, чтобы увидеть, как ваша конечная метрика оптимизируется в ходе итераций обучения. Эти отношения могут дать вам более глубокое понимание проблемы,
Однако, как правило, лучше всего попробовать несколько вариантов, так как оптимизация потери проверки может позволить тренировке работать дольше, что в конечном итоге также может привести к превосходному баллу F1 . Точность и отзыв могут повлиять на некоторые локальные минимумы, производя почти статический результат Ф1 - так что вы прекратили бы тренировки. Если вы оптимизировали чистые потери, вы могли зафиксировать достаточные колебания потерь, чтобы позволить вам тренироваться дольше.
источник
Если вы тренируетесь в глубокой сети, я настоятельно рекомендую вам не использовать раннюю остановку. В глубоком обучении это не очень привычно. Вместо этого вы можете использовать другие методы, такие как отсев для обобщения. Если вы настаиваете на этом, выбор критерия зависит от вашей задачи. Если у вас есть несбалансированные данные, вы должны использовать
F1
оценку и оценивать ее по данным перекрестной проверки. Если у вас есть сбалансированные данные, постарайтесь использовать точность данных перекрестной проверки. Другие методы сильно зависят от вашей задачи.Я настоятельно рекомендую вам найти модель, которая очень хорошо соответствует вашим данным, и использовать ее после этого. Это самая обычная вещь, которую люди используют для глубоких моделей.
источник