目录
线性回归是统计学中用来预测两种或两种以上变量之间关系的一种分析方法。在这种模型中,一个变量的值可以通过其他一个或多个变量的值来预测。这种关系被认为是线性的,即变量间的关系可以用一条直线来表示。

线性回归模型的参数通常通过最小化误差的平方和来估计,这种方法被称为最小二乘法。具体计算过程如下:


线性回归被广泛应用于经济学、生物学、工程学、社会科学等多个领域中,用于预测、趋势分析以及变量间关系的研究。
尽管线性回归是一个强大的工具,但它也有其局限性,特别是当数据关系不是线性时,或者数据中存在多重共线性(自变量之间高度相关)时,线性回归可能不会给出有效的预测结果。
我们将创建一个虚构的数据集,其中包含一些自变量 𝑥和对应的因变量 𝑦,然后我们将使用这些数据来训练一个线性回归模型,并预测新的数据点。这里是具体的步骤:
- 生成数据集
- 建立线性回归模型
- 训练模型
- 预测新数据
- 可视化结果
代码:
- import numpy as np
- import matplotlib.pyplot as plt
- from sklearn.linear_model import LinearRegression
-
- # 1. 生成数据集
- np.random.seed(0)
- x = 2.5 * np.random.randn(100) + 1.5 # 生成100个点的数组
- res = 0.5 * np.random.randn(100) # 生成100个点的残差数组
- y = 2 + 0.3 * x + res # 实际的y点
-
- # 2. 建立线性回归模型
- model = LinearRegression()
-
- # 3. 训练模型
- model.fit(x.reshape(-1, 1), y)
-
- # 4. 预测新数据
- x_new = np.linspace(-5, 5, 100)
- y_pred = model.predict(x_new.reshape(-1, 1))
-
- # 5. 可视化结果
- plt.figure(figsize=(8, 4))
- plt.scatter(x, y)
- plt.plot(x_new, y_pred, color='red') # 预测的线
- plt.title('Linear Regression')
- plt.xlabel('X')
- plt.ylabel('Y')
- plt.grid(True)
- plt.show()
结果:
