Часть 1 в основном посвящена основам машинного обучения и нескольким простым моделям.

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

Лекция 6: Теория обобщения

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

Лекция 7: Измерение ВК

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

Лекция 8: Компромисс смещения и дисперсии

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

Что такое предвзятость?

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

Что такое дисперсия?

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

Я проанализировал компромисс смещения и дисперсии для модели K-ближайших соседей, которую я использовал для прогнозирования Индии / не Индии по (x, y) местоположению пикселя в этом изображении, загруженном из Википедии. В качестве набора данных я использовал файл india_map.npy, созданный из вышеупомянутого изображения. Подробное объяснение и реализацию Python можно найти на этой вики-странице моего репозитория.

Как и ожидалось, с увеличением сложности модели (т.е. с увеличением k) смещение уменьшается, а дисперсия увеличивается.

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