机器学习之简单线性回归
方程
y = b₀ + b₁*X₁
简单线性回归其实就是一个一元一次方程,在图像上呈现一个线性关系。
如何拟合这样一条线?
拟合的原理其实很简单,就是找到一条线,使得所有的点离这条线的距离之和是所有可能中最小的情况。当这条线满足这个要求的时候,这条线就是我们方程拟合的目标结果。
我们将用这样的结果去预测与之类似的数据,查看预测效果。
数据集
| YearsExperience | Salary |
|---|---|
| 1.1 | 39343.00 |
| 1.3 | 46205.00 |
| 1.5 | 37731.00 |
| 2.0 | 43525.00 |
| 2.2 | 39891.00 |
| 2.9 | 56642.00 |
| 3.0 | 60150.00 |
| 3.2 | 54445.00 |
| 3.2 | 64445.00 |
| 3.7 | 57189.00 |
| 3.9 | 63218.00 |
| 4.0 | 55794.00 |
| 4.0 | 56957.00 |
| 4.1 | 57081.00 |
| 4.5 | 61111.00 |
| 4.9 | 67938.00 |
| 5.1 | 66029.00 |
| 5.3 | 83088.00 |
| 5.9 | 81363.00 |
| 6.0 | 93940.00 |
| 6.8 | 91738.00 |
| 7.1 | 98273.00 |
| 7.9 | 101302.00 |
| 8.2 | 113812.00 |
| 8.7 | 109431.00 |
| 9.0 | 105582.00 |
| 9.5 | 116969.00 |
| 9.6 | 112635.00 |
| 10.3 | 122391.00 |
| 10.5 | 121872.00 |
数据读取
1 | import numpy as np |
划分测试集与训练集
1 | from sklearn.model_selection import train_test_split |
关于特征缩放
在简单线性回归的函数中已经包含了特缩放的操作,我们不再需要再对其做出特征缩放了
简单线性回归
1 | from sklearn.linear_model import LinearRegression |
测试预测结果
1 | y_pred = regressor.predict(X_test) |
图像展示
预测结果展示
1 | plt.scatter(X_train,Y_train,color = "red") |

测试结果展示
1 | plt.scatter(X_test,Y_test,color = "red") |

本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 念念不忘,必有回响!










