![TensorFlow机器学习(原书第2版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/694/44567694/b_44567694.jpg)
上QQ阅读APP看书,第一时间看更新
3.3 多项式模型
线性模型可能是直觉的第一猜测,但在现实世界中问题的相关性很少会如此简单。例如,导弹穿过太空的轨迹相对于地球上的观察者是弯曲的。Wi-Fi的信号强度是平方反比衰减的。花朵在其一生中的高度变化当然也不是线性的。
当数据呈现为平滑的曲线而非直线时,你需要将你的回归模型从线性更改为其他形式。其中一种方式是使用多项式模型。多项式模型是线性模型的泛化。n次多项式表示如下:
![](https://epubservercos.yuewen.com/10538A/23764583701649206/epubprivate/OEBPS/Images/073-03.jpg?sign=1739286903-TLYkL5cCnARr7iMSwUiR0yTlUvl1hA0t-0-44a614b491f2ca76dd51b7785e0be005)
注意 当n=1时,多项式简化为一个简单的线性方程。
考虑图3.10的散点图,x轴显示输入,y轴显示输出。可以看出,直线不足以描述所有数据。多项式函数是线性函数更为灵活的泛化。
![](https://epubservercos.yuewen.com/10538A/23764583701649206/epubprivate/OEBPS/Images/073-01.jpg?sign=1739286903-Hg5EtrLiwHWIozSLN2Z8dibqrPpYfkwi-0-6ef2075ce4bf4f76a15dc29db33e7a55)
图3.10 类似这样的数据不适合线性模型
让我们用多项式来拟合这种数据。按照清单3.3的内容创建一个名为polynomial.py的文件。
清单3.3 使用多项式模型
![](https://epubservercos.yuewen.com/10538A/23764583701649206/epubprivate/OEBPS/Images/073-02.jpg?sign=1739286903-7CIVprSgZNHHS2K2lUnkrsd9Ka7JEp2Y-0-70a216a64632ca5ba1a13df8da7b3603)
代码的最终输出是一个对数据拟合出的5次多项式,如图3.11所示。
![](https://epubservercos.yuewen.com/10538A/23764583701649206/epubprivate/OEBPS/Images/074-01.jpg?sign=1739286903-ge9SrIViXb1u7QGxy79MxkHSR7Peid0p-0-90e43050baacb55b219fe23b21e934a0)
图3.11 最佳拟合曲线与非线性分布数据平滑吻合