Что такое Overfitting и Underfitting в машинном обучении?

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

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

Что такое переборка?

Давайте подробно разберемся, что такое перебор. Оверфиттинг — это ошибка моделирования, которая возникает, когда функция слишком близко подходит к ограниченному набору точек данных. Переподгонка происходит из-за переобучения модели. Мы исследовали эту тему и получили две основные причины переобучения. Также мы хотели бы поделиться ими с вами.

  1. Переподгонка может произойти из-за шума в данных, который становится приоритетным при обучении.
  2. Использование слишком малого количества данных по сравнению с требуемым уровнем может привести к переподгонке.

Теперь давайте проясним эту тему на примере. Допустим, мы используем машинное обучение для обучения модели для анализа резюме на собеседовании. Имеется 10 000 резюме, и мы обучаем машину на этих резюме и их результатах. Затем мы пробуем модель на исходном наборе данных, и предсказание результатов оказывается точным на 99%.

Но проблема возникает, когда мы запускаем модель на новом наборе данных резюме. Новая модель является невидимой для модели, и она обеспечивает только 50% точности. Это известно как чрезмерная подгонка. Модель не способна хорошо обобщить данные, полученные в ходе обучения, на неизвестные данные.

Почему переподгонка плоха?

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

Как обнаружить чрезмерную подгонку?

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

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

Например, если ваша модель показывает 95% точности на обучающем множестве, но только 55% точности на тестовом множестве, то вам необходимо предпринять какие-то меры против перефиттинга.  

Предотвращение чрезмерной подгонки

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

  1. Используйте более простую модель. Для этого можно либо уменьшить параметры, либо использовать более простую модель. Например, вы можете использовать линейную модель вместо сложной полиномиальной модели более высокой степени.
  2. Вы можете обучить модель на большем количестве обучающих данных.
  3. Уменьшите шум в данных, удалив выбросы или устранив недостающие значения.
  4. Проведите перекрестную проверку, так как это мощная профилактическая мера против чрезмерной подгонки. Вы должны использовать исходные учебные данные для создания нескольких мини-сплитов «тренировка-тест». Затем вы будете использовать эти разбиения для настройки вашей модели. Этот процесс известен как кросс-валидация.  
  5. Регуляризация модели — еще одно хорошее решение для борьбы с переборчивостью. Она относится к общей категории методов искусственного принуждения вашей модели выглядеть проще.

Что такое недооптимизация?

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

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

Таким образом, модель будет склонна делать много неверных прогнозов. В двух словах, Underfitting означает ситуацию с высокой погрешностью и низкой дисперсией. Надеюсь, мы разъяснили вам эту тему. Теперь давайте вкратце рассмотрим, как подгонка влияет на машинное обучение.

Почему подгонка плоха?

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

Как обнаружить недооптимизацию?

Мы расскажем о самом простом способе определения недооценки. Вы должны разделить исходный набор данных на две части: обучающий и тестовый наборы данных. Затем вы обучите свою модель на обучающем наборе данных.

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

Как уменьшить недооценку?

Здесь мы поделимся некоторыми эффективными методами снижения недооценки. К ним относятся

  1. Повысьте сложность модели.
  2. Увеличьте количество признаков. Вы должны провести инженерию признаков. 
  3. Удалите шум из данных.
  4. Для получения лучших результатов можно увеличить количество эпох или продолжительность обучения.

Заключение

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

Оцените статью
cdelat.ru
Добавить комментарий