Эндрю Нг Машинное обучение-6-Советы по машинному обучению

машинное обучение искусственный интеллект
Эндрю Нг Машинное обучение-6-Советы по машинному обучению

Продюсер: Ю Эр Хат
Автор: Питер
Редактор: Питер

Эндрю Нг Машинное обучение-6-Советы по машинному обучению

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

  • Рекомендации по применению машинного обучения
  • Оценить предположения
  • Выбор модели и перекрестная проверка
  • Диагностика дисперсии и смещения
  • Проблемы регуляризации и переобучения

Рекомендации по применению машинного обучения

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

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

Оценка гипотезы

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

Чтобы проверить, является ли алгоритм переоснащением, набор данных разбивается на обучающий набор и тестовый набор, обычно в соотношении 7:3. Ключевым моментом является то, что и обучающий набор, и тестовый набор должны содержать различные типы данных, обычно нам нужно «перетасовать» данные, а затем разделить их на обучающий набор и тестовый набор.

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

  1. Модель линейной регрессии: вычислите функцию стоимости, используя тестовые данныеJJ
  2. Модель логистической регрессии:
    • Сначала используйте тестовые данные для расчета функции стоимости.Jtest(θ)J_{test}{(\theta)}
    • Рассчитайте уровень ошибочной классификации для каждого образца тестового набора, а затем усредните

Выбор модели и перекрестная проверка

Перекрестная проверка

Что такое перекрестная проверка?

Набор перекрестной проверки относится к: использованию **60% данных как*Обучающий набор*,использовать20%*данные как *набор перекрестной проверки,использовать20%*данные как тестовый набор*

выбор модели
  • Используйте тренировочный набор для обучения 10 моделей
  • Используйте 10 моделей, чтобынабор перекрестной проверкиВычисляет пересечение (значение функции стоимости)
  • ВыбратьФункция минимальной стоимостимодель
  • Используя модель, выбранную на предыдущих шагах, рассчитайте ошибку обобщения (значение функции стоимости) на тестовом наборе.
  • Ошибка обучения выражается как:

J_{train}(\theta) = \frac{1}{2m}\sum_\limits{i=1}^{m}(h_{\theta}(x^{(i)})-y^{(i)})^2

  • Ошибка перекрестной проверки (полученная с помощью набора данных перекрестной проверки) выражается как:

  • тестовая ошибка

Диагностика смещения и дисперсии

Если алгоритм не работает хорошо, есть только два случая:Либо смещение слишком велико, либо слишком велика дисперсия. Другими словами,Либо недообучение, либо переобучение.

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

1. Стадия высокого отклонения

Ошибки функции стоимости набора перекрестной проверки и обучающего набора велики и примерно равны;

2. Стадия высокой дисперсии

Ошибка в наборе перекрестной проверки намного больше, чем ошибка в обучающем наборе., ошибка на тренировочном наборе очень мала

Регуляризация и Bias_Variance

Основы регуляризации

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

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

каштан

Предположим, нам нужно подобрать многочлен на рисунке ниже, требуя члена регуляризации

  • когдаλ\lambdaКогда возникает большое, высокое смещение, предполагая, чтоhθ(x)h_\theta(x)это прямая линия
  • когдаλ\lambdaКогда он мал и около 0, возникает высокая дисперсия.

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

  1. Отбросьте некоторые функции, которые нельзя правильно предсказать. Это может быть ручной выбор того, какие функции сохранить, или использовать какой-либо алгоритм выбора модели, например.PCA
  2. Регуляризация. Сохраните все функции, но уменьшите размер параметров (magnitude)

Добавить параметр регуляризации

в моделиhθ(x)=θ0+θ1x1+θ2x2+θ3x3+θ4x4h_\theta(x)=\theta_0+\theta_1x_1+\theta_2x_2+\theta_3x_3+\theta_4x_4, в основном проблема переобучения, вызванная терминами высокого порядка:

Добавление параметров регуляризации может предотвратить проблемы переобучения, когдаλ\lambdaпараметр регуляризацииRegularization Parameter:

J(θ)=12mi=1m(hθ(x(i))y(i))2+λj=1nθj2J(\theta)=\frac{1}{2m}\sum^m_{i=1}(h_{\theta}(x^{(i)})-y^{(i)})^2+\lambda \sum^n_{j=1}\theta^2_{j}

Attention: Вообще нетθ0\theta_0наказывать; добавление параметра регуляризации на самом делеθ\thetaнаказывать. Сравнение между регуляризованной моделью и исходной моделью:

  • еслиλ\lambdaслишком велик, все параметры минимизируются, и модель становитсяhθ(x)=θ0h_\theta(x)=\theta_0, что приводит к переоснащению

параметрλ\lambdaвыбор

  1. Используйте обучающий набор для обучения нескольких регуляризованных моделей разной степени
  2. Ошибка перекрестной проверки, рассчитанная для набора перекрестной проверки с несколькими моделями
  3. Выберите, чтобы получить ошибку перекрестной проверкиминимуммодель
  4. Используйте модель, выбранную на шаге 3, для расчета ошибки обобщения на тестовом наборе.

Кривые обучения

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

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

Jtrain(θ)=12mi=1m(hθ(x(i))y(i))2J_{train}(\theta) = \frac{1}{2m}\sum_{i=1}^{m}(h_{\theta}(x^{(i)})-y^{(i)})^2

J_{cv}{(\theta)} = \frac{1}{2m_{cv}}\sum_\limits{i=1}^{m}(h_{\theta}(x^{(i)}_{cv})-y^{(i)}_{cv})^2

Связь между обучающей выборкой m и функцией стоимости J

Результат можно увидеть на рисунке 1 ниже.

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

Примечание. В случае высокого смещения и недостаточной подгонки увеличение количества выборок не влияет.

В случае высокой дисперсии увеличение числа может улучшить производительность алгоритма.

Суммировать

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

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

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

Большие нейронные сети со многими параметрами склонны к высокой дисперсии и переобучению.

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

Точность и отзыв

Предполагаемая стоимость
Positive Negtive
реальная стоимость True TP FN
False FP TN

точностьprecision: Фактические и прогнозируемые значения положительны одновременно / Все прогнозируемые значения положительныP=TPTP+FPP=\frac{TP}{TP+FP}отзыватьrecall: Фактические и прогнозные значения положительны / Все фактические значения положительныR=TPTP+FNR = \frac{TP}{TP+FN}

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

Обычно используется баланс между отзывом и точностью.F1F_1Представление коэффициентаF1=2PRP+RF_1=\frac{2PR}{P+R}