线性回归算法主要用来解决回归问题,是许多强大的非线性模型的基础,无论是简单线性回归,还是多元线性回归,思想都是一样的,假设我们找到了最佳拟合方程(对于简单线性回归,多元线性回归对应多个特征作为一组向量)y=ax+b,则对于每一个样本点xi,根据我们的直线方程,预测值为y^i = axi + b,真值为y,我们希望y和y^i的差距尽量的小。
接下来我们看看通过sciket-learn来实现线性回归算法,首先还是导入常用的库
import numpy as np
import matplotlib.pyplot as plt
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
这里我们使用boston房价的数据集,并且去掉50这个极值,通常在实际应用中,这个极值可能是由于环境因素或者仪器限制等无法获取到真值,所以在这里我们去除数据集里的50
boston = datasets.load_boston()
X = boston.data
y = boston.target
X = X[y < 50.0]
y = y[y < 50.0]
接下里是训练集和测试集的划分以及获取构造器并且fit训练集
X_train, X_test, y_train, y_