🔍 Как сделать линейную регрессию Python? Простой гид!
Линейную регрессию в Python можно сделать с помощью библиотеки scikit-learn.
Вот пример кода:
from sklearn.linear_model import LinearRegression
# Создание модели линейной регрессии
model = LinearRegression()
# Обучение модели на тренировочных данных
model.fit(X_train, y_train)
# Предсказание на тестовых данных
predictions = model.predict(X_test)
Детальный ответ
Как сделать линейную регрессию в Python
Линейная регрессия - это один из основных алгоритмов машинного обучения, который используется для предсказания численных значений на основе линейной связи между различными признаками. В Python существует несколько библиотек, которые предоставляют удобные инструменты для реализации линейной регрессии. В этой статье мы рассмотрим, как использовать библиотеку scikit-learn для создания линейной регрессии.
Установка библиотеки scikit-learn
Перед тем, как начать, убедитесь, что у вас установлена библиотека scikit-learn. Вы можете установить ее с помощью следующей команды:
pip install scikit-learn
Импорт библиотеки и загрузка данных
Прежде чем мы перейдем к созданию модели линейной регрессии, нам понадобятся данные. Для примера давайте представим, что у нас есть набор данных, содержащий информацию о площади квартир и их ценах. Мы будем использовать этот набор данных для обучения и проверки модели.
Для начала импортируем необходимые модули и загрузим данные:
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
# Загрузка данных
data = pd.read_csv('data.csv')
# Разделение данных на признаки и целевую переменную
X = data[['Площадь']]
y = data['Цена']
Разделение данных на обучающую и тестовую выборки
Далее мы разделим наши данные на обучающую и тестовую выборки. Обучающая выборка будет использоваться для построения модели, а тестовая выборка - для проверки ее точности.
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
Создание и обучение модели
Теперь мы создадим модель линейной регрессии и обучим ее на обучающей выборке:
model = LinearRegression()
model.fit(X_train, y_train)
Предсказание цен на тестовом наборе данных
После обучения модели мы можем использовать ее для предсказания цен на тестовом наборе данных. Давайте посмотрим, как она справляется с этой задачей:
y_pred = model.predict(X_test)
Оценка точности модели
Для оценки точности модели линейной регрессии мы можем использовать различные метрики, такие как средняя абсолютная ошибка (MAE) и коэффициент детерминации (R^2). Вот как мы можем их вычислить:
from sklearn.metrics import mean_absolute_error, r2_score
# Средняя абсолютная ошибка (MAE)
mae = mean_absolute_error(y_test, y_pred)
# Коэффициент детерминации (R^2)
r2 = r2_score(y_test, y_pred)
Визуализация результатов
Наконец, давайте визуализируем результаты нашей модели с помощью диаграммы рассеяния:
import matplotlib.pyplot as plt
plt.scatter(X_test, y_test, color='blue', label='Реальные значения')
plt.plot(X_test, y_pred, color='red', label='Предсказанные значения')
plt.xlabel('Площадь')
plt.ylabel('Цена')
plt.legend()
plt.show()
Заключение
В этой статье мы рассмотрели, как использовать библиотеку scikit-learn для создания линейной регрессии в Python. Мы изучили основные шаги, такие как импорт библиотек, загрузка данных, разделение выборки, создание и обучение модели, предсказание значений и оценка точности. При помощи визуализации мы также можем визуально оценить результаты работы модели. Надеюсь, эта статья была полезна вам!