算法工程师的数学基础|微积分之微分相关介绍

【算法工程师的数学基础】系列将会从线性代数、微积分、数值优化、概率论、信息论五个方面进行介绍,感兴趣的欢迎关注【搜索与推荐Wiki】公众号,获得最新文章。

《算法工程师的数学基础》已更新:

  • 1、算法工程师的数学基础|线性代数中的向量和向量空间
  • 2、算法工程师的数学基础|线性代数中的矩阵
  • 3、算法工程师的数学基础|微积分之导数相关介绍
  • 4、算法工程师的数学基础|微积分之微分相关介绍

接下来将会有两篇文章分别介绍下微积分中的微分和积分,内容来自网上公开资料、相关书籍和个人见解。

微积分 是对无穷小量的研究。无穷小量,简单说就是大小无限趋向于 0 的量, 很多整体分析太过复杂的物理量可以用无穷小量分析,其原因是无穷小量可以被线性化。

如果我们用 ϵ \epsilon ϵ 来表示无穷小量,那么微积分可以被分为两大类,微分和积分。

  • 微分主要研究两个无穷小量的比值,形如 ϵ 1 ϵ 2 \frac {\epsilon_1}{\epsilon_2} ϵ2ϵ1
  • 积分学主要研究无限多的无穷小量之和,也就是 ϵ 1 + ϵ 2 + ϵ 3 + . . . = lim ⁡ n → ∞ ∑ k = 1 n ϵ k \epsilon_1 + \epsilon_2 + \epsilon_3 + ... = \underset{ n \rightarrow \infty }{ \lim } \sum_{k=1}^{n} \epsilon_k ϵ1+ϵ2+ϵ3+...=nlimk=1nϵk

本篇主要介绍微分!内容注重理解微分的概念和与导数的区别,不像导数篇中那样用公式贯穿全文!


导数与线性化

微积分之所以在数学、物理学和工程学中有如此重要的地位,是因为在这些学科中有很多情况不好直接分析,而通过微积分可以把这些情况线性化。然而,在线性化的同时,研究对象就会变成无穷小量。

eg 1:一个正方形金属薄片受热后面积的改变量
算法工程师的数学基础|微积分之微分相关介绍_第1张图片

设边长由 x 0 x_0 x0 变成 x 0 + Δ x x_0 + \Delta x x0+Δx,则正方形的面积由 x 0 2 x_0 ^2 x02 变成 ( x 0 + Δ x ) 2 (x_0 + \Delta x)^2 (x0+Δx)2,那么面积之差为:
Δ A = ( x 0 + Δ x ) 2 − x 0 2 = 2 x 0 Δ x + ( Δ x ) 2 \Delta A = (x_0 + \Delta x)^2 - x_0 ^2 \\ = 2 x_0 \Delta x + (\Delta x)^2 ΔA=(x0+Δx)2x02=2x0Δx+(Δx)2

上式中

  • 加号左侧为 Δ x \Delta x Δx的线性部分,且为 Δ A \Delta A ΔA的主要组成部分
  • 加号右侧为 Δ x \Delta x Δx的高阶无穷小,当 Δ x \Delta x Δx很小时,可以忽略

从上面的例子中,可以看出函数线性化的那么一丁点意思了,接着看另外一个例子。

eg 2:假设一辆正在行驶的汽车,其走过的路程与时间满足关系 x ( t ) = t 2 x(t) = t ^2 x(t)=t2,那么在 t = 1 t=1 t=1时刻,如何知道他的速度?

由于平均速度 v = Δ x Δ t = x 1 − x 0 t 1 − t 0 v = \frac {\Delta x}{ \Delta t} = \frac{x_1 - x_0}{ t_1 - t_0} v=ΔtΔx=t1t0x1x0,带入 t 0 = 1 t_0=1 t0=1得到从时刻 1 → t 1\rightarrow t 1t的平均速度为:
x ( t ) − x ( 1 ) t − 1 \frac{x(t) - x(1)}{ t-1 } t1x(t)x(1)

如果让 t = 1.1 t=1.1 t=1.1,那么这个平均速度就很接近 t = 1 t=1 t=1这一时刻的瞬间速度了。那么有理由相信在 t t t无限接近于1时,这个平均速度就很接近 t t t时刻的瞬间速度了。

从平均速度的定义来看,从 1 → t 1\rightarrow t 1t的平均速度等价于连接 ( 1 , 1 ) (1,1) (1,1) ( t , t 2 ) (t,t^2) (t,t2)两点直线的斜率,所以当 t t t越来越接近于1的时候,这条直线的斜率就变成了在 ( 1 , 1 ) (1,1) (1,1)切线的斜率。

