目标
探索特征工程和多项式回归,使用线性回归来拟合非常复杂甚至非线性的函数。
1.为什么线性回归能拟合非线性函数?
fx=w*x²+b,属于线性回归的扩展,这个公式在数学中不属于线性,因为有x²,而在机器学习中属于线性回归,因为w,b是一次项,详情有待补充。
2.线性回归函数拟合非线性数据
- 红色数据点y=1+x**2,x,y的关系是非线性,需要一个函数拟合非线性数据点。
- 特征数组X为一次项,因此线性回归w*x+b无法拟合非线性数据。
3.多项式回归函数拟合非线性数据
扩展线性回归为多项式回归,重新构建特征数组X=x**2,对应函数x²*w+b,通过梯度下降计算最佳w,b并代入函数,能够拟合非线性数据。
4.设计新特征
- 继续扩展多项式回归,通过对x平方立方,设计出2个新特征。对应函数为f_wb = xw0+x²w1+x³*w2+b 。
- 此函数没有很好的拟合数据,w1的权重最大0.54,代表x²特征对预测结果影响最大。
4.根据特征数量自动设置w
n表示特征数量。
5.线性模型捕捉非线性关系
𝑥²特征与目标值y呈线性关系。线性回归可以很容易地使用该特征生成模型。
6.多项式回归的特征缩放
- 使用Z标准化缩放X特征。
- 可以使用比之前更大的学习率,梯度下降更快收敛。
7.多项式回归拟合更复杂的数据
总结
当我们发现数据的走势为非线性,选择线性回归函数已经无法拟合数据,所以我们采用多项式回归。但是我们不能随意的设计出新特征,结合实验例子,如果数据的关系是y=1+x²,f_wb=wx²+b函数可以很好的拟合数据,而f_wb=w0x+w1x²+w2x³+b函数则不会很好的拟合数据。而在多项式回归中,特征缩放是很重要的,因为多项式特征之间的差异是很大的。