Эта серия представляет собой краткое изложение курса «Основы машинного обучения», предлагаемого профессором Сюань-Тянь Линем с факультета информационной инженерии Тайваньского национального университета. Основное внимание уделяется уходу, а не подробным заметкам, поэтому некоторые детали могут быть опущены.
Курс состоит из 16 лекций, разделенных на 4 части:
- Когда машины смогут учиться? (Когда машины смогут учиться?)
- Почему машины могут учиться? (Почему машины могут учиться?)
- Как машины учатся? (Как машины могут учиться?)
- Как машины могут учиться лучше? (Как машины могут учиться лучше?)
Эта статья является частью 4, соответствующей лекциям 13-16 исходного курса.
Основное содержание этого раздела:
- Проблема переобучения, взаимосвязь между переоснащением и шумом, а также сложность целевой функции;
- Регуляризация, связь между регуляризацией и теорией ВК;
- Валидация, перекрестная проверка с исключением одного и V-кратная перекрестная проверка;
- Три принципа обучения, а именно бритва Оккама, предвзятость выборки и отслеживание данных.
1 Проблема переобучения
1.1 Возникновение переобучения
Теперь предположим, что 5 сэмплов сгенерированы с полиномом 2-й степени с небольшим шумом, для этих 5 сэмплов он может быть идеально аппроксимирован полиномом 4-й степени:
это позволяет,ноНо он будет очень большим.
если он появитсямаленький,В большом случае плохое обобщение. Если во время тренировкиСтановясь все меньше и меньше,больше и больше, это называется переоснащением (overfitting).
И шум, и масштаб данных могут влиять на переоснащение. Давайте сначала посмотрим на следующие два набора данных:
- Данные генерируются полиномом 10-й степени с некоторым шумом;
- Данные генерировались полиномами 50-й степени и не содержали шумов.
Изображение набора данных выглядит следующим образом:
Если мы аппроксимируем два вышеуказанных набора данных полиномами степени 2 и 10 соответственно, топрибытьБудет ли происходить переобучение в процессе?
Результаты подгонки следующие:
После сравнения обнаруживается, что в обоих наборах данных происходит переобучение!
Научитесь изучать кривую, когдаочевиднобудет меньше,ноКогда он мал, у него будет большая ошибка обобщения. Серая область — это место, где происходит переобучение.
Фактически, для данных, сгенерированных свободным от шума полиномом 50-й степени, сама «сложность целевой функции» может рассматриваться как аналогичный шум.
Далее проведите более подробный эксперимент. использовать
генерироватьданные, из них— независимый и одинаково распределенный гауссовский шум, а уровень шума равен,Об уровне сложностираспределяется равномерно. То есть целевая функция имеетидве переменные.
Затем исправьтеи, или подогнать данные полиномами степени 2 и 10 соответственно, и использоватьИзмеряет уровень переобучения. Результат выглядит следующим образом:
Области с красноватыми цветами переоснащаются.
добавленГауссов шум можно назвать стохастическим шумом, а степень целевой функцииТакже присутствует шумоподобный эффект, поэтому его можно назватьdeterministic noise.
если,ТакДолжны быть некоторые части, которые не могут бытьпоймал, лучшийиРазница заключается в детерминированном шуме, который ведет себя как случайный шум (аналогично генераторам псевдослучайных чисел). Он отличается от стохастического шума тем, чтосвязанных, и для каждого, его значение детерминировано:
1.2 Обработка переобучения
Вообще говоря, идеи для борьбы с переоснащением следующие:
- Начните с простой модели;
- очистка данных (data cleaning), исправьте ошибочные данные (например, исправив категорию метки);
- Сокращение данных (data pruning), удаляя выбросы (outlier);
- data hinting, когда размера выборки недостаточно, вы можете выполнить некоторую простую обработку существующих выборок, чтобы увеличить размер выборки.Например, в цифровой классификации вы можете немного повернуть или перевести данные, не меняя их метки, так что выборка размер можно увеличить;
- Регуляризация(regularization), см. следующий раздел;
- проверять(validation), увидеть ниже.
2 Регуляризация
2.1 Регуляризация
Идея регуляризации как бы начинается с«отступить» на. Происхождение названия заключается в том, что на заре аппроксимации функций многие задачи были некорректными, то есть было много функций, удовлетворяющих решению задачи, поэтому были добавлены некоторые ограничения. В некотором смысле переобучение в машинном обучении также является проблемой «слишком много правильных решений».
Общая форма предположения в
иОбщая форма предположения в
На самом деле, пока предел, там будет. при использованииПри добавлении этого ограничения фактически используетсяЗаймитесь машинным обучением.
гибкость ограничена, ноЭто тоже очень опасно.Есть ли компромиссный набор гипотез? Можно также ослабить это состояние и стать, множество допущений при этом ограничении записывается как,имеют, то есть большеболее гибкий, но безТак опасно.
существует, решаемая задача трансформируется в
Это NP-сложная задача высокой сложности. вместо того, чтобы изменить его на
Пусть набор гипотез будет, что то же самое, чточастично перекрывается, а дляИмеет мягкую, гладкую структуру:
в умеОптимальное решение, найденное ниже,.
При отсутствии регуляризации направление обновления параметров с градиентным спуском. при добавлении регуляризацииКогда лимит установлен, он должен быть обновлен ниже лимита, как показано ниже:
Нормальный вектор, из рисунка видно, что покаине параллельна, она может продолжать убывать ниже этого предела, поэтому при достижении оптимального решения должно быть
Из этого проблема может быть преобразована в решение
в— введенный множитель Лагранжа. Предположим, известно, просто напишите формулу градиента, то есть:
можно решить напрямую
если только,Является положительно определенной матрицей, она должна быть обратимой.
В статистике это часто называют гребневой регрессией (ridge regression).
С другой точки зрения решить
Это эквивалентно решению (эквивалентно интегрированию обеих частей приведенной выше формулы)
Вызываемый регуляризатор, весьМожно назвать дополненной ошибкой.
Таким образом, изначально даноТеперь после решения условной задачи на максимальное значение она преобразуется в заданнуюБезусловная задача максимального значения.
возможноназывается регуляризацией затухания веса, потому что чем больше, что эквивалентно тому, чтокороче, также эквивалентноМеньше.
Небольшая деталь: при преобразовании признаков, если вы используете, предполагая,Такбыл бы очень мал, что потребовало бы большогоЕсли в это время снова использовать регуляризацию, она «сверхштрафует» многомерные коэффициенты, потому что они должны быть относительно большими. Поэтому в пространстве полиномов можно найти некоторые ортонормированные базисные функции, которые представляют собой специальные полиномы, называемые полиномами Лежандра (Legendre Polynomials), а затем используйте эти полиномы для преобразования признаковВот и все. Первые пять полиномов Легендра, как показано ниже:
2.2 Регуляризация и теория ВК
При минимизации аугментированной ошибки, хотя она и эквивалентна задаче на максимум с ограничениями, на самом деле это не так.ограничено всередина. Так как же именно происходит регуляризация?
Увеличенную ошибку можно увидеть с другого ракурса:
Руо Киза, который измеряет гипотезусложность. в то время как в VC Bound
измерить всесложность. еслииесть какая-то связь,прямо какагент, нет необходимости проходитьсделать хорошо, и в то же время наслаждаться всемвысокая гибкость.
Другой ракурс, первоначально для всейимеют, что теперь эквивалентно только рассмотрениюДопущение в , т. е. размерность ВК, становится. «Эффективное измерение VC» может быть определено,если толькоЕсли регуляризация проводится в эффективном измерении VC будет меньше.
2.3 Более общие регулярные термины
Существует ли более общий регулярный термин? Как выбрать? Есть следующие предложения:
- относящийся к цели (target-dependent), если мы знаем некоторые свойства целевой функции, мы можем ее выписать.Например, если мы заранее знаем, что целевая функция близка к четной функции, мы можем выбрать;
- разумный(plausible), вы можете выбрать гладкий или простой, например, обычный член L1 для разреженности, что будет объяснено ниже;
- Дружелюбный (friendly), то есть легко поддающийся оптимизации, например L2 обычный термин;
- Даже если выбранный регулярный срок не подходит, это не имеет значения, потому что вы можете положиться наЧтобы настроить, худшее эквивалентно тому, что вы не добавляете обычный термин.
Обычный термин L1 выглядит следующим образом:
Оно выпукло, но не везде дифференцируемо, и после его добавления решение разрежено. L1 полезен, если на практике требуются разреженные решения.
Как выбрать? в соответствии случший выбранный, пример такой (жирная точка - лучшая):
Как видно из рисунка, чем больше шум, тем больше нужно увеличивать регуляризацию.
А вообще по шуму неизвестно, как выбрать подходящий?
3 Проверка
3.1 Набор для проверки
Как выбрать? мы понятия не имеем, а также не может напрямую пройтипринимать решения. Было бы неплохо иметь набор тестов, который никогда не используется, чтобы вы могли выбирать на основе набора тестов:
И это гарантирует обобщение (Хёффдинг):
Но где же настоящий тестовый набор? только компромисс отРазделите часть данных как набор проверкиконечно, также требуется, чтобы он никогда не использовался в прошломиспользуется уже.
Разделите набор проверкиПроцесс выглядит следующим образом:
Использовать тренировочный набор, также могут иметь гарантии обобщения:
Общий процесс проверки выглядит следующим образом:
Видно, что лучшая модель выбирается с помощью проверочного набораПосле этого еще необходимо обучить лучшую модель со всеми данными.Выходите, вообще говоря, что вы получите от этого тренингабудет ниже из-за большего количества обучающих данных,Увидеть ниже:
Нижняя пунктирная линия на рисунке. можно увидеть,не может быть слишком большим или слишком маленьким, еслислишком мал, хотя,ноибудет сильно различаться, и еслислишком большой, хотя, но сделаетСравниватьНамного хуже.
Что мы действительно хотим сделать, так это
требование первого заветаМеньше, второй знак равенства требуетбольше, поэтому необходимо выбрать подходящий, необязательно, как правило.
3.2 Перекрестная проверка с исключением одного (LOOCV)
если позволить, то есть оставить только один образецВ качестве проверочного набора запишите
но одинне в состоянии сообщить нам точную информацию, пытаясь найти способВозьмите среднее. Вы можете использовать перекрестную проверку с исключением одного (Leave-One-Out Cross Validation):
На что мы надеемся. Можно доказать:
так какожидания расскажут нам кое-что ожелаемая информация, поэтому также называется«Почти беспристрастная оценка» .
Используйте распознавание рукописных цифр - классифицируйте, равно ли число 1 - посмотрите эффект, два основных признака - симметрия и средняя интенсивность, выполните преобразование признаков (увеличьте количество признаков), а затем используйтеиВыполните выбор параметра (параметром является количество преобразованных объектов), и результаты будут следующими:
если,,Случаи, которые изменяются с изменением количества признаков, рисуются, как показано на рисунке:
3.3 - Сложите перекрестную проверку
Если есть 1000 точек, выполните перекрестную проверку с исключением одного, чтобы вычислить 1000 раз., каждый расчет также использует 999 выборок для обучения, за исключением нескольких алгоритмов (таких как линейная регрессия, которая имеет аналитическое решение), что в большинстве случаев требует очень много времени. С другой стороны, как видно из конца предыдущего раздела, посколькуЭто усреднение в одной точке, и результат будет дрожащим и недостаточно стабильным. Поэтому на практике loocv используется не очень часто.
На практике чаще используетсяСвернуть перекрестную проверку (-Fold Cross Validation), вскореслучайным образом разделены наРазделите на равные части, используйте каждую часть для проверки по очереди, а остальные используйтеобучение, обычно проводимое на практике,Как показано ниже:
Это может вычислить
Затем используйте его для выбора параметров:
Стоит отметить, что поскольку процесс проверки также делает выбор, его результаты все же будут более оптимистичными, чем окончательные результаты тестирования. Поэтому в конечном итоге важноконтрольная работарезультаты, не найденолучшая проверкарезультат.
4 Три принципа обучения
Вот три принципа обучения.
4.1 Бритва Оккама
Первый — это бритва Оккама (Occam's Razor).
An explanation of the data should be made as simple as possible, but no simpler.
--Albert Einsterin (?)
Легенда гласит, что это сказал Эйнштейн, но доказательств этому нет. Это можно проследить до слов Оккама:
entia non sunt multiplicanda praeter necessitatem (entities must not be multiplied beyond necessity)
--William of Occam (1287-1347)
В машинном обучении часто разумнее всего говорить о самой простой модели, которая может соответствовать данным.
Что такое простая модель? для одной гипотезыскажем, требоватьМеньше означает меньше параметров для модели (набор гипотез)скажем, требоватьМеньше означает, что он не содержит многих возможных гипотез. Эти два связаны, напримершкала, то фактически толькопараметры могут описать все, поэтому маленькийзначит маленький.
В философском смысле, чем проще модель, тем меньше вероятность того, что произойдет «подгонка», а если она произойдет, значит, в данных могут быть какие-то важные закономерности.
4.2 Смещение выборки
Во-вторых, нужно знать о систематической ошибке выборки (Sampling Bias).
Если процесс выборки данных предвзят, то машинное обучение также даст предвзятый результат.
При объяснении измерения VC было упомянуто предварительное условие, то есть учебные данные и тестовые данные должны прийти из того же распределения. Когда это невозможно, правило большого пальца заключается в том, чтобы попытаться подобрать тестовые и тренировочные среды как можно ближе.
4.3 Отслеживание данных
В-третьих, обратить внимание на отслеживание данных (Data Snooping).
Если вы обнаружите, что данные больше соответствуют определенной модели путем наблюдения, а затем выберете эту модель, это будет более опасно, потому что это эквивалентно добавлению сложности модели в вашем мозгу.
Фактически, в любом процессе использования данных данные косвенно отслеживаются. Принятие любого решения после просмотра производительности данных вводит «мозговую» сложность.
Например, при выполнении масштабирования вы не можете объединить обучающие наборы и тестовые наборы для масштабирования, а можете только сделать это.
На самом деле подобные ситуации возникают и в передовых исследованиях машинного обучения. Например, первая бумага, обнаруженнаяБудет вработал лучше, в то время как во втором документе предлагалось, это вСравниватьВыступила лучше (иначе она не была бы опубликована), и третья тоже... Если рассматривать все статьи как одну итоговую, то реальная размерность ВК на самом деле, оно будет очень большим, а обобщение будет очень плохим. Это потому, что фактически на каждом этапе процесса автор шпионит за данными, читая предыдущую литературу.
Поэтому при машинном обучении необходимо аккуратно обращаться с данными. Чтобы избежать использования данных для принятия некоторых решений, лучше заранее добавить в модель знания предметной области, а не добавлять некоторые функции в модель после наблюдения за данными. Кроме того, всегда будьте скептичны, будь то на практике, в процессе чтения статьи или при работе с вашими собственными результатами.