Разработка приложений и систем машинного обучения Введение в машинное обучение

машинное обучение

Это 9-й день моего участия в августовском испытании обновлений.Подробности о мероприятии:Испытание августовского обновления

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

Прикладное машинное обучение

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

  1. Получите больше обучающих образцов.
  2. попробуй уменьшить количество функций
  3. попробуй получить больше возможностей
  4. Попробуйте добавить полиномиальные функции
  5. попытаться уменьшить степень регуляризацииλ\lambda
  6. попробуй увеличить регуляризациюλ\lambda

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

Разделение набора данных

  • Набор для обучения: 60 %, используется для обучения нескольких моделей.
  • Набор проверки (набор перекрестной проверки): 20%, используется для расчета ошибки перекрестной проверки (то есть функция стоимостиJ(θ)J(\theta)), выберите модель с наименьшим значением функции стоимости.
  • Набор тестов: 20%, для выбранной модели рассчитывается ошибка обобщения, которая используется для оценки обобщающей способности модели.

Диагностическая систематическая ошибка и дисперсия

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

  • Высокое смещение — недообучение

  • Высокая дисперсия - переобучение

Смещение и дисперсия в полиномиальном подборе

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

На следующем рисунке показан обучающий набор, ошибка набора перекрестной проверки с полиномиальной степенью.ddизменить правило

在这里插入图片描述

Смещение и дисперсия в нормализации

Изучая линейную регрессию и логистическую регрессию, мы знаем, что модель можно предотвратить от переобучения, введя регуляризацию. А размер штрафа за регуляризацию (т.λ\lambdaЗначение ) также будет иметь эффект, аналогичный приведенному выше полиномиальному подбору, на ошибку модели.

На рисунке ниже показана ошибка функции стоимости обучающего набора и модели набора перекрестной проверки по сравнению с моделью набора данных для перекрестной проверки.λ\lambdaПравило изменения значения:

在这里插入图片描述

когдаλ\lambdaКогда он мал, штраф за регуляризацию мал или почти отсутствует.В это время соответствие модели обучающему набору все еще велико, ошибка все еще мала, а ошибка, применяемая к набору перекрестной проверки, равна большой (из-за переобучения).

вместе сλ\lambdaШтраф за регуляризацию продолжает увеличиваться, степень подгонки модели к обучающей выборке постепенно снижается, имеет тенденцию к недостаточной подгонке, а ошибка обучающей выборки продолжает увеличиваться, в то время как для перекрёстной проверки ошибка сначала уменьшается, а затем Увеличивать, потому что модель будет постепенно достигать оптимальной степени подгонки от переобучения, что является поворотным моментом на рисунке.После этого, когда модель стремится к недообучению, ошибка, естественно, будет увеличиваться.

Дисперсия смещения в нейронных сетях

Когда структура нейронной сети относительно проста, то есть количество скрытых слоев невелико, склонны к возникновению больших отклонений, но вычислительные затраты невелики;

Когда структура нейронной сети более сложная, то есть количество скрытых слоев велико, может возникнуть высокая дисперсия.Хотя стоимость вычислений относительно велика, ее можно увеличить, увеличивλ\lambdaрешать.

кривая обучения

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

Когда количество образцовmmКогда он мал, модель легко помещается на обучающем наборе, ошибка обучающего набора мала, но ошибка набора перекрестной проверки велика (образ данных не может быть найден);mmПо мере увеличения количества выборок будет возрастать сложность подбора модели, также будет увеличиваться ошибка обучающей выборки и уменьшаться ошибка перекрёстной проверки, так как количество выборок велико, способность к обучению модель улучшена, и правила данных могут быть найдены более легко.

На рисунке ниже показано количество образцовmmВлияние на ошибку обучающего набора и ошибку набора перекрестной проверки:

在这里插入图片描述

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

在这里插入图片描述

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

在这里插入图片描述

Суммировать

метод Применимая сцена
получить больше обучающих образцов решатьвысокая дисперсия
попробуй уменьшить количество функций решатьвысокая дисперсия
попробуй получить больше возможностей решатьвысокое отклонение
Попробуйте добавить полиномиальные функции решатьвысокое отклонение
попытаться уменьшить степень регуляризацииλ\lambda решатьвысокое отклонение
попробуй увеличить регуляризациюλ\lambda решатьвысокая дисперсия

Проектирование систем машинного обучения

Метод проектирования

  1. Давайте быстро реализуем простой алгоритм и протестируем его на данных перекрестной проверки.
  2. Постройте кривую обучения и оцените по изображению, в чем проблема, это высокая предвзятость или высокая дисперсия? Затем решите, следует ли добавить больше данных, добавить дополнительные функции или другие параметры.
  3. Был проведен анализ ошибок, чтобы вручную изучить образцы в наборе перекрестной проверки, которые привели к ошибкам прогнозирования в нашем алгоритме.

Показатели оценки

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

Сначала определите:

  • Positive: Указывает, что предсказанная выборка верна.
    • Истинный положительный: верно предсказано, действительно верно
    • Ложноположительный ложноположительный: прогнозируемая истина, фактическая ложь
  • Negative: Указывает, что предсказанная выборка является ложной.
    • Правда отрицательный: предсказанная ложь, фактическая ложь
    • Ложноотрицательный: предсказано неверно, на самом деле верно
реальная стоимость \Предполагаемая стоимость Прогнозировать положительный Прогноз отрицательный
Фактический положительный TP FN
Фактический отрицательный FP TN

Точность

  • P=TPTP+FPP=\dfrac{TP}{TP+FP}

Отзывать

  • R=TPTP+FNR=\dfrac{TP}{TP+FN}

Чтобы лучше сбалансировать две метрики, мы используемF1Score\mathbf{F_1Score}Чтобы объединить два индикатора:

  • F1Score:2PRP+RF_1Оценка: 2\dfrac{PR}{P+R}