Машинное обучение — это изучение компьютерных алгоритмов, которые автоматически улучшаются благодаря опыту и использованию данных, путем изучения различных аспектов данных и всевозможных возможностей, представленных в наборе данных, или вы могли бы просто сказать, что машинное обучение — это статистика на стероидах.
Регрессия в машинном обучении…
Машинное обучение состоит из различных алгоритмов, один из них — регрессия. Регрессионный анализ можно использовать для поиска взаимосвязей между одной зависимой или несколькими независимыми переменными.
Он использует линейную формулу y=mx+b,где y – зависимая переменная, x – независимая переменная, m – наклон графика, а b – точка пересечения.
«Красная» цветная линия показывает тенденцию точек, называемую наклоном. Он рисуется путем нахождения разницы (Δ) между другими возможными линиями и минимизации ошибки во всех из них и выбора одной с наименьшими ошибками. Линейная регрессия также используется для прогнозирования данных. Существует два типа линейных регрессий: - Прогнозы с одной переменной и Прогнозы с несколькими переменными.
Прогнозы с одной переменной:
В этих моделях регрессии мы формируем отношения между одной зависимой и одной независимой переменными, используя прямые линии. Оба значения должны быть количественными. Для набора данных, который выглядит так:
Линейная регрессия будет выглядеть так:
Зеленая линия представляет тренд/наклон в наборе данных, а синие точки представляют различные точки набора данных. Используя приведенную выше регрессию, где доход меняется в зависимости от года, мы можем предсказать зарплату на будущее. Например, если мы прогнозируем зарплату на год, 2020; получается около 41288,69409442.
для питона мы используем:
rg = linear_model.LinearRegression() rg.fit(dataf[['year']],dataf.income) rg.predict([[2020]]
Год — независимая переменная, а доход — зависимая переменная.
Тем не менее, что также можно рассчитать, найдя пересечение и наклон линии регрессии,
Уравнение линии равно: y=mx+b, как мы видели выше.
поэтому значения: [m=828,46507522]&[b=-1632210,7578554575]
для 2020 года мы можем рассчитать inc = m*2020+b, что дает то же значение, которое мы нашли ранее, 41288,69409442.
Прогнозы с несколькими переменными:
Эти регрессии устанавливают связь между 1 зависимой переменной и более чем одной независимой переменной.
Отношения в прогнозировании с несколькими переменными можно описать уравнением;
Например, набор данных,
Столбец «Зарплата» в этом случае является зависимой переменной, а остальные три атрибута — независимыми.
Фрагмент Python, который можно использовать в этом случае;
reg1 = linear_model.LinearRegression() reg1.fit(dataf[['experience','testscore','interviewscore']],dataf.salary)
Для прогнозирования зарплаты кандидата с 2-летним опытом работы, 9 тестовыми баллами и 6 баллами на собеседовании мы можем использовать;
reg1.predict([[2,9,6]])
который выдает ответ: 53205.96797671.
Таким образом, это окончательное предсказание в данном случае также может быть оправдано приведенным выше соотношением.
Следовательно, эти методы можно применять к вашим данным, если хотите, для прогнозирования. Один из лучших способов проанализировать тип алгоритма, который будет использоваться в вашем наборе данных для прогнозирования, — определить переменные в наборе данных, являются ли они непрерывными или дискретными.
Код для этих регрессий доступен на:- мой github.