我们可以发现,这样的方式存在精确度不够高,误差不能估计等不足之处。所以,主要的问题就是寻找函数P(x),使得f(x)≈P(x),从而使得误差R(x)=f(x)-P(x)可估计。
分析:如果说要f(x)≈P(x),且近似程度要好,Pn(x)应该满足什么条件?
由上图就可以引出泰勒公式了
$P_{n}(x)=f(x_{0})+f'(x_{0})(x-x_{0})+\frac{f''(x_{0})}{2!}(x-x_{0})^{2}+\cdots +\frac{f^{(n)}(x_{0})}{n!}(x-x_{0})^{n}$称为f(x)在点x0关于(x-x0)的n阶泰勒多项式,这个式子只能说是得到的值能够无限的逼近真正的函数值,但是其中还存在一个误差项R(x),也就是说f(x)=R(x)+P(x),这里的误差项称为余项。对于一般的机器学习、深度学习来说,余项本身也用不上在加上其比较复杂,所以在这里就不作解释了。
多项式逼近如下图所示
公式里面的阶数是什么意思呢?
阶数越高增长速度越快。观察可发现,越高次项在越偏右侧影响越大。对于一个复杂函数,给我们的感觉是在当前点,低阶项能更好的描述当前点附近,对于之后的走势就越来越依靠高阶的了。
公式里面的阶乘是什么意思呢?
如果把9次的和2次的直接放在一起,那2次的就直接不用玩了呀,它们之间的差距太大了。但是在开始的时候应该是2次的效果更好,之后才是慢慢轮到9次的。
有了阶乘(!)之后,就帮助我们解决了这样的问题
如下图所示,使用不同阶的多项式函数来逼近$y=\sin x$函数
可以看到,阶数越高的函数越能拟合$y=\sin x$函数。