Обычное руководство по обучению с учителем с помощью scikit-learn - Обобщенные линейные модели обыкновенных наименьших квадратов (2)

Это вторая часть из 92 частей традиционного руководства по контролируемому обучению с помощью scikit-learn, написанного с целью научиться реализовывать алгоритмы для продуктивного использования и быть в состоянии объяснить алгоритмическую логику, лежащую в основе этого. Ссылки на все разделы вы найдете в первой статье.

Обычные наименьшие квадраты

Метод наименьших квадратов - это широко распространенный в машинном обучении метод под названием Линейная регрессия.

Линейное уравнение просто

y = x    or  y = mx + c

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

Линейная регрессия соответствует линейной модели с коэффициентами w = (w1,…, wp), чтобы минимизировать остаточную сумму квадратов между наблюдаемыми ответами в наборе данных и ответами, предсказанными линейным приближением. Математически это решает задачу вида:

Линейная регрессия примет в свои fit массивы методов X, y и сохранит коэффициенты w линейной модели в ее членеcoef_:

>>> from sklearn import linear_model
>>> reg = linear_model.LinearRegression()
>>> reg.fit ([[0, 0], [1, 1], [2, 2]], [0, 1, 2])                                      
LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,
                 normalize=False)
>>> reg.coef_
array([0.5, 0.5])

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

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

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

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

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

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

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

Https://gist.github.com/venali/6508be7fb37e4bb65d755197c8d9d9ab

Кредиты

Все кредиты относятся к документации Scikit-learn, а все ссылки соответствуют официальному руководству пользователя.

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

об авторе

Я Венали Сонон, специалист по обработке данных по профессии, а также студент-менеджер, стремящийся продвинуться по карьерной лестнице в финансовой индустрии.