Регрессионный анализ - одна из важнейших областей статистики и
машинное обучение. Доступно несколько методов регрессии. Линейная регрессия - одна из них. Регрессия ищет отношения между переменными. В статистическом моделировании и машинном обучении эта взаимосвязь используется для прогнозирования результата дальнейшего или будущего события.
Линейная регрессия
Линейная регрессия, вероятно, является одним из наиболее важных и широко используемых методов регрессии. Это один из самых простых методов регрессии. Одно из главных его преимуществ - простота интерпретации результатов.
Линейная регрессия пытается сформировать связь между двумя переменными, составляя линейное уравнение для наблюдаемых данных. Одна переменная считается описательной переменной, а другая - зависимой переменной.
Простая линейная регрессия: Простая линейная регрессия - это простейший случай линейной регрессии с единственной независимой переменной 𝐱 = 𝑥.
Множественная линейная регрессия. Множественная линейная регрессия - это случай линейной регрессии с более чем одной независимой переменной.
Полиномиальная регрессия. Полиномиальная регрессия - это обобщенный случай линейной регрессии. Один предполагает полиномиальную зависимость между выходом и входами и, следовательно, полиномиальную оценочную функцию регрессии.
Реализация линейной регрессии в Python
Пакеты Python для линейной регрессии:
Пакет NumPy - это фундаментальный научный пакет Python, который позволяет выполнять множество высокопроизводительных операций с одномерными и многомерными массивами. Он также предлагает множество математических процедур. Это открытый исходный код.
Пакет scikit-learn - это широко используемая библиотека Python для машинного обучения, построенная на основе NumPy и некоторых других пакетов. Он предоставляет средства для предварительной обработки данных, уменьшения размерности, реализации регрессии, классификации, кластеризации и многого другого. Как и NumPy, scikit-learn также имеет открытый исходный код.
Простая линейная регрессия с помощью scikit-learn: Начнем с простейшего случая - простой линейной регрессии.
При реализации линейной регрессии есть пять основных шагов:
- Импортируйте необходимые пакеты и классы.
- Предоставьте данные для работы, а затем внесите соответствующие изменения.
- Создайте регрессионную модель и сопоставьте ее с существующими данными.
- Проверьте результаты подгонки модели, чтобы узнать, удовлетворительна модель или нет.
- Примените модель для прогнозов.
Давайте посмотрим на пример, в котором мы прогнозируем скорость 10-летнего автомобиля.
- Импортируйте необходимые модули.
- Создайте массивы, представляющие значения осей x и y:
- Выполните метод, который возвращает некоторые важные ключевые значения линейной регрессии:
- Создайте функцию, которая использует значения наклона и пересечения для возврата нового значения. Это новое значение представляет, где на оси Y будет размещено соответствующее значение x:
- Пропустите каждое значение массива x через функцию. Это приведет к созданию нового массива с новыми значениями для оси Y:
- Нарисуйте исходную диаграмму рассеяния:
- Проведите линию линейной регрессии:
- Отобразите диаграмму: plt.show ()
Заключение:
Линейную регрессию легко реализовать и легче интерпретировать выходные коэффициенты. Если вы знаете, что отношения между независимой и зависимой переменной имеют линейную связь, этот алгоритм лучше всего использовать из-за его меньшей сложности по сравнению с другими алгоритмами. Регрессия - отличный инструмент для анализа взаимосвязей между переменными, но она не рекомендуется для большинства практических приложений, поскольку чрезмерно упрощает реальные проблемы, предполагая линейную взаимосвязь между переменными.