📜  最小二乘回归线(1)

📅  最后修改于: 2023-12-03 15:40:15.425000             🧑  作者: Mango

最小二乘回归线

最小二乘回归线(Least Square Regression Line)是一种常用的线性回归模型,在统计学中用于找出自变量和因变量之间的线性关系。该模型可用于预测和探索性数据分析。

原理

最小二乘法是一种优化方法,用于找到最适合给定数据集的线性回归模型。该方法通过寻找最小化所有数据点到回归线距离平方和的回归线来实现此目的。

回归线的方程为:y = a + bx,其中a和b是回归系数,x是自变量,y是因变量。回归线的斜率为b,截距为a。最小二乘法试图找到最佳的a和b值,使训练数据集与回归线的距离平方和最小。

实现

我们可以使用Python的Scikit-learn库来实现最小二乘回归线。下面是一个例子:

from sklearn.linear_model import LinearRegression
import numpy as np

X = np.array([[1, 1], [1, 2], [2, 2], [2, 3]])
y = np.dot(X, np.array([1, 2])) + 3
reg = LinearRegression().fit(X, y)
reg.predict(np.array([[3, 5]]))

代码中,我们首先准备了一个包含4个样本点和2个自变量的训练数据集。然后,我们使用Scikit-learn的LinearRegression类来拟合数据集。最后,我们使用训练好的回归线来预测一个新的输入值(3, 5)的结果。

评估

我们可以使用R方值(Coefficient of Determination)来评估最小二乘回归线的拟合效果。R方值表示自变量对因变量的方差解释程度,其值介于0和1之间,越接近1表示拟合效果越好。

我们可以使用如下代码来计算R方值:

from sklearn.metrics import r2_score

y_true = [3, -0.5, 2, 7]
y_pred = [2.5, 0.0, 2, 8]
r2_score(y_true, y_pred)

以上代码中,我们首先定义了真实标签值和预测值,然后使用Scikit-learn的r2_score函数来计算R方值。

结论

最小二乘回归线是一种常用的线性回归模型,它是在许多数据分析和预测问题中的基本工具之一。我们可以使用Python中的Scikit-learn库来实现和评估回归线的拟合效果。