泰勒公式(泰勒展开式)通俗介绍+本质详解
比较通俗地讲解一下泰勒公式是什么。
泰勒公式,也称泰勒展开式。是用一个函数在某点的信息,描述其附近取值的公式。如果函数足够平滑,在已知函数在某一点的各阶导数值的情况下,泰勒公式可以利用这些导数值来做系数,构建一个多项式近似函数,求得在这一点的邻域中的值
所以泰勒公式是做什么用的?
简单来讲就是用一个多项式函数去逼近一个给定的函数(即尽量使多项式函数图像拟合给定的函数图像),注意,逼近的时候一定是从函数图像上的某个点展开。如果一个非常复杂函数,想求其某点的值,直接求无法实现,这时候可以使用泰勒公式去近似的求该值,这是泰勒公式的应用之一。泰勒公式在机器学习中主要应用于梯度迭代。
***********************************************************************************************************************************
***********************************************************************************************************************************
1. 问题的提出
多项式 是最简单的一类初等函数。关于多项式,由于它本身的运算仅是有限项加减法和乘法,所以在数值计算方面,多项式是人们乐于使用的工具。因此我们经常用多项式来近似表达函数。这也是为什么泰勒公式选择多项式函数去近似表达给定的函数。
***********************************************************************************************************************************
***********************************************************************************************************************************
2. 近似计算举例
初等数学已经了解到一些函数如: 的一些重要性质,但是初等数学不曾回答怎样来计算它们,以 f(x) = 的近似计算为例:
①. 一次(线性)逼近
利用微分近似计算公式 f(x) f() + ()(x - ) (该式由导数/微分的极限表达公式转换得到),对 = 0 附近的 f(x) 的线性逼近为: f(x) f(0) + (0) x , 所以 f(x) = 1,所以 f(x) 在 = 0 附近的线性逼近函数 (x) = 1,如下图:
线性逼近优点:形式简单,计算方便;缺点:离原点O越远,近似度越差。
②. 二次逼近
二次多项式 逼近 f(x) = ,我们期望:
= = = 1 = ( 即期望在 x = 0 处逼近函数和给定函数的函数值相等 );
= = = 0 = ( 即期望在 x = 0 处逼近函数和给定函数的斜率相等 );
= = = -1,所以 = ( 即期望在 x = 0 处逼近函数和给定函数的曲率相等 );
所以 = 1 - ,如下图:
二次逼近要比线性逼近好得多,但局限于 [ , ] 内,该范围外,图像明显差异很大。为什么我们期望两个函数在某一点的函数值 、一阶导数值、二阶导数值相等?因为这些值表达了函数(图像)最基本和最主要的性质,这些性质逼近即可以使得两个函数逼近(由上面函数图像可以直观地看出来)
③. 八次逼近
八次多项式 逼近 f(x) = ,我们期望:
,求出 ( 即期望在 x = 0 处逼近函数和给定函数的函数值相等 );
,求出 ( 即期望在 x = 0 处逼近函数和给定函数的斜率相等 );
.... .... ....
,求出 ( 即期望在 x = 0 处逼近函数和给定函数的曲率相等 );
所以 ,如下图:
(绿色图像) 比 (蓝色图像) 更大范围内更接近余弦函数 (红色图像)
由上述3次不同程度的函数逼近可以看出:对于精确度要求较高且需要估计误差的时候,必须用高次多项式来近似表达函数,同时给出误差公式 。
以上就是利用多项式函数去逼近给定函数的一个过程。
*****************************************************************************************************************************************
*****************************************************************************************************************************************
3. 泰勒公式的推导
由此引出一个问题:给定一个函数 ,要找一个在指定点 附近与 很近似的多项式函数 ,记为:
使得 并且使得两者误差 可估计。所以要找的多项式应该满足什么条件,误差是什么?
从几何上看,, 代表两条曲线,如下图:
使它们在 附近很靠近,很明显:
1. 首先要求两曲线在 点相交,即
2. 如果要靠得更近,还要求两曲线在 点相切,(由图像可以直观看出,相交 [ 棕色和红色图像 ] 和 相切 [ 绿色和红色图像 ],两曲线在 附近的靠近情况明显差异很大,相切更接近),即
3. 如果还要靠得更近,还要求曲线在 点弯曲方向相同,(如上图,弯曲方向相反 [ 绿色和红色图像 ];弯曲方向相同[ 蓝色和红色图像 ],明显在离 很远的地方,弯曲方向相同两函数的差异更小一点),即 ,进而可推想:若在 附近有 , ,近似程度越来越好。
综上所述,所要找的多项式应满足下列条件:
解释一下上面的转换时如何做的,以上面第三行的二阶导数为例:
第一个箭头的转换:将 求二阶导函数后将 带入,求得
第二个箭头的转换:所以 ,所以
多项式函数 中的系数 可以全部由 表示,则得到:
其中误差为 。 因为是用多项式函数去无限逼近给定的函数,所以两者之间肯定存在一丢丢的误差。
****************************************************************************************************************************************
****************************************************************************************************************************************
4. 泰勒公式的定义
所以我们就得到了泰勒公式的定义:
如果函数 在含 的某个开区间 内具有直到 阶导数,则对 ,有
其中余项 (即误差) , 在 与 x 之间。 泰勒公式的余项表达方式有好几种,前面这种表是方法称为n阶泰勒展开式的拉格朗日余项。拉格朗日余项即是n阶泰勒公式又多展开了一阶,n变为n+1。注意,这里的余项即为误差,因为使用多项式函数在某点展开,逼近给定函数,最后肯定会有一丢丢的误差,我们称之为余项。
****************************************************************************************************************************************
****************************************************************************************************************************************
5. 扩展 —— 麦克劳林公式
是泰勒公式的一种特殊情况:即当 时的泰勒公式。所以将 带入公式,即得:
几个常见的初等函数的带有佩亚诺余项的麦克劳林公式:
佩亚诺余项为 的高阶无穷小 :
泰勒公式(泰勒展开式)通俗介绍+本质详解相关推荐
- python导入模块介绍_详解Python模块导入方法
python常被昵称为胶水语言,它能很轻松的把用其他语言制作的各种模块(尤其是C/C++)轻松联结在一起.python包含子目录中的模块方法比较简单,关键是能够在sys.path里面找到通向模块文件的 ...
- java测试一个泰勒级数,数学原理-高等数学复习笔记 ——1.1 泰勒公式 泰勒展开式...
(注 :需理解 有限增量定理 即拉格朗日中值定理 :https://www.zhihu.com/search?type=content&q=%E6%8B%89%E6%A0%BC%E6%9C%9 ...
- java项目斗地主介绍_详解java_ 集合综合案例:斗地主
案例介绍 按照斗地主的规则,完成洗牌发牌的动作. 具体规则: 使用54张牌打乱顺序,三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张留作底牌. 案例分析 1.准备牌: 牌可以设计为一个Array ...
- Linux11-权限的介绍 rwx详解 修改权限 修改文件目录所有者 修改文件目录所在组 一个实践和两个练习
目录 一 权限的基本介绍 0位:确定文件类型(常见类型五种 - l d c b) -:普通文件 l:链接,相当于win下的快捷方式 d:目录,相当于win下的文件夹 c:字符设备文件,鼠标键盘 ...
- 数学原理-高等数学复习笔记 ——1.1 泰勒公式 泰勒展开式
(注 :需理解 有限增量定理 即拉格朗日中值定理 :https://www.zhihu.com/search?type=content&q=%E6%8B%89%E6%A0%BC%E6%9C%9 ...
- Python之struct介绍及详解(与C/C++通信结构体的交互)
用处 按照指定格式将Python数据转换为字符串,该字符串为字节流,如网络传输时,不能传输int,此时先将int转化为字节流,然后再发送; 按照指定格式将字节流转换为Python指定的数据类型; 处理 ...
- ifle网页服务器,iFile怎么使用 iFile常用功能简单介绍【详解】
iFile怎么使用? iFile是一款强大的文件管理器.拥有包括移动.粘贴.复制.建立文件夹链接.解压.压缩.上传下载.搜索.编辑文件.播放影音文件等等;基本可以媲美 Mac 上类似的文件管理功能. ...
- 理论:网络层协议介绍 理论详解
文章目录 前言: 1.IP数据包格式 2.0 ICMP协议介绍 2.1 ICMP协议的封装 2.2 Ping 命令 3.ARP协议概述 4.ARP攻击原理 5.绑定ARP 前言: 网络层位于物联网三层 ...
- EXC_BAD_ACCESS的本质详解以及僵尸模式调试
EXC_BAD_ACCESS简单理解 当你遇到由EXC_BAD_ACCESS造成的崩溃时,那就意味着你向一个已经释放的对象发送消息.这是最常见的情况. EXC_BAD_ACCESS的本质 在C和Obj ...
最新文章
- FCS省选模拟赛 Day5
- Android -- 带你从源码角度领悟Dagger2入门到放弃(一)
- PHP类参数_PHP依赖注入的含义
- 给定年月日计算是一年的第几天
- Qt5中文乱码解决方案
- Java文档阅读笔记-JPA Tutorial
- 【今日CV 视觉论文速览】20 Nov 2018
- java 事件分发机制_用两段代码带你看懂事件分发机制
- linux socket 结构定义 send,Linux下Socket编程中用send发送结构体
- repo 的几个使用理解
- 页面跳转失效_网站的404页面对于SEO的重要作用
- 删数问题(Noip1994)--贪心
- OTSU 获取最佳阈值,及opencv二值化
- IntelliJ IDEA 好用插件之Maven Helper
- Incorrect string value: '\xF0\x9F\x98\x82\xF0\x9F...'
- windows2008 R2安装LoadRunner 11提示WindowsInstaller存储空间不足解决方法
- Indoor Scene Recognition 室内场景识别数据集
- SQL:开窗函数(窗口函数)
- STRING:蛋白质相互作用(PPI网络)数据库简介
- IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT(IEEE TIM)投稿过程