之前我们的线性回归法有个很大的限制,就是假设我们数据是成线性关系的
我们实际场景中,有线性关系的情况可能是比较少的
更多的数据之间他们具有的是非线性关系
模型泛化
对于这种模型我们也可以用线性回归来计算
但是他有更加强的非线性关系
我们用二次曲线来拟合效果更好
我们的式子y=ax^2+bx+c
如果我们将x2理解成一个特征
x理解成另外一个特征
换句话说我们原来样本只有一个特征x
现在有2个特征数据集
这个式子本身依然是线性回归
但是从x2来看是非线性方程
这样的方式就是对象是回归
np.random.normal是噪音
我们的数据集就是这样的
此时我们的样本输出y和x之间是非线性关系
我们先用线性回归来拟合
我们绘制一下
最终结果是这个样子
这个拟合效果是不够好的
添加一个特征
我们用x2作为新的特征
原来样本每一个数据集有一个特征,现在有两个特征
用新的数据集线性回归训练
如果这样写这个折线图是乱的 ,这是因为我们生成的x是没有顺序的
我们想要平滑曲线,得先对x进行排序
最终绘制就是这个样子
显然这条曲线对我们数据集的拟合程度更好
可以看到系数
和我们原来的生成数据是拟合的,偏差是因为有噪音
这样有截距
多项式回归并没有新的地方完全用的是线性回归思路,在于原来数据样本,新的特征是原来的特征组合