![人工智能数学基础](https://wfqqreader-1252317822.image.myqcloud.com/cover/67/38507067/b_38507067.jpg)
3.2 导数与微分
导数又名微商,是微积分中重要的基本概念。一个函数在某一点的导数描述了这个函数在这一点附近的变化率。导数被用在许多人工智能算法中,特别是在基于导数的参数优化方法中,其应用更广泛。
3.2.1 导数
1.导数的定义
设函数在点
的某个邻域内有定义,给
一改变量
,函数的改变量
,若极限
存在,则称函数
在点
处可导,并称此极限值为函数
在点
处的导数,记为
,即
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_107.jpg?sign=1739527704-a9b7zqn9tzfcdnbbLAMlbDj6qL5qu1Bg-0-c5d1a6eee61945cd4233d280ab24aa37)
(3-1)
也常记为、
或
等。
在式(3-1)中,若令,则式(3-1)可改写为
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_112.jpg?sign=1739527704-CCOjOKIGJuBm63OqWXnyVkOoeMAk5rsw-0-e756d33db4a01f616e01f37f4dc4897f)
(3-2)
式(3-2)也可以作为导数的定义公式。
若函数在
内的每点都可导,则称
在区间
内可导。显然,对于
内的每个确定的
值,函数
都对应一个确定的导数,这就构成了一个新的函数,这个函数叫作原来函数
的导函数,记为
、
、
或
。
如果函数在包含点
的某个区间内可导,函数
在点
处的导数就是导函数
在
处的函数值,即
。在不会发生混淆的情况下,导函数也简称导数。
根据左右侧导数情况,在点
处可导的充分必要条件是左导数
和右导数
都存在且相等。
2.可导与连续的关系
若函数在点
处可导,则
在点
处一定连续;反之,则不然。
例如:在
处不可导,但由于
,所以
在
处连续。
3.复合函数求导
对于复合函数,其导数的计算要遵从链式法则,即令
,则
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_147.jpg?sign=1739527704-tl1MBMmXaNiv1po91nPESltiCufhvePH-0-257a3308542a887aad914d40c3992bd9)
(3-3)
4.隐函数求导
设是某个定义域上的函数,若存在定义域上的子集
,使得对每个
属于
,存在相应的
满足方程
,则称方程确定了一个隐函数,记为
。
在隐函数已经确定存在且可导的情况下,可以用复合函数求导的链式法则来对其求导。方程左右两边都对求导,由于
其实是
的一个函数,所以可以直接得到一个带有
的方程,化简后可得到
的表达式。
例3-2 求函数的导函数和在
处的导数。
解:可利用Python包SymPy中的函数diff求函数的导函数,也可以求具体点的导数值。具体程序如下:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_162.jpg?sign=1739527704-wnhc2uHHUCAs9GUOgP2WzgOjudbVZV0D-0-ba805be01c6f30c1a9f9ba021a9c84b3)
输出结果如下:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_163.jpg?sign=1739527704-cYZUvfz2pMXIpaa84HKrvRwpZnIlJD4q-0-891f930cd6ab00ca0f6cc919cf1c1935)
令,根据函数乘积的求导公式
,也可以手动计算得出上面的结果,其中
的导数用复合函数的链式法则来求。
例3-3 已知,求
。
解:方程两边对求导,解得
,然后利用Python包SymPy中的函数idiff求隐函数的导数。具体程序如下:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_171.jpg?sign=1739527704-2tka5kthwfHPU4RTasR7a5kFvL4ktJ6I-0-92972162435584c07f188d928416a1a6)
输出结果如下:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_172.jpg?sign=1739527704-Lh3kjeefGm8vZF9QMiZPSdm2fXi4UctA-0-f7b5cce9d007ed31354d42684c914f8e)
5.级数
设数列:
,把表达式
简记为
,称其为常数项无穷级数,简称数项级数,在不引起混淆的情况下,也可以直接称为级数。其中,
叫作数项级数的通项或一般项。若令
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_178.jpg?sign=1739527704-Od7tNdOSfhdrlmsZylqMspAGoBFZ1pri-0-039e61464a9fdf015c214c370901c439)
则称其为数项级数的部分和数列。若级数
的部分和数列
的极限存在,并设
,则称级数
收敛于
,
称为此级数的和,记作
。若
的极限不存在(包括极限为
),则称级数
发散。
例3-4 计算级数。
解:可利用Python包SymPy中的函数Sum求级数和。具体程序如下:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_191.jpg?sign=1739527704-Q1n5hx1Esa5zS7cQmcItRR1oKHPslW5w-0-09e638564ae2746e6279f34808e60273)
输出结果如下:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_192.jpg?sign=1739527704-QDoGa0slObWtxucnTiocX2zmnEcOarVY-0-102a5691bf9c6fb29cb4cf0d8e1cb33d)
6.幂级数
给定区间I上的函数列,称式子
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_194.jpg?sign=1739527704-Sg0JtXbgGD1RaAYvxU9yVuin5LtLOgRA-0-feb4123e5180fd4319f4a5cb7991a61c)
为函数项无穷级数,简称函数项级数,简写为,I称为它的定义域。
对于,若级数
收敛,则称
为级数
的一个收敛点,收敛点的全体叫作收敛域。若级数
发散,则称
为级数
的一个发散点,发散点的全体称为发散域。称
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_203.jpg?sign=1739527704-ytJIbBFjuvVEX1j0WV7TvkTmLrtCjzZF-0-a2d2a07bdd04134327483b8c3eb6f7ec)
为级数的前n项和或部分和。
在收敛域内,若,则称
为级数
的和函数。记为
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_208.jpg?sign=1739527704-T17YHohPDz1fADydVmcqGAYbvspaaR7m-0-4d59b355f50ecf081c78386ac61de9a9)
在级数的收敛域内,和函数一定存在。
形如
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_209.jpg?sign=1739527704-gQNWPLF57KILOVmngYVOpdVqAAFHhV4u-0-11660f419036b6d568c38c44cc7928cf)
或
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_210.jpg?sign=1739527704-n9ghkb5itq830UiuN0Ay2TgkweKDRo4E-0-ec859592ffab8f2f29faa03d89ea4dd5)
的函数项级数称为幂级数。其中,常数叫作幂级数的系数。
下面给出幂级数的收敛半径的计算方法。
定理3-1 对于幂级数,设
(或
),
,则:
(1)若为常数且
,则
;
(2)若,则
;
(3)若,则
。
例3-5 求幂级数的收敛域。
解:根据上面的定理,利用Python包SymPy中的函数limit计算收敛半径,并用函数Sum判定在两端点是否收敛。具体程序如下:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_224.jpg?sign=1739527704-tSBkSupgEu0tO3lm6lMK4ZWe6i9N8pL8-0-d83deeda415aa8b02a66ccb473695e97)
计算结果如下:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_225.jpg?sign=1739527704-YQq8LTd4VC9WHvYwUnquFkj1on6ttWjM-0-838aebf374f55bf09e8497e010422c2b)
所以幂级数的收敛域为
。
7.泰勒级数
泰勒级数是特殊的幂级数。如果函数在
处具有
阶导数,那么可利用关于
的
次多项式来构建幂级数的部分和,从而逼近原函数。
若函数在包含
的某个闭区间
上具有
阶导数,且在开区间
上具有
阶导数,则对闭区间
上的任意一点x,得
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_240.jpg?sign=1739527704-P3oq7DYifNiiRIyuV9WAgJY99vqMAA2c-0-fdd2d3aa8c6b54d65ec6f974d8f3e04e)
其中,表示
的
阶导数,等号后的多项式称为函数
在
处的泰勒展开式,
是泰勒级数的余项,表示为
的高阶无穷小。
例3-6 求函数在
处的3阶泰勒级数。
解:可利用Python包SymPy中的函数series进行泰勒级数展开。具体程序如下:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_250.jpg?sign=1739527704-ZEepz2S64ERVukGPEn9kxuKARiUTIIVT-0-406f15ba101c494567d590f4a817f17a)
输出结果如下:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_251.jpg?sign=1739527704-iGYFHQCOmQhAHuUNdwPZJbOBbKooJeJv-0-e1bbf475d8c7e1162c0cbabdc21a982e)
3.2.2 偏导数
对于多元函数求导,可仿照一元函数导数的定义方式进行定义。但是,多元函数具有多个自变量,且各自独立变化,定义时,可先让其他自变量保持不变,仅让其中一个自变量变化,研究相应的因变量关于这个自变量的变化率问题,这样就可以归结为一元函数的求导问题。若进一步研究多个自变量同时变化时的求导问题,则产生了偏导数及全微分的概念。
设函数在
内有定义,若固定
,则函数变为关于x的一元函数
,此时给自变量x在
点一个改变量
,则函数相应地有改变量
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_258.jpg?sign=1739527704-sgiwt2z1BE6ZllfYPEEhyzjXZbszHO6S-0-c0a903519a549b01c308d9e35e25a9e4)
称其为函数在点
处关于x的偏改变量。类似地,函数
在点
处关于y的偏改变量为
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_263.jpg?sign=1739527704-TF9HpqBecC2XneNw6hlONeap7i7364x1-0-c55ba604e54803ec6fc37bac81673d4f)
1.偏导数
设二元函数在
内有定义,若极限
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_266.jpg?sign=1739527704-t7ryFg9mk3BoCpu0LnNMbcKYWT37KIym-0-98e4768bc1c7adae9db791c27b11a2be)
存在,则称函数在
点关于x可偏导,并且称该极限值为函数
在
处对x的偏导数,通常采用下列记号来表示:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_271.jpg?sign=1739527704-MfC0aex4t8Oflxrj4FqUhbOaMdcaXTAq-0-09b7d25b3ddaf555006a30d8d514d1fb)
如可以写。
同样地,可以定义函数在
处对y的偏导数,通常采用下列记号来表示:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_275.jpg?sign=1739527704-TKj8dl1I95kSbOhTEhC6v04mYjtiylhM-0-0ca67cf5a40165170ab26665e8731a8b)
若函数在某区域
内的每点处都有偏导数,则偏导数
、
也是二元函数,叫作函数
的偏导函数。通常采用下列记号来表示:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_281.jpg?sign=1739527704-oK9ewg3kGLd7WLLpTbMeb2DOOmNNY05o-0-b2d1c94e796d4bafc1c0319db22b9843)
及
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_282.jpg?sign=1739527704-5a8H7hGPgK2DKhsLKnAPMTzF7tcrFyhN-0-6291e6f6bc90e178142c8727f1d7de61)
偏导数的计算方法同一元函数导数的计算方法。
2.全微分
如果函数在
处的全改变量
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_285.jpg?sign=1739527704-twPIZDDCpgxA5tST1FKQfLUcBkWPmO7f-0-6db10ed29c5a78943dd6a07caa67d7a3)
可表示为,其中,
是只与
有关而与
无关的量,
,则称函数
在点
处可微分,而
称为函数
在点
处的全微分,记作
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_296.jpg?sign=1739527704-PCF7t1H5xJIMwlwHkqLk7tveadyUE2tP-0-90a8b6424cf195eb192e7dee1da6873e)
其中,偏导数,
,如记
,则全微分的形式为
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_300.jpg?sign=1739527704-VPFu6wrR3b7njw7oouIElfrrO3wX8ioY-0-dc87b77e298f49a87485be2201864714)
(3-4)
若函数在区域
内各点处都可微,则称函数
在
内可微。函数
在区域
内的全微分记为
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_307.jpg?sign=1739527704-Lqohbb8r9HZDdVqXCmwkcTIdX4MorLdI-0-2536eaa42bf4418e13e0c3d4f943f03f)
例3-7 求函数的偏导数。
解:可利用Python包SymPy中的函数diff求偏导数。具体程序如下:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_309.jpg?sign=1739527704-1v5pgIMmGGMQsIVfpJa0bxqKVbsh92v2-0-c9284a0e85989004eb9ee7d038586027)
输出结果如下:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_310.jpg?sign=1739527704-DdTRPDFkS5p9Y7kPLFA4XyVRQDeuV68L-0-44c8e817a01603f1ccca97a3f76adab4)
3.2.3 梯度和方向导数
1.梯度
设函数在平面区域
内具有一阶连续偏导数,则对于每点
,都可确定一个向量:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_314.jpg?sign=1739527704-L6ExeZTjcVvHZNIY14LEWrMUn7yFZHD4-0-32a8ac3eb0c5cbbcb7ae39c58bfea423)
该向量称为函数在点
处的梯度,记作
,即
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_318.jpg?sign=1739527704-YsVDuaMUcRng4BGeYOOnAbLsQlmzybvF-0-4f0661f740721e50612247154e61dff5)
梯度的几何意义:梯度为等高线上点处的法向量,且从数值较低的等高线指向数值较高的等高线。
2.方向导数
设函数在点
的某一邻域
内有定义,自点
引射线
,设x轴正向到射线
的转角为
(逆时针方向:
;顺时针方向:
),并设
为
上的另一点且
,考虑函数的增量
与
、
两点间的距离
的比值。当
沿着
趋于
时,若这个比的极限存在,则称该极限为函数
在点
处沿方向
的方向导数,记作
,即
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_344.jpg?sign=1739527704-Amivn3np2E2RcJGoMXVHOCx7HmDFJbVv-0-487af08b2a92a4fc284d0bb7c8f2b0b5)
若函数在点
处是可微分的,则函数在该点沿任一方向的方向导数都存在,且有
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_347.jpg?sign=1739527704-icj6LbvOr2ud4tVRm6HdXoVvv6iEvClb-0-14d26dbc25b83c1387cd5d08bfc35ca1)
(3-5)
可以看出,函数在某点的梯度是这样一个向量:它的方向与函数取得最大方向导数的方向一致,而它的模为方向导数的最大值。
例3-8 计算函数的梯度。
解:首先使用Python中的函数CoordSys3D构造笛卡儿坐标系,然后利用函数gradient求梯度。具体程序如下:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_349.jpg?sign=1739527704-V1G1bdCeTXhVvkH8UcTZ5kbC0luU98L4-0-8aec45f903fa049ba682852aa038b61b)
输出结果如下:
![img](https://epubservercos.yuewen.com/10291D/20266983808220206/epubprivate/OEBPS/Images/txt003_350.jpg?sign=1739527704-fKkRdALRZj34RWYZ87myPMFKmTOYELuc-0-89b6aa92de9e8a972369608ea75f6be8)