Продюсер: Ю Эр Хат
Автор: Питер
Редактор: Питер
Эндрю Нг Машинное обучение-6-Советы по машинному обучению
В этой статье записаны предложения г-на Ву Энда по машинному обучению, в том числе:
- Рекомендации по применению машинного обучения
- Оценить предположения
- Выбор модели и перекрестная проверка
- Диагностика дисперсии и смещения
- Проблемы регуляризации и переобучения
Рекомендации по применению машинного обучения
Когда мы используем обученную модель для прогнозирования неизвестных данных и обнаруживаем большую ошибку, что мы можем делать дальше?
- получить больше обучающих образцов
- попробуй уменьшить количество функций
- попробуй получить больше возможностей
- Попробуйте добавить полиномиальные функции
- попытаться уменьшить степень регуляризации
- попробуй увеличить регуляризацию
Оценка гипотезы
При изучении алгоритма рассматривается вопрос о том, как выбрать параметры, чтобы свести к минимуму ошибку обучения. В процессе создания модели легко столкнуться с проблемой переоснащения, так как же оценить, является ли модель переоснащением?
Чтобы проверить, является ли алгоритм переоснащением, набор данных разбивается на обучающий набор и тестовый набор, обычно в соотношении 7:3. Ключевым моментом является то, что и обучающий набор, и тестовый набор должны содержать различные типы данных, обычно нам нужно «перетасовать» данные, а затем разделить их на обучающий набор и тестовый набор.
После того, как мы получим нашу изученную модель в обучающем наборе, нам нужно использовать тестовый набор для проверки модели.Есть два разных способа:
- Модель линейной регрессии: вычислите функцию стоимости, используя тестовые данные
- Модель логистической регрессии:
- Сначала используйте тестовые данные для расчета функции стоимости.
- Рассчитайте уровень ошибочной классификации для каждого образца тестового набора, а затем усредните
Выбор модели и перекрестная проверка
Перекрестная проверка
Что такое перекрестная проверка?
Набор перекрестной проверки относится к: использованию **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
Основы регуляризации
Методы регуляризации в основном предназначены для решения проблемы переобучения.Переоснащение относится к: У него хорошая способность оценивать выборочные данные, но плохая способность прогнозирования для новых данных.
- Первая модель — это линейная модель, которая недостаточно приспособлена и плохо подходит для нашего тренировочного набора.
- Третья модель представляет собой квадратичную модель, в которой слишком много внимания уделяется подбору исходных данных и теряется сущность алгоритма: предсказание новых данных.
- Модель посередине кажется наиболее подходящей.
каштан
Предположим, нам нужно подобрать многочлен на рисунке ниже, требуя члена регуляризации
- когдаКогда возникает большое, высокое смещение, предполагая, чтоэто прямая линия
- когдаКогда он мал и около 0, возникает высокая дисперсия.
Если это полиномиальная подгонка, то чем выше степень x, тем лучше эффект подгонки, но соответствующая способность предсказания может быть хуже.Обработка переобучения:
- Отбросьте некоторые функции, которые нельзя правильно предсказать. Это может быть ручной выбор того, какие функции сохранить, или использовать какой-либо алгоритм выбора модели, например.PCA
- Регуляризация. Сохраните все функции, но уменьшите размер параметров (magnitude)
Добавить параметр регуляризации
в модели, в основном проблема переобучения, вызванная терминами высокого порядка:
Добавление параметров регуляризации может предотвратить проблемы переобучения, когдапараметр регуляризацииRegularization Parameter:
Attention: Вообще нетнаказывать; добавление параметра регуляризации на самом деленаказывать. Сравнение между регуляризованной моделью и исходной моделью:
- еслислишком велик, все параметры минимизируются, и модель становится, что приводит к переоснащению
параметрвыбор
- Используйте обучающий набор для обучения нескольких регуляризованных моделей разной степени
- Ошибка перекрестной проверки, рассчитанная для набора перекрестной проверки с несколькими моделями
- Выберите, чтобы получить ошибку перекрестной проверкиминимуммодель
- Используйте модель, выбранную на шаге 3, для расчета ошибки обобщения на тестовом наборе.
Кривые обучения
Используйте кривую обучения, чтобы определить, находится ли алгоритм обучения в проблеме смещения или дисперсии.
Кривая обучения состоит в том, чтобыошибка тренировочного набораиошибка набора перекрестной проверкив видеКоличество образцов обучающей выборкиГрафик, построенный как функция
J_{cv}{(\theta)} = \frac{1}{2m_{cv}}\sum_\limits{i=1}^{m}(h_{\theta}(x^{(i)}_{cv})-y^{(i)}_{cv})^2
Связь между обучающей выборкой m и функцией стоимости J
Результат можно увидеть на рисунке 1 ниже.
- Чем меньше выборок, тем меньше ошибка обучающего набора и тем больше ошибка набора перекрестной проверки.
- По мере постепенного увеличения выборки разница между ними постепенно уменьшается.
Примечание. В случае высокого смещения и недостаточной подгонки увеличение количества выборок не влияет.
В случае высокой дисперсии увеличение числа может улучшить производительность алгоритма.
Суммировать
- Получите больше обучающих выборок — устраните высокую дисперсию
- Попробуйте уменьшить количество функций, чтобы решить проблему высокой дисперсии.
- попытайтесь получить больше функций - устраните высокое смещение
- Попробуйте добавить полиномиальные функции, чтобы устранить высокое смещение
- Попробуйте уменьшить степень регуляризации λ, чтобы устранить высокое смещение.
- Попробуйте увеличить регуляризацию λ, чтобы справиться с высокой дисперсией.
Дисперсия и смещение нейронных сетей
Нейронные сети меньшего размера с меньшим количеством параметров склонны к большому смещению и недостаточной подгонке;
Большие нейронные сети со многими параметрами склонны к высокой дисперсии и переобучению.
Обычно выбор более крупной нейронной сети и использование регуляризации будет работать лучше, чем использование более мелкой нейронной сети.
Точность и отзыв
Предполагаемая стоимость | |||
---|---|---|---|
Positive | Negtive | ||
реальная стоимость | True | TP | FN |
False | FP | TN |
точностьprecision
: Фактические и прогнозируемые значения положительны одновременно / Все прогнозируемые значения положительныотзыватьrecall
: Фактические и прогнозные значения положительны / Все фактические значения положительны
Отзыв и точность - противоречивые величины, если один высокий, другой должен быть низким.Схема зависимости выглядит следующим образом:
Обычно используется баланс между отзывом и точностью.Представление коэффициента