sklearn 中可以用到线性模型有: LinearRegression、Ridge、Lasso
1 Ridge
Ridge 是 添加了 L2 正则化的模型
在拟合过程中通常都倾向于让权值尽可能小,最后构造一个所有参数都比较小的模型。
因为一般认为参数值小的模型比较简单,能适应不同的数据集,也在一定程度上避免了过拟合现象。
可以设想一下对于一个线性回归方程,若参数很大,那么只要数据偏移一点点,就会对结果造成很大的影响;但如果参数足够小,数据偏移得多一点也不会对结果造成什么影响,专业一点的说法是『抗扰动能力强』
把系数绘图出来
model = Ridge().fit(train_X, train_y_ln)
print('intercept:'+ str