За кулисами модельного обучения

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

Сначала поговорим о целевой функции. Что такое целевая функция? В любом заданном наборе данных у нас будет форма [(x1,y1),(x2,y2)…………….(xn,yn)], где x будет предполагаемым входным параметром, а y будет соответствующим выходным значением . Набор данных, который у нас есть, будет получен из данных реального мира, где будет функция, которая дала бы y для входных значений x. Например, в случае прогнозирования цены дома существует неизвестная функция, которая будет определять цену дома на основе нескольких характеристик, таких как размер дома, количество спален. геолокация дома и т. д. Но, как я уже говорил, никто не знает эту функцию. Если мы уже знаем эту функцию, то здесь нет необходимости в машинном обучении. Та неизвестная функция, которая определяет цену дома на основе характеристик дома, известна как целевая функция. Целью модели машинного обучения будет определение целевой функции.

Может ли модель машинного обучения определить реальную целевую функцию? Короче ответ нет. Если мы хотим уточнить это сначала, мы рассмотрим простой пример, когда набор данных, который у нас есть, [(2,1),(3,0),(4,1)]. Если мы обучаем нашу модель с помощью этих данных, общие шаблоны, доступные для обучения модели, следующие: если вход делится на 2 без остатка, выход должен быть равен единице, если вход представляет собой степень 2, то выход должен быть один, вывод должен быть одним из каждого второго и т. д. Это некоторые из возможных шаблонов, которые могут быть идентифицированы моделью. Например, если модель, если модель находит шаблон, что для чисел, делящихся на два без остатка, выход должен быть один, следовательно, мы не знаем целевую функцию, целевая функция может быть для степени 2, она возвращает 1. В в этом случае модель будет хорошо работать на тренировочном наборе, но потерпит неудачу на тестовом наборе. Не только для этого конкретного паттерна, но и для любого паттерна, который мы выберем, поскольку мы не знаем целевую функцию, мы не сможем правильно предсказать все выходы. Итак, на вопрос, заданный в начале этого абзаца, может ли модель машинного обучения определить реальную целевую функцию, ответ отрицательный, лучшее, что мы можем сделать, это попытаться сгенерировать функцию, которая сможет оценить вывод целевой функции в большинстве сценариев.

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

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

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

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

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

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