1.线性回归
线性回归是用于预测建模的最简单且使用最广泛的机器学习算法之一。
它是一种监督学习算法,用于根据一个或多个自变量预测因变量的值。
定义
线性回归的核心是根据观察到的数据拟合线性模型。
线性模型由以下方程表示:
其中
- 是因变量(我们想要预测的变量)
- 是自变量(我们用来进行预测的变量)
- 是直线的斜率
- 是 y 轴截距(直线与 y 轴的交点)
线性回归算法涉及找到通过数据点的最佳拟合线。这通常是通过最小化观测值和预测值之间的平方差之和来完成的。
评估指标
- 均方误差 (MSE):测量误差平方的平均值。值越低越好。
- R平方:表示可以根据自变量预测的因变量变异的百分比。越接近 1 越好。
from sklearn.datasets import load_diabetes
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error, r2_score
# Load the Diabetes dataset
diabetes = load_diabetes()
X, y = diabetes.data, diabetes.target
# Splitting the dataset into training and testing sets
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Creating and training the Linear Regression model
model = LinearRegression()
model.fit(X_train, y_train)
# Predicting the test set results
y_pred = model.predict(X_test)
# Evaluating the model
mse = mean_squared_error(y_test, y_pred)
r2 = r2_score(y_test, y_pred)
print("MSE is:", mse)
print("R2 score is:", r2)