https://www.toutiao.com/a6674020406308897293/

这是《机器学习中的数学基础》系列的第16篇,也是微积分的最后一篇。

在实际生活和工作中,我们经常希望用多项式来近似某点处的函数值,而泰勒级数就是干这个的。不过在正式介绍泰勒级数之前,我们先来看看高阶导数与函数的凹凸性。

  • 高阶导数与函数的凹凸性

那么什么是高阶导数?顾名思义,高阶导就是求了很多次导数。举个例子,函数y=x³的图像如下:

图1

如图1所示,y的一阶导,也就是第一次求导,y'=3x²,表示图像的斜率。那如果我们对y'再进行求导呢?可以得到y''=6x,它的几何意义又是什么呢?一阶导我们表示的是函数值的变化率,那么二阶导就表示斜率的变化率。进一步,我们说,如果二阶导大于0,说明斜率是在一直增加的,此时函数是个凸函数;同理,二阶导小于0,斜率在一直减小,函数为凹函数。

既然说到了凹凸函数,我们就来看看它的定义(机器学习领域,可能与数学领域有所不同):

如果一个函数f是凸函数,那么其满足:f(tx+(1-t)y)≤tf(x)+(1-t)f(y),其中x、y为函数定义域上任意两点,t∈[0,1]。

可能看公式不容易那么理解,我们就来画个凸函数的图像吧:

图2

如图2所示,我们首先来看tx+(1-t)y,它保证了取值范围是在x、y之间。为什么呢?因为t∈[0,1],把t=0代入,得到y;把t=1代入,得到x。因此tx+(1-t)y的取值在x与y之间。那么它对应的函数值自然就是:f(tx+(1-t)y)。

下面我们看C点的值该如何求,我们再画一个图来说明:

图3

如图3,我们做了一条平行于x轴的线段AE。很容易看出△ACD相似于△ABE,因此有CD/BE=AD/AE。其中,CD的长是我们要求的,BE的长为f(y)-f(x),AD的长为tx+(1-t)y-x=(1-t)(y-x),AE的长为y-x。所以,我们有:

约分化简可得CD=(1-t)f(y)+(t-1)f(x)。但我们想知道C的值,只需再加上A点的函数值f(x)就可以了。因此,C点的值为(1-t)f(y)+(t-1)f(x)+f(x)=tf(x)+(1-t)f(y)。Bingo!

我们再来观察图2,它是一个凸函数,那么它的斜率就是不断增加的,也就是说二阶导始终大于0.

  • 泰勒级数

有了以上的铺垫,我们来看如何近似函数在某点的值。比如sin(x)在x=0处的函数值sin(0)怎么来近似呢?

我们一般用多项式来估计,先上个二次多项式,f(x)=ax²+bx+c。然后再把sin(x)的图像画出来:

我们现在想用f(x)=ax²+bx+c来近似逼近sin(0)的值,只需确定a、b、c三个参数的值就好了。

首先,这俩函数在0点的函数值得相等吧。也就是说,f(0)=sin(0),而sin(0)=0,f(0)=c,因此c=0.

然后,这俩函数在0点处的斜率得相同吧。也就是说,它们的一阶导相等,即f'(0)=sin'(0),而sin'(0)=cos(0)=1,f'(0)=2a*0+b=b,化简可得b=1.

最后,这俩函数在0点处的二阶导也应该相等,即f''(0)=sin''(0),而sin''(0)=0,f''(0)=2a,因此a=0.

综上,我们用来近似的函数f(x)=0*x²+1*x+0=x。我们说二次多项式中对sin(x)在x=0处最好的近似函数就是f(x)=x,把x=0代入就得到近似值是0。

观察我们上面的近似过程,可以得到下面的式子:

sin(x)≈sin(0)+sin'(0)/1!*x+sin''(0)/2!*x²

我们把它一般化,如果要近似任意函数f(x)在x=0处的值,可以表示为:

如果我们想近似函数f(x)在任意一点x=x0处的值,那么可以表示为:

泰勒级数的应用还有很多,这里就不一一展开了。这就是今天的全部内容,欢迎留言讨论。

