Глубокое обучение

Три безумно простых рецепта борьбы с переобучением в моделях глубокого обучения

Эти три основные идеи должны быть реализованы в любом эксперименте по моделированию машинного обучения.

Недавно я начал выпускать образовательный информационный бюллетень, посвященный ИИ, на который уже подписано более 80 000 человек. TheSequence - это информационный бюллетень, ориентированный на ML (то есть без рекламы, без новостей и т. Д.), На чтение которого уходит 5 минут. Наша цель - держать вас в курсе проектов, исследовательских работ и концепций машинного обучения. Пожалуйста, попробуйте, подписавшись ниже:



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

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

Три простые стратегии борьбы с переобучением

Хотя не существует серебряных пуль для предотвращения переобучения, практический опыт показал некоторые простые, почти здравые правила, которые помогают предотвратить это явление в приложениях глубокого обучения. Из десятков опубликованных передовых практик по предотвращению переобучения можно выделить три фундаментальные идеи, которые охватывают большинство из них.

Соотношение данные / гипотеза

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

Существует множество алгоритмов глубокого обучения, таких как индуктивное обучение, которые основаны на постоянном генерировании новых, а иногда и более сложных гипотез. В этих сценариях есть некоторые статистические методы, которые могут помочь оценить правильное количество гипотез, необходимых для оптимизации шансов найти одну, близкую к правильной. Хотя этот подход не дает точного ответа, он может помочь поддерживать статистически сбалансированное соотношение между количеством гипотез и составом набора данных. Профессор Гарварда Лесли Валиант блестяще объясняет эту концепцию в своей книге Вероятно, приблизительно правильно.

В пользу более простых гипотез

Концептуально тривиальная, но технически сложная идея предотвращения переобучения в моделях глубокого обучения состоит в том, чтобы постоянно генерировать более простые гипотезы. Конечно! Просто всегда лучше, не так ли? Но какова более простая гипотеза в контексте алгоритмов глубокого обучения? Если нам нужно свести это к количественному коэффициенту, я бы сказал, что количество атрибутов в гипотезе глубокого обучения прямо пропорционально ее сложности.

Более простые гипотезы, как правило, легче оценивать, чем другие гипотезы с большим количеством атрибутов, как в вычислительном, так и в когнитивном отношении. В результате более простые модели обычно не так быстро подгоняются, чем сложные. Большой! Теперь следующая очевидная головная боль - выяснить, как генерировать более простые гипотезы в моделях глубокого обучения. Не столь очевидный метод заключается в наложении какого-либо штрафа на алгоритм на основе его предполагаемой сложности. Этот механизм имеет тенденцию отдавать предпочтение более простым и приблизительно точным гипотезам по сравнению с более сложными, а иногда и более точными гипотезами, которые могут развалиться при появлении новых наборов данных.

Баланс смещения / отклонения

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

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

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