![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=1739360211-fzqI9yQatFACHYgmKoeYpBMqXEN7W77u-0-4cd6a7a7acb7d59a9bd678521efb6129)
注意 当n=1时,多项式简化为一个简单的线性方程。
考虑图3.10的散点图,x轴显示输入,y轴显示输出。可以看出,直线不足以描述所有数据。多项式函数是线性函数更为灵活的泛化。
![](https://epubservercos.yuewen.com/10538A/23764583701649206/epubprivate/OEBPS/Images/073-01.jpg?sign=1739360211-Pb6b4fsgwX3ko3N0OEZh0G88N62qBHLA-0-42bac53e4b12fe4c33ff67fc5a76ce70)
图3.10 类似这样的数据不适合线性模型
让我们用多项式来拟合这种数据。按照清单3.3的内容创建一个名为polynomial.py的文件。
清单3.3 使用多项式模型
![](https://epubservercos.yuewen.com/10538A/23764583701649206/epubprivate/OEBPS/Images/073-02.jpg?sign=1739360211-dEHOqZ374YtkfE1OeQ1pQCTvHtlNKDCs-0-07cb93bdb47e5483bd713de38d6ff7ac)
代码的最终输出是一个对数据拟合出的5次多项式,如图3.11所示。
![](https://epubservercos.yuewen.com/10538A/23764583701649206/epubprivate/OEBPS/Images/074-01.jpg?sign=1739360211-z2yiBcHiRfVR85qgM4NCB4evMYTDNewm-0-e1ffb343312dd9c216401e81b66a33a0)
图3.11 最佳拟合曲线与非线性分布数据平滑吻合