精华内容
下载资源
问答
  • 泰勒公式(泰勒展开式)通俗+本质详解

    万次阅读 多人点赞 2019-03-03 12:54:53
    泰勒公式,也称泰勒展开式。是用一个函数在某点的信息,描述其附近取值的公式。如果函数足够平滑,在已知函数在某一点的各阶导数值的情况下,泰勒公式可以利用这些导数值来做系数,构建一个多项式近似函数,求得在这...

     

    比较通俗地讲解一下泰勒公式是什么。

    泰勒公式,也称泰勒展开式。是用一个函数在某点的信息,描述其附近取值的公式。如果函数足够平滑,在已知函数在某一点的各阶导数值的情况下,泰勒公式可以利用这些导数值来做系数,构建一个多项式近似函数,求得在这一点的邻域中的值

    所以泰勒公式是做什么用的?

    简单来讲就是用一个多项式函数去逼近一个给定的函数(即尽量使多项式函数图像拟合给定的函数图像),注意,逼近的时候一定是从函数图像上的某个点展开。如果一个非常复杂函数,想求其某点的值,直接求无法实现,这时候可以使用泰勒公式去近似的求该值,这是泰勒公式的应用之一。泰勒公式在机器学习中主要应用于梯度迭代。

    ***********************************************************************************************************************************

    ***********************************************************************************************************************************

    1. 问题的提出 

    多项式   是最简单的一类初等函数。关于多项式,由于它本身的运算仅是有限项加减法和乘法,所以在数值计算方面,多项式是人们乐于使用的工具。因此我们经常用多项式来近似表达函数。这也是为什么泰勒公式选择多项式函数去近似表达给定的函数。

    ***********************************************************************************************************************************

    ***********************************************************************************************************************************

    2. 近似计算举例

    初等数学已经了解到一些函数如: 的一些重要性质,但是初等数学不曾回答怎样来计算它们,以 f(x) = \small \cos x 的近似计算为例:

    ①. 一次(线性)逼近                                                                             

    利用微分近似计算公式 f(x) \small \approx f(\small x_{0}) + {f}'(\small x_{0})(x - \small x_{0}) (该式由导数/微分的极限表达公式转换得到),对 \small x_{0} = 0 附近的 f(x) 的线性逼近为: f(x) \small \approx f(0) + {f}'(0) x , 所以 f(x) = \small \cos x \small \approx 1,所以 f(x) 在 \small x_{0} = 0 附近的线性逼近函数 P_{1}(x) = 1,如下图:

    线性逼近优点:形式简单,计算方便;缺点:离原点O越远,近似度越差。  

    ②. 二次逼近     

    二次多项式 逼近 f(x) = \small \cos x ,我们期望:    

    \small P_{2}\left ( 0 \right ) = \small f\left ( 0 \right ) = \small \cos 0 = 1 = \small a_{0}  ( 即期望在 x = 0 处逼近函数和给定函数的函数值相等 );

    \small {P_{2}}'\left ( 0 \right ) = \small f{}'\left ( 0 \right ) = \small \sin 0 = 0 = \small a_{1}  ( 即期望在 x = 0 处逼近函数和给定函数的斜率相等 );  

    \small {P_{2}}''\left ( 0 \right ) = \small {f}''\left ( 0 \right ) = \small -\cos 0 = -1,所以 \small a_{2} = \small -\frac{1}{2}  ( 即期望在 x = 0 处逼近函数和给定函数的曲率相等 ); 

     所以 \small \cos x \small \approx \small P_{2}\left ( x \right ) = 1 - \small \frac{x^{2}}{2},如下图:

    二次逼近要比线性逼近好得多,但局限于 [ \small -\frac{\pi }{2}\small \frac{\pi }{2} ] 内,该范围外,图像明显差异很大。为什么我们期望两个函数在某一点的函数值 、一阶导数值、二阶导数值相等?因为这些值表达了函数(图像)最基本和最主要的性质,这些性质逼近即可以使得两个函数逼近(由上面函数图像可以直观地看出来)

    ③. 八次逼近 

     八次多项式   逼近 f(x) = \small \cos x ,我们期望:     

     \small P_{8}\left (0 \right ) = f\left ( 0 \right ) ,求出  \small a_{0} = 1   ( 即期望在 x = 0 处逼近函数和给定函数的函数值相等 );       

     \small {P_{8}}'\left ( 0 \right ) = {f\left ( 0 \right )}',求出 \small a_{1} = 0   ( 即期望在 x = 0 处逼近函数和给定函数的斜率相等 );

     .... .... ....          

     \small {P_{8}}^{(8)}\left ( 0 \right ) = f^{(8)}(0),求出 \small a_{8} = \frac{1}{8!}  ( 即期望在 x = 0 处逼近函数和给定函数的曲率相等 );                                               

    所以    ,如下图:

    \small P_{8}\left ( x \right ) (绿色图像) 比 \small P_{2}\left ( x \right ) (蓝色图像) 更大范围内更接近余弦函数 (红色图像)   

    由上述3次不同程度的函数逼近可以看出:对于精确度要求较高且需要估计误差的时候,必须用高次多项式来近似表达函数,同时给出误差公式 。

    以上就是利用多项式函数去逼近给定函数的一个过程。

    *****************************************************************************************************************************************

    *****************************************************************************************************************************************

    3. 泰勒公式的推导

    由此引出一个问题:给定一个函数 \small f\left ( x \right ) ,要找一个在指定点 \small x_{0} 附近与 \small f\left ( x \right ) 很近似的多项式函数 \small P\left ( x \right ),记为:         

      使得  \small f\left ( x \right ) \small \approx  \small P_{n}\left ( x \right ) 并且使得两者误差 \small R_{n}\left ( x \right ) = f\left ( x \right ) - P_{n}\left ( x \right ) 可估计。所以要找的多项式应该满足什么条件,误差是什么?

    从几何上看,\small y = f\left ( x \right )\small y = P_{n}\left ( x \right ) 代表两条曲线,如下图:

           

    使它们在 \small x_{0} 附近很靠近,很明显:

    1. 首先要求两曲线在 \small \left ( x_{0},f\left ( x_{0} \right ) \right ) 点相交,即  \small P_{n}\left ( x_{0} \right ) = f\left ( x_{0} \right )             

    2. 如果要靠得更近,还要求两曲线在  \small \left ( x_{0},f\left ( x_{0} \right ) \right ) 点相切,(由图像可以直观看出,相交 [ 棕色和红色图像 ] 和 相切 [ 绿色和红色图像 ],两曲线在 \small x_{0} 附近的靠近情况明显差异很大,相切更接近),即 \small {P_{n}}'\left ( x_{0} \right ) = {f}'\left ( x_{0} \right )                                                

    3. 如果还要靠得更近,还要求曲线在  \small \left ( x_{0},f\left ( x_{0} \right ) \right ) 点弯曲方向相同,(如上图,弯曲方向相反 [ 绿色和红色图像 ];弯曲方向相同[ 蓝色和红色图像 ],明显在离 \small x_{0} 很远的地方,弯曲方向相同两函数的差异更小一点),即 \small {P_{n}}''\left ( x_{0} \right ) = {f}''\left ( x_{0} \right ) ,进而可推想:若在 \small \left ( x_{0},f\left ( x_{0} \right ) \right ) 附近有 \small {P_{n}}'\left ( x_{0} \right ) = {f}'\left ( x_{0} \right )\small {P_{n}}''\left ( x_{0} \right ) = {f}''\left ( x_{0} \right ) \small \cdots \cdots \cdots  \small P_{n}^{\left ( n \right )}\left ( x_{0} \right ) = f^{n}\left ( x_{0} \right ),近似程度越来越好。

    综上所述,所要找的多项式应满足下列条件:

                  

    解释一下上面的转换时如何做的,以上面第三行的二阶导数为例: 

    第一个箭头的转换:将 \small P_{n}\left ( x \right ) 求二阶导函数后将 \small x_{0} 带入,求得 \small {P_{n}}''\left ( x_{0} \right ) = 2!a_{2} 

    第二个箭头的转换:所以 \small {f}''\left ( x_{0} \right ) = 2!a_{2},所以 \small a_{2} = \frac{1}{2!}{f}''\left ( x_{0} \right ) 

    多项式函数   中的系数 \small a 可以全部由 \small f\left ( x \right ) 表示,则得到: 

    其中误差为  \small R_{n} \left ( x \right ) = f\left (x \right ) - P_{n}\left ( x \right )。 因为是用多项式函数去无限逼近给定的函数,所以两者之间肯定存在一丢丢的误差。

    ****************************************************************************************************************************************

    ****************************************************************************************************************************************

    4. 泰勒公式的定义

    所以我们就得到了泰勒公式的定义:

    如果函数 \small f\left ( x \right ) 在含 \small x_{0} 的某个开区间  \small \left ( a,b \right )  内具有直到  \small \left ( n+1 \right ) 阶导数,则对  \small \forall x \in \left ( a,b \right ) ,有  

       

    其中余项 (即误差)  \small R_{n}\left ( x \right ) = \frac{f^{\left ( n+1 \right )}(\xi )}{\left ( n+1 \right )!}(x-x_{0})^{n+1} , \xi 在 \small x_{0} 与 x 之间。 泰勒公式的余项表达方式有好几种,前面这种表是方法称为n阶泰勒展开式的拉格朗日余项。拉格朗日余项即是n阶泰勒公式又多展开了一阶,n变为n+1。注意,这里的余项即为误差,因为使用多项式函数在某点展开,逼近给定函数,最后肯定会有一丢丢的误差,我们称之为余项。

    ****************************************************************************************************************************************

    ****************************************************************************************************************************************

    5. 扩展 —— 麦克劳林公式

    是泰勒公式的一种特殊情况:即当 \small x_{0} = 0 时的泰勒公式。所以将 \small x_{0} = 0 带入公式,即得:

    几个常见的初等函数的带有佩亚诺余项的麦克劳林公式:

     佩亚诺余项为    \small \left ( x-x_{0} \right )^{n} 的高阶无穷小 :                                  

                                                                 

     

     

    展开全文
  • 泰勒展开式

    2020-05-08 17:00:37
    一句话概括泰勒展开式: 用多项式去无限逼近一个函数,就是将某个函数在一个点上泰勒展开。 如何推导? 不用管,记住公式就行了。 蕴含的思想: 某个点的变化掌握在一阶导数里,一阶导数的变化在二阶导数里,...
    • 一句话概括泰勒展开式:
      用多项式去无限逼近一个函数,就是将某个函数在一个点上泰勒展开。

    • 如何推导?
      不用管,记住公式就行了。

    • 蕴含的思想:
      某个点的变化掌握在一阶导数里,一阶导数的变化在二阶导数里,往后类推。

    • 为什么需要展开?(泰勒展开有什么用?)
      1.方便求一些函数值,因为泰勒展开是多项式,而多项式的值一般都很好求,只要代入变量,就可求出因变量。而很多函数的函数值很难求,例如sinx,lnx这类的。
      2.方便计算,简化问题:在这里插入图片描述

    展开全文
  • sinx的泰勒展开式

    万次阅读 多人点赞 2019-08-19 20:18:33
    sinx的泰勒展开式求解过程 思路: sin x 可以如何 “ 展开 ”?写成式子就是: 最后以省略号结束,代表 “ 无穷 ”,需要求的就是 a0,a1,a2,…… 的值,准确地说就是通项公式。然后,我们就可以开始 “ 微分 ” ...

    sinx的泰勒展开式求解过程

    思路:
    sin x 可以如何 “ 展开 ”?写成式子就是:
    最后以省略号结束,代表 “ 无穷 ”,需要求的就是 a0,a1,a2,…… 的值,准确地说就是通项公式。然后,我们就可以开始 “ 微分 ” 了,就是等式两边同时、不停地微分下去。左边的三角函数的微分,其实是四个一循环的:sin x ➜ cos x ➜ - sin x ➜ - cos x,再回到 sin x……我们也会注意到,凡是把右边微分后,第一项(常数)就为 0 了,也就是可以直接忽略。
    在这里插入图片描述
    这样一来,等式左边在有规律地循环着,等式右边每次都减少一项。当然,x = 0 时等式也会成立,那将 x = 0 带入,将消去所有 x 指数大于 0 的项(都是 0 啊)。这样一来,就可以顺利求出 a0,a1,a2,……啦,sin 0、cos 0、- sin 0 和 - cos x 分别是 0、+1 、0、-1(显然的规律)。上面是微分的过程,下面是对于所有系数得到的等式。
    在这里插入图片描述
    最后,等式左边是四个一循环,可以从除以 4 的余数来考虑(分类);然后,等是右边可以用字母来代替,就是 k! × ak,这里 k! 代表阶乘。所以说,我们可以得到一个看上去漂亮的结果:
    在这里插入图片描述
    如果将系数数列 a 代入,那么偶数项都会消掉(系数为 0),只剩下一加一减的奇数项了。这就是泰勒展开(其实泰勒展开有好几个,这里只是 sin x 的泰勒展开):

    在这里插入图片描述
    想法是不是很巧妙,哈哈?我也是看别人写的。其他各种复杂函数的展开式求解也采用相同的方法,很实用哦。

    展开全文
  • 计算泰勒展开式

    2019-02-08 20:55:38
    计算泰勒展开式,输入底数和次数,程序会输出结果,可以计算某数为泰勒展开式主元时的最大值。
  • 泰勒公式:就是会有余项,多用在极限计算和中值定理,应用的条件只要函数在待考察的区间上有n+1阶导数,就有 (拉格朗日余项),这个的成立与否不需要考虑自变量的取值问题泰勒展开式泰勒展开式的方向是从函数变成...

    泰勒级数:只要一个函数无穷光滑,那么泰勒级数就存在,但是不一定收敛,而且即使收敛,也不一定收敛于原函数。

    泰勒公式:就是会有余项,多用在极限计算和中值定理,应用的条件只要函数在待考察的区间上有n+1阶导数,就有

    (拉格朗日余项),这个的成立与否不需要考虑自变量的取值问题

    泰勒展开式:泰勒展开式的方向是从函数变成级数,而且要求级数必须收敛,并且必须收敛于被展开函数在对应点所取到的函数值。所以会有收敛域

    泰勒级数定义

    如果

    在点
    具有任意阶导数,则幂级数

    称为

    在点
    处的泰勒级数。

    泰勒公式定义

    若函数

    在包含
    的某个闭区间
    上具有
    阶导数,且在开区间
    上具有
    阶导数,则对闭区间
    上任意一点
    ,成立下式:

    是泰勒公式的余项

    泰勒展开式定义

    这个会有收敛区间,这个就是其和泰勒公式的区别,比如

    在其定义域内泰勒公式都成立,但是泰勒展开式却只有在
    内成立,这就是区别,可以说在收敛区间内两个是一致,但是不在收敛区间时就不一定了。泰勒级数可以说只是代表一种计算方式。

    所以这三种是有很大区别的,别再傻傻分不清了

    考研数学笔记分享

    叁晟:考研工具和技巧汇总zhuanlan.zhihu.com
    展开全文
  • 浅显易懂——泰勒展开式

    万次阅读 多人点赞 2018-06-02 21:44:32
    第一次见到泰勒展开式的时候,我是崩溃的。泰勒公式长这样:好奇泰勒是怎么想出来的,我想,得尽量还原公式发明的过程才能很好的理解它。首先得问一个问题:泰勒当年为什么要发明这条公式?因为当时数学界对简单函数...
  • 为了解决利用λ—λ截集证明模糊值函数的展开式过程中遇到的...在此基础上,定义了模糊泰勒展开式,对含有中值的泰勒展开式进行证明,并对其近似表达的误差进行分析。结果表明,经典与模糊的泰勒展开式具有相似的表述形式。
  • 函数的泰勒展开式

    2019-10-10 21:08:01
    一元函数泰勒展开式 二元函数的泰勒展开式 n元函数的泰勒展开式 上面似乎有一些不同的地方就是f(x)与f(x+h,y+k)中h,k的出现,其实f(x)的泰勒展开式是把x0放到后面去了,若在展开式中令x=x+x0,便得相同形式。 展开...
  • 几个函数泰勒展开式及其记忆技巧

    万次阅读 多人点赞 2018-05-03 09:44:49
    几个函数泰勒展开式及其记忆技巧。 
  • Q709804 C语言计算泰勒展开式 https://ask.csdn.net/questions/709804
  • 在最优化学习中开始接触多元函数的泰勒展开的时候,总是感觉不好理解...一元函数在点 处的泰勒展开式为: 二元函数在点 处的泰勒展开式为:多元函数(n)在点 处的泰勒展开式为: 把Taylor展开式写成矩阵的形式:上面可能
  • 泰勒展开式的推导

    千次阅读 2017-09-23 10:11:55
    泰勒展开式的推导
  • 在用泰勒展开式解决极限题目的时候会非常简单,昨天我在群里看有人问一题 这题用洛必达法则极为复杂,其他解法不易想,所以我们自然想到泰勒展开式,可是我们如何知道复合函数的泰勒展开式呢?这里我将会用长篇幅来...
  • from sympy import *from sympy import log,sin,expimport math #定义变量为xx=Symbol("x") #函数为def taylor (f = x**4,n = 10,x0 = 0,t = 2):#n = 100 #泰勒展开项数i = 0F = list()#n阶导while i <...
  • e的泰勒展开式(麦克劳林展开式): //计算自然常数e的公式为e的泰勒展开式(麦克劳林展开式) #include<iostream> using namespace std; const double MaxError = 1.0E-6; //误差上限 long int ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 891
精华内容 356
关键字:

泰勒展开式