而从导数的概念可以知道,函数在某点的斜率等于改点的导数,结合 eg 2可知
f ′ ( t ) = 2 t = Δ y Δ x f'(t) = 2t = \frac{\Delta y}{ \Delta x} f(t)=2t=ΔxΔy
⇒ Δ y = 2 t Δ x \Rightarrow \Delta y = 2 t \Delta x Δy=2tΔx

和 eg 1中,当 Δ x \Delta x Δx趋向于无穷小时的表达式是一样的,我们可以认为 Δ y \Delta y Δy是关于 Δ x \Delta x Δx的线性化函数。

微分的定义

设函数 y = f ( x ) y=f(x) y=f(x)在某区间内有定义,且 x 0 x_0 x0 x 0 + Δ x x_0 + \Delta x x0+Δx在这区间内,如果下面的公式成立(其中 A A A是与 Δ \Delta Δ无关的常数),则称 y = f ( x ) y = f(x) y=f(x)在点 x 0 x_0 x0处可微,并且称 A Δ x A \Delta x AΔx为函数 y = f ( x ) y = f(x) y=f(x) 在点 x 0 x_0 x0相应于自变量增量 Δ x \Delta x Δx的微分,计作: d y ∣ x = x 0 dy|_{x=x_0} dyx=x0 d f ( x 0 ) df(x_0) df(x0),即: d y ∣ x = x 0 = A Δ x dy|_{x=x_0} = A \Delta x dyx=x0=AΔx

Δ y = f ( x 0 + Δ x ) − f ( x 0 ) = A Δ x + o ( Δ x 0 ) \Delta y = f(x_0 + \Delta x) - f(x_0) = A\Delta x + o(\Delta x_0) Δy=f(x0+Δx)f(x0)=AΔx+o(Δx0)

微分 d y dy dy 叫做函数增量 Δ y \Delta y Δy的线性主部。这也是微分的实质:微分 本质是一个微小的线性变化量,用一个线性函数作为原函数变化的逼近。

由上面的定义可知:

  • d y dy dy是自变量的改变量 Δ x \Delta x Δx的线性函数
  • Δ y − d y = o ( Δ x ) \Delta y - dy = o(\Delta x) Δydy=o(Δx)是比 Δ x \Delta x Δx的高阶无穷小
  • A ≠ 0 A \neq 0 A=0时, d y dy dy Δ y \Delta y Δy是等价无穷小,因为: Δ y d y = 1 + o ( Δ x ) d y → 1 ( Δ x → 0 ) \frac {\Delta y}{ dy} = 1 + \frac{o(\Delta x)}{dy} \rightarrow 1(\Delta x \rightarrow 0) dyΔy=1+dyo(Δx)1(Δx0)
  • A A A是与 Δ x \Delta x Δx无关的常数,但与 f ( x ) f(x) f(x) x 0 x_0 x0有关
  • Δ x \Delta x Δx很小时, Δ y ≈ d y \Delta y \approx dy Δydy(线性主部)

从微分的定义中也可以看出微分和导数的最大区别为:导数是指函数在某一点变化的快慢,是一种变化率;微分是指函数在某一点处的变化量,是一种变化的量。

基本初等函数的微分公式和运算法则

微分公式

c o t x cotx cotx :余切函数, c o t x = 1 t a n x cotx = \frac {1}{ tan x} cotx=tanx1

s e c x secx secx :正割函数, s e c x = 1 c o s x secx = \frac {1}{ cos x} secx=cosx1

c s c x cscx cscx :余割函数, c s c x = 1 s i n x cscx = \frac {1}{ sin x} cscx=sinx1

d ( C ) = 0 d(C)=0 d(C)=0
d ( x μ ) = μ x μ − 1 d x d(x^\mu) = \mu x^{\mu-1} dx d(xμ)=μxμ1dx
d ( s i n   x ) = c o s   x   d x d ( c o s   x ) = − s i n   x   d x d ( t a n   x ) = s e c 2   x   d x d ( c o t   x ) = − c s c   x d x d ( s e c   x ) = s e c   x   t a n   x d x d ( c s c   x ) = − c s c   x c o t   x   d x d(sin\,x) = cos\,x\,dx \\ d(cos\,x) = -sin\,x\,dx \\ d(tan\,x) = sec^2\,x\,dx \\ d(cot\,x) = -csc \, x dx \\ d(sec\,x) = sec\,x \,tan\,x dx \\ d(csc\,x) = - csc\,x cot\,x\,d x d(sinx)=cosxdxd(cosx)=sinxdxd(tanx)=sec2xdxd(cotx)=cscxdxd(secx)=secxtanxdxd(cscx)=cscxcotxdx
d ( a x ) = a x l n a d x d(a^x) = a^xln a dx d(ax)=axlnadx
d ( e x ) = e x d x d(e^x) = e^x dx d(ex)=exdx
d ( l o g a x ) = 1 l n a d x d(log_a x) = \frac{1}{ ln a} dx d(logax)=lna1dx
d ( l n x ) = 1 x d x d(lnx)=\frac{1}{x} dx d(lnx)=x1dx
d ( a r c s i n x ) = 1 1 − x 2 d x d(arc sinx) = \frac{1}{\sqrt{1-x^2}}dx d(arcsinx)=1x2 1dx
d ( a r c c o s x ) = − 1 1 − x 2 d x d(arc cosx) = - \frac{1}{\sqrt{1-x^2}}dx d(arccosx)=1x2 1dx
d ( a r c t a n x ) = 1 1 + x 2 d x d(arc tanx) = \frac{1}{1+x^2}dx d(arctanx)=1+x21dx
d ( a r c c o t x ) = − 1 1 + x 2 d x d(arc cotx) = - \frac{1}{1+x^2}dx d(arccotx)=1+x21dx

