想要实现线性回归,可以使用sklearn模块自带的线性回归,也可以使用我们自定义的线性回归。
生成数据
为了介绍两种实现线性回归的方式,首先需要生成数据
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
X = np.linspace(-2,12,40).reshape(-1,1)
w = np.random.randint(1,9,size = 1)
b = np.random.randint(-5,5,size = 1)
# 增加噪声
y = w*X + b + np.random.randn(40,1)*2
plt.scatter(X,y)
结果如下
使用模块自带的方法
# 创建线性回归模型
linear = LinearRegression()
# 使用之前生成的数据训练模型
linear