机器学习之简单线性回归
方程
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 许可协议。转载请注明来源 念念不忘,必有回响!