运算法则

d ( u ± v ) = d ( u ) ± d ( v ) d(u \pm v) = d(u)\pm d(v) d(u±v)=d(u)±d(v)
d ( C u ) = C d ( u ) d(Cu) = Cd(u) d(Cu)=Cd(u)
d ( u v ) = v d ( u ) + u d ( v ) d(uv) = vd(u) + ud(v) d(uv)=vd(u)+ud(v)
d ( u v ) = v d ( u ) − u d ( v ) v 2 d(\frac{u}{v}) = \frac{vd(u) - ud(v)}{v^2} d(vu)=v2vd(u)ud(v)

微分的几何意义

算法工程师的数学基础|微积分之微分相关介绍_第2张图片

Δ y \Delta y Δy是曲线的纵坐标的增量时, d y dy dy 是切线纵坐标对应的增量,当 Δ x \Delta x Δx很小时,在点 M M M附近,切线段 M P MP MP可近似代替曲线段 M N MN MN

在局部范围内用线性函数近似代替非线性函数,在几何上就是局部用切线段代替曲线段,这在数学上称之为非线性函数的局部线性化,这就是微分学的基本思想之一。

微分在近似计算中的应用

微分近似计算的理论基础

Δ x \Delta x Δx很小时

Δ y ≈ d y = f ′ ( x 0 ) Δ x \Delta y \approx dy = f'(x_0) \Delta x Δydy=f(x0)Δx
上面的公式也可以写为:
Δ y = f ( x 0 + Δ x ) − f ( x 0 ) ≈ f ′ ( x 0 ) Δ x \Delta y = f(x_0 + \Delta x) -f(x_0) \approx f'(x_0) \Delta x Δy=f(x0+Δx)f(x0)f(x0)Δx

f ( x 0 + Δ x ) = f ( x 0 ) + f ′ ( x 0 ) Δ x f(x_0 + \Delta x) = f(x_0) + f'(x_0) \Delta x f(x0+Δx)=f(x0)+f(x0)Δx
将上式中的 x 0 + Δ x x_0 + \Delta x x0+Δx x x x代替,则可以改写为:
f ( x ) = f ( x 0 ) + f ′ ( x 0 ) ( x − x 0 ) f(x) = f(x_0) + f'(x_0) (x-x_0) f(x)=f(x0)+f(x0)(xx0)

常见的近似计算的基本公式

1 + x n ≈ + 1 n x \sqrt[n]{ 1+x} \approx + \frac{1}{n} x n1+x +n1x
s i n x ≈ x sin x \approx x sinxx

t a n x ≈ x tan x \approx x tanxx

e x ≈ 1 + x e^x \approx 1+x ex1+x

l n ( 1 + x ) ≈ x ln(1+x) \approx x ln(1+x)x

微分中值定理和导数的应用

费马引理

设 函数f(x)在点 x 0 x_0 x0的某邻域 U ( x 0 ) U(x_0) U(x0)内有定义,并且再 x 0 x_0 x0处可导,如果对任意的 x ∈ U ( x 0 ) x\in U(x_0) xU(x0)有: f ( x ) ⩽ f ( x 0 ) f(x) \leqslant f(x_0) f(x)f(x0) f ( x ) ⩾ f ( x 0 ) f(x) \geqslant f(x_0) f(x)f(x0),那么 f ′ ( x 0 ) = 0 f'(x_0) = 0 f(x0)=0

罗尔定理

如果函数 f ( x ) f(x) f(x)满足

  • 在闭区间 [ a , b ] [a,b] [a,b]上连续
  • 在开区间 ( a , b ) (a,b) (a,b)内可导
  • 在区间端点处的函数值相等,即 f ( a ) = f ( b ) f(a)=f(b) f(a)=f(b)

那么 ( a , b ) (a,b) (a,b)上至少有一点 ε ( a < ε < b ) \varepsilon(a<\varepsilon < b) ε(a<ε<b)使得 f ′ ( ε ) = 0 f'(\varepsilon)=0 f(ε)=0

