PolynomialFeatures 带有截距项

来源:8-2 scikit-learn中的多项式回归与Pipeline

qq_慕娘5021797

2020-02-07

PolynomialFeatures 生成出的数据是带有截距项的,而回归函数又重复的添加了截距项,理论上将导致共线性,导致最优解不唯一,而实际从结果看,算法机智地把多项式截距项踢掉了,回归系数为0
我想知道sklearn.LinearRegression是怎么避开共线性的?
如何在sklearn 或者python 中进行共线性检验?
如果回归时我不希望有截距项,应如何设置?
图片描述

写回答

1回答

liuyubobobo

2020-02-07

PolynomialFeatures 生成的数据没有截距。截距这个概念是针对直线方程来说的。而 PolynomialFeatures 的结果只不过是将原先的特征从 n1 个特征,根据多项式的规则,扩充到了 n2 个特征。


新的特征中,有一个特征的值,永远是 1,因为对应多项式的 0 次幂项。但这是一个特征,是一个维度,只不过,这个维度上,所有的数据值为 1 而已。


而将新的数据带入线性回归中求解,求出拟合度最高的直线,此时,才有截距的概念。


我没有理解什么叫不希望有截距项?对于一个直线方程来说,截距就是存在的。


继续加油!:)

0
3
qq_慕娘5021797
非常感谢!
2020-02-07
共3条回复

Python3入门机器学习 经典算法与应用  

Python3+sklearn,兼顾原理、算法底层实现和框架使用。

5839 学习 · 2437 问题

查看课程