用泰勒级数来估计函数的近似值相关推荐

  1. 6-10 使用函数求余弦函数的近似值 (15 分)本题要求实现一个函数,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e:cos(x)=x0/0!−x2/2!+x4/4!−x6/

    6-10 使用函数求余弦函数的近似值 (15 分) 本题要求实现一个函数,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e: cos(x)=x0/0!−x2/2!+x4/4!−x6/6! ...

  2. 使用函数求余弦函数的近似值 (15 分)

    使用函数求余弦函数的近似值 (15 分) 本题要求实现一个函数,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e: cos(x)=x0/0!−x2/2!+x4/4!−x6/6!+⋯ 函数 ...

  3. 习题5-7 使用函数求余弦函数的近似值 (15 分)

    习题5-7 使用函数求余弦函数的近似值 (15 分) 本题要求实现一个函数,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e: 函数接口定义: double funcos( double ...

  4. matlab用牛顿差值计算三次差值多项式,计算方法用Newton插值多项式求函数的近似值.docx...

    计算方法用Newton插值多项式求函数的近似值 计算方法课程设计题 目: 用Newton插值多项式 处理磁化曲线学 院: 理学院班 级: 学 生 姓 名: 学 生 学 号: 指 导 教 师: 2017 ...

  5. 习题5-7 使用函数求余弦函数的近似值 (15分)

    作者: C you again,从事软件开发 努力在IT搬砖路上的技术小白 公众号: [C you again],分享计算机类毕业设计源码.IT技术文章.游戏源码.网页模板.程序人生等等.公众号回复 ...

  6. C语言编程题:用泰勒级数求自然数e的近似值

    题目:C语言中用泰勒级数求e的近似值,直到最后一项小于 10的负6次方为止次方 e=1+1/1!+1/2!+...+1/n! 描述:观察公式前两项可以直接不用计算,合并为2,设置三个float型变量, ...

  7. 习题5-7 使用函数求余弦函数的近似值(15 分)

    本题要求实现一个函数,用下列公式求cos(x)的近似值,精确到最后一项的绝对值小于e: cos(x)=x​0​​/0!−x​2​​/2!+x​4​​/4!−x​6​​/6!+⋯ 函数接口定义: dou ...

  8. 如何利用泰勒级数展开式计算数学函数的值(SCL代码)

    大部分PLC都会提供常用数学函数的算法指令,当然也包括SIN(x),COS(x)等.利用现有指令完成常用数学函数值的计算,不是本篇博文讨论的重点.但是你有没有想过指令的底层又是如何完成函数指令计算的呢 ...

  9. opencv焦距估计函数cvInitIntrinsicParams2D原理解析

    背景介绍 在进行相机标定时,通常会包括内参初始化估计.外参初始化估计,以及非线性优化参数.在opencv中内参数估计主要在cvInitIntrinsicParams2D函数中实现,外参数估计在cvFi ...

最新文章

  1. apache 服务器安全配置
  2. 4.3 IP数据报格式
  3. HTTP 代理如何正确处理 Cookie
  4. Selector 概念
  5. 构建安全的Xml Web Service系列之如何察看SoapMessage
  6. 击溃音乐服务器第一人!周杰伦新歌首发,QQ音乐服务器一度崩溃
  7. jQuery Mobile中图标icon样式大全ui-icon-*
  8. 计算机32位好还是64位好,电脑系统选择32位好,还是64位的好呢?
  9. 树莓派ssh远程登录连接默认账号密码
  10. MacVim配置文件
  11. nyoj 海岛争霸(Floyd最短路径)
  12. LeetCode题解(1628):设计带解析函数的表达式树(Python)
  13. 【模型压缩】蒸馏神经网络(Distill the Knowledge in a Neural Network)
  14. 白色相簿2 coda篇各结局概率分析
  15. SASS的概念和使用
  16. 春节青岛-江浙沪自驾游
  17. [Spring Boot]12 ElasticSearch实现分词搜索功能
  18. imx6获取中断号_linux设备驱动归纳总结(六):2.分享中断号【转】
  19. ICLR 2023 | GeneFace:高可泛化高保真度的说话人视频合成
  20. Docker 安装Minio

热门文章

  1. tensorflow.transpose() 举例
  2. sql2000 的bcp命令
  3. Matlab图形绘制经典案例 (2)
  4. ​2012年至今,细数深度学习领域这些年取得的经典成果
  5. 人民日报:大数据时代如何保证数据安全?
  6. 清华校友总会AI大数据专委会(筹)第一次理事会顺利召开
  7. 报名 | 贝叶斯计算方法在生物制药领域的应用(基于SAS)
  8. 创业公司备战“11.11”创新行为大赏
  9. 机器学习各领域必读经典综述
  10. 多所“双一流”异地布局,新的王牌大学和高教城市将诞生?