拉格朗日中值定理

如果函数 f ( x ) f(x) f(x)满足:

  • 在闭区间 [ a , b ] [a,b] [a,b]上连续
  • 在开区间 ( a , b ) (a,b) (a,b)内可导
    那么在 ( a , b ) (a,b) (a,b)内至少有一点 ε ( a < ε < b ) \varepsilon(a<\varepsilon < b) ε(a<ε<b)使得 f ( b ) − f ( a ) = f ′ ( ε ) ( b − a ) f(b)-f(a)=f'(\varepsilon)(b-a) f(b)f(a)=f(ε)(ba)成立。

柯西中值定理

如果函数 f ( x ) f(x) f(x) F ( x ) F(x) F(x)满足:

  • 在闭区间 [ a , b ] [a,b] [a,b]上连续
  • 在开区间 ( a , b ) (a,b) (a,b)内可导
  • 对任一 x ∈ ( a , b ) , F ′ ( x ) ≠ 0 x \in (a,b), F'(x) \neq 0 x(a,b),F(x)=0

那么在 ( a , b ) (a,b) (a,b)内至少有一点 ε \varepsilon ε,使下面等式成立。
f ( b ) − f ( a ) F ( b ) − F ( a ) = f ′ ( ε ) F ′ ( ε ) \frac{f(b)-f(a)}{F(b)-F(a)} = \frac{f'(\varepsilon)}{F'(\varepsilon)} F(b)F(a)f(b)f(a)=F(ε)f(ε)

洛必达法则

设:

  • x − > a x -> a x>a时,函数 f ( x ) f(x) f(x) F ( x ) F(x) F(x)都趋向于零
  • 在点 a a a的某去心邻域内, f ′ ( x ) f'(x) f(x) F ′ ( x ) F'(x) F(x)都存在且 F ′ ( x ) ≠ 0 F'(x) \neq 0 F(x)=0
  • lim ⁡ x → a f ( x ) F ( x ) \lim_{x \rightarrow a} \frac{f(x)}{F(x)} limxaF(x)f(x)存在(或为无穷大)
    那么:
    lim ⁡ x → a f ( x ) F ( x ) = lim ⁡ x → a f ′ ( x ) F ′ ( x ) \lim_{x \rightarrow a} \frac{f(x)}{F(x)}=\lim_{x \rightarrow a} \frac{f'(x)}{F'(x)} xalimF(x)f(x)=xalimF(x)f(x)

这种在一定条件下通过分子分母分别求导再求导极限来确定未定式的值的方法称为洛必达法则。

泰勒中值定理

如果函数 f ( x ) f(x) f(x)在含有 x 0 x_0 x0的某个开区间 ( a , b ) (a,b) (a,b)内具有直到 ( n + 1 ) (n+1) (n+1)阶的导数,则对任一 x ∈ ( a , b ) x \in (a,b) x(a,b),有:
f ( x ) = f ( x 0 ) + f ′ ( x 0 ) ( x − x 0 ) + f ′ ′ ( x 0 ) 2 ! ( x − x 0 ) 2 + . . . + f n ( x 0 ) n ! ( x − x 0 ) n + R n ( x ) f(x) = f(x_0) + f'(x_0)(x-x_0) + \frac{f''(x_0)}{2!} (x-x_0)^2 + ... + \frac{f^n(x_0)}{n!} (x-x_0)^n + R_n(x) f(x)=f(x0)+f(x0)(xx0)+2!f(x0)(xx0)2+...+n!fn(x0)(xx0)n+Rn(x)
其中
R n ( x ) = f n + 1 ( ε ) ( n + 1 ) ! ( x − x 0 ) n + 1 R_n(x) = \frac{f^{n+1} ( \varepsilon )}{ (n +1)!} (x-x_0) ^{n+1} Rn(x)=(n+1)!fn+1(ε)(xx0)n+1
这里 ε \varepsilon ε x 0 x_0 x0 x x x之间的某个值。

上述公式中 f ( x ) f(x) f(x)表达式为 f ( x ) f(x) f(x) ( x − x 0 ) (x-x_0) (xx0)的幂展开的带有拉格朗日型余项的 n n n阶泰勒公式, R n ( x ) R_n(x) Rn(x)的表达式称为拉格朗日型余项。


OK,关于微积分中的微分部分已经介绍完毕!期待下篇的积分吧!


参考资料

  • https://blog.csdn.net/weixin_40163242/article/details/89004822
  • https://www.zhihu.com/question/336322284
  • https://www.zhihu.com/question/264955988?sort=created

扫一扫 关注微信公众号!号主 专注于搜索和推荐系统,尝试使用算法去更好的服务于用户,包括但不局限于机器学习,深度学习,强化学习,自然语言理解,知识图谱,还不定时分享技术,资料,思考等文章!

你可能感兴趣的:(算法与数学)