线性回归总结

线性回归总结
​ 线性回归模型就是解决回归任务的好起点,这些模型之所以受欢迎,是因为他们的拟合速度特别快,而且很容易解释。

1.简单的线性回归

直线拟合的模型方程为y = ax+b,其中a是直线斜率,b是直线截距。

首先导入常用程序库

%matplotlib inline
import matplotlib.pyplot as plt #引入绘图库
import seaborn as sns;sns.set()
import numpy as np #引入numpy库

从斜率为2、截距为-5的直线中抽取散点

rng = np.random.RandomState(1)#设置伪随机数生成器,产生一个随机状态种子
x = 10*rng.rand(50)#随机生成50个数
y = 2*x - 5 + rng.randn(50)#返回秩为1的数组,其中有50个随机数
plt.scatter(x,y)#设置为散点图

结果如下:
在这里插入图片描述

可以用Scikit-Learn的LinearRegression评估器来拟合数据,并获得最佳拟合直线

代码如下:

from sklearn.linear_model import LinearRegression
model = LinearRegression(fit_intercept = True)#True代表计算模型的截距,False代表不计算
model.fit(x[:,np.newaxis],y)
xfit = np.linspace(0,10,1000)#在0-10区间内等分成1000个数
yfit = model.predict(xfit[:,np.newaxis])#预测值
plt.scatter(x,y)#设置散点图
plt.plot(xfit,yfit)#绘制图

结果如下

在这里插入图片描述

可以查看模型的斜率和截距来检验是否与真实值接近

print("Model slope:",model.coef_[0])
print("Model intercept:",model.intercept_)
Model slope: 2.0272088103606944
Model intercept: -4.9985770855532

可以看出与真实值还算是比较接近的。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值