【Datawhale组队学习】机器学习数学基础 - 一元函数微分学【Task 03】
文章目录
- 导数的概念
- 几何定义
- 高阶函数
- 微分的概念
- 微分与导数
- 几何定义
- 导数与微分的计算
- 四则运算
- 分段函数
- 复合函数
- 反函数
- 参数方程
- 求导法
- 隐函数求导
- 对数求导
- 幂指数求导
- 变限积分求导
- 高阶导数
- 泰勒公式
导数的概念
设 y = f ( x ) y = f(x) y=f(x)在变量 x = x 0 x = x_0 x=x0处存在一个增量 Δ x \Delta x Δx(可正可负),则可以得到函数的增量 Δ y = f ( x 0 + Δ x ) − f ( x 0 ) \Delta y = f(x_0 + \Delta x) - f(x_0) Δy=f(x0+Δx)−f(x0)。
若函数增量 Δ y \Delta y Δy,与自变量增量 Δ x \Delta x Δx的比值在 Δ x → 0 \Delta x \rightarrow 0 Δx→0时极限存在,即 lim Δ x → 0 Δ y Δ x \lim_{\Delta x \rightarrow 0}\frac{\Delta y}{\Delta x} limΔx→0ΔxΔy存在,则说明函数 y = f ( x ) y = f(x) y=f(x)在 x = x 0 x = x_0 x=x0处可导,称极限值为 x 0 x_0 x0处的导数,记为:
f ′ ( x 0 ) = lim Δ x → 0 Δ y Δ x = lim Δ x → 0 f ( x 0 + Δ x ) − f ( x 0 ) Δ x f'(x_0) = \lim_{\Delta x \rightarrow 0}\frac{\Delta y}{\Delta x} = \lim_{\Delta x \rightarrow 0}\frac{f(x_0 + \Delta x) - f(x_0)}{\Delta x} f′(x0)=Δx→0limΔxΔy=Δx→0limΔxf(x0+Δx)−f(x0)
整理笔记所用,定义并不完整。
理解:某点的导数,本质上可以看做函数在该点处增量的极限值,
由此可以看出,若需要证明某点 x 0 x_0 x0导数存在,那么根据导数本质是极限的原理,仅需证明在 x = x 0 x = x_0 x=x0处导数左右极限均相等。
以上定义中,令 x = x 0 + Δ x x = x_0 + \Delta x x=x0+Δx,那么导数的定义还可以表示为:
f ′ ( x 0 ) = lim x → x 0 f ( x ) − f ( x 0 ) x − x 0 f'(x_0) = \lim_{x \rightarrow x_0}\frac{f(x) - f(x_0)}{x - x_0} f′(x0)=x→x0limx−x0f(x)−f(x0)
几何定义
y在点 x 0 x_0 x0处的导数值 f ′ ( x 0 ) f'(x_0) f′(x0)导数值,就是曲线 y = f ( x ) y = f(x) y=f(x)在点 ( x 0 , y 0 ) (x_0,y_0) (x0,y0)处切线的斜率 k k k。由此可以得出切线和法线公式:
切 线 : y − y 0 = f ′ ( x 0 ) ( x − x 0 ) 法 线 : y − y 0 = − 1 f ′ ( x 0 ) ( x − x 0 ) , f ( x 0 ) ≠ 0 切线:y - y_0 = f'(x_0)(x - x_0) \atop 法线:y - y_0 = -\frac{1}{f'(x_0)}(x - x_0) \quad ,f(x_0) \neq 0 法线:y−y0=−f′(x0)1(x−x0),f(x0)=0切线:y−y0=f′(x0)(x−x0)
高阶函数
f ( n ) ( x 0 ) = lim Δ x → 0 f ( n − 1 ) ( x 0 + Δ x ) − f ( n − 1 ) ( x 0 ) Δ x f^{(n)}(x_0) = \lim_{\Delta x \rightarrow 0} \frac{f^{(n-1)}(x_0 + \Delta x) - f^{(n-1)}(x_0)}{\Delta x} f(n)(x0)=Δx→0limΔxf(n−1)(x0+Δx)−f(n−1)(x0)
高阶导数的概念其实就是在前一阶导数的基础上再次求导。
微分的概念
导数的概念是可以由路程、时间和速度的关系引入,而微分可以通过正方形边长与面积的关系引入,可以参考《张宇数学基础30讲》56页的引例
。
设函数 y = f ( x ) y = f(x) y=f(x)在点 x 0 x_0 x0处,对于自变量增量 Δ x \Delta x Δx,有函数增量 Δ y = f ( x 0 + Δ x ) − f ( x 0 ) \Delta y = f(x_0 + \Delta x) - f(x_0) Δy=f(x0+Δx)−f(x0),若存在与 Δ x \Delta x Δx无关的常数A,使得
Δ y = A Δ x + o ( Δ x ) \Delta y = A\Delta x + o(\Delta x) Δy=AΔx+o(Δx)
那么称 f ( x ) f(x) f(x)在点 x 0 x_0 x0处可微,并称 A Δ x A \Delta x AΔx为f(x)在点 x 0 x_0 x0处的微分,记为 d y ∣ x = x 0 = A Δ x dy|_{x = x_0} = A \Delta x dy∣x=x0=AΔx,又 Δ x = d x \Delta x = dx Δx=dx,故 d y ∣ x = x 0 = A d x dy|_{x = x_0} = A dx dy∣x=x0=Adx。
A A A实际上是 f ( x ) f(x) f(x)在 x = x 0 x = x_0 x=x0处的导数,由此可以转化为如下定义:
d y = f ′ ( x ) d x ⇒ d y d x = f ′ ( x ) dy = f'(x)dx \quad \Rightarrow \quad \frac{dy}{dx} = f'(x) dy=f′(x)dx⇒dxdy=f′(x)
针对右式的除法,可以有两种解释
- 从导数的观点看, d y d x \frac{dy}{dx} dxdy是一个表示导数的符号,
- 从微分的观点看, d y d x \frac{dy}{dx} dxdy确实是一个除法,也叫微商
微分与导数
微分实际上是使用一个线性增量 A Δ X A \Delta X AΔX来代替复杂的增量 Δ y \Delta y Δy,其误差为 Δ y − A Δ x \Delta y - A \Delta x Δy−AΔx,即 o ( Δ x ) o(\Delta x) o(Δx),可以忽略不计。
所以在一元函数中,导数与微分的概念类似,f(x)在 x 0 x_0 x0处可微与可导互为充要条件,那么判断可微的题目,即可转换为判断可导进行证明。
几何定义
与导数表示斜率不同。
f(x)在 x = x 0 x = x_0 x=x0处的可微,则在点 ( x 0 , y 0 ) (x_0,y_0) (x0,y0)附近可以用切线段近似代替曲线段。
导数与微分的计算
下面主要是关于计算的一些性质和技巧
四则运算
- 和差的导数: [ u ( x ) ± v ( x ) ] ′ = u ′ ( x ) ± v ′ ( x ) [u(x) \pm v(x)]' = u'(x) \pm v'(x) [u(x)±v(x)]′=u′(x)±v′(x)
- 积的导数: [ u ( x ) v ( x ) ] ′ = u ′ ( x ) v ( x ) + u ( x ) v ′ ( x ) [u(x)v(x)]' = u'(x)v(x) + u(x)v'(x) [u(x)v(x)]′=u′(x)v(x)+u(x)v′(x)
- 商的导数: [ u ( x ) v ( x ) ] ′ = u ′ ( x ) v ( x ) − u ( x ) v ′ ( x ) [ v ( x ) ] 2 [\frac{u(x)}{v(x)}]' = \frac{u'(x)v(x) - u(x)v'(x)}{[v(x)]^2} [v(x)u(x)]′=[v(x)]2u′(x)v(x)−u(x)v′(x), v ( x ) ≠ 0 v(x)\neq 0 v(x)=0
分段函数
分段函数求导的时候,需要注意的是:
- 连续部分正常求导
- 但是在间断点的时候,需要考虑间断点的导数是否存在,则需要根据导数的定义,求出左右极限是否相等;若相等,则导数存在,否则该点导数不存在。
复合函数
复合函数求导指的是,函数内的变量为另一个函数,形如:
{ f [ g ( x ) ] } ′ = f ′ [ g ( x ) ] g ′ ( x ) \{f[g(x)]\}' = f'[g(x)]g'(x) {f[g(x)]}′=f′[g(x)]g′(x)
复合函数求导其实本质上并不困难,只需要记住原本的求导公式 d y = f ′ ( u ) d u dy = f'(u) du dy=f′(u)du,其中的 u u u无论是自变量还是中间变量(其他函数),求导法则都成立。
反函数
若 y = f ( x ) y = f(x) y=f(x)可导,且 f ( x ) ≠ 0 f(x) \neq 0 f(x)=0,则存在反函数 x = ϕ ( y ) x = \phi(y) x=ϕ(y),且 d x d y = 1 d y d x = 1 f ′ ( x ) \frac{dx}{dy} = \frac{1}{\frac{dy}{dx}} = \frac{1}{f'(x)} dydx=dxdy1=f′(x)1。
即, ϕ ′ ( y ) = 1 f ′ ( x ) \phi'(y) = \frac{1}{f'(x)} ϕ′(y)=f′(x)1。
对于反函数 y = arcsin x y = \arcsin{x} y=arcsinx,有 x = sin y x = \sin{y} x=siny,那么
( arcsin y ) ′ = 1 ( sin y ) ′ = 1 cos y = 1 1 − sin 2 y = 1 1 − x 2 (\arcsin{y})' = \frac{1}{(\sin{y})'} = \frac{1}{\cos{y}} = \frac{1}{\sqrt{1-\sin^2{y}}} = \frac{1}{\sqrt{1-x^2}} (arcsiny)′=(siny)′1=cosy1=1−sin2y 1=1−x2 1
参数方程
至于参数方程的公式也比较好理解,针对参数方程 { x = ϕ ( t ) y = ψ ( t ) \begin{cases} x = \phi(t) \\ y = \psi(t) \end{cases} {x=ϕ(t)y=ψ(t)。
d y d x = d y d t d y d t = ψ ′ ( t ) ϕ ( t ) \frac{dy}{dx} = \frac{\frac{dy}{dt}}{\frac{dy}{dt}} = \frac{\psi'(t)}{\phi(t)} dxdy=dtdydtdy=ϕ(t)ψ′(t)
求导法
隐函数求导
隐函数仅需要进行等号两边求导就行,不赘述。
对数求导
对于一些很多相乘、相除的式子,可以利用对数的性质,将困难的乘除法转化为简单的加减法,再进行求导即可。
幂指数求导
对于幂指数 u ( x ) v ( x ) u(x)^{v(x)} u(x)v(x),可以将其转化为指数函数:
u ( x ) v ( x ) = e v ( x ) ln u ( x ) u(x)^{v(x)} = e^{v(x)\ln{u(x)}} u(x)v(x)=ev(x)lnu(x)
然后再进行求导就较为简单了。
变限积分求导
设 F ( x ) = ∫ ϕ 1 ( x ) ϕ 2 ( x ) f ( t ) d t F(x) = \int^{\phi_2{(x)}}_{\phi_1{(x)}}{f(t)dt} F(x)=∫ϕ1(x)ϕ2(x)f(t)dt,对其求导为:
F ′ ( x ) = d d x [ ∫ ϕ 1 ( x ) ϕ 2 ( x ) f ( t ) d t ] = f [ ϕ 2 ( x ) ] ϕ 2 ′ ( x ) − f [ ϕ 1 ( x ) ] ϕ 1 ′ ( x ) F'(x) = \frac{d}{dx}[\int^{\phi_2{(x)}}_{\phi_1{(x)}}{f(t)dt}] = f[\phi_2{(x)}]\phi_2'{(x)} - f[\phi_1{(x)}]\phi_1'{(x)} F′(x)=dxd[∫ϕ1(x)ϕ2(x)f(t)dt]=f[ϕ2(x)]ϕ2′(x)−f[ϕ1(x)]ϕ1′(x)
也就是将积分上限代入x并乘以积分上限的导数,减去积分下线代入x乘以积分下限的导数。
高阶导数
高阶函数主要有三种方法:
归纳法:根据前几项总结出规律(比较常用)
莱布尼兹公式:(一般处理两个函数乘积的高阶导)
设 u = u ( x ) u = u(x) u=u(x), v = v ( x ) v = v(x) v=v(x)均n阶可导,则
[ u ± v ] ( n ) = u ( n ) ± v ( n ) , ( u v ) ( n ) = ∑ k = 0 n C n k u ( n − k ) v ( k ) [u \pm v]^{(n)} = u^{(n)} \pm v^{(n)}, \\ (uv)^{(n)} = \sum^n_{k = 0} {C^k_n u^{(n-k)} v^{(k)}} [u±v](n)=u(n)±v(n),(uv)(n)=k=0∑nCnku(n−k)v(k)泰勒公式:
任何一个无穷阶可导的函数 y = f ( x ) y = f(x) y=f(x)在收敛的条件下,都可以写成:
y = f ( x ) ∑ n = 0 ∞ f ( n ) ( x 0 ) n ! ( x − x 0 ) n y = f(x) \sum^{\infty}_{n = 0} {\frac{f^{(n)}(x_0)}{n!}(x-x_0)^n} y=f(x)n=0∑∞n!f(n)(x0)(x−x0)n
泰勒公式
对于泰勒公式是如何得到的,这里做一个简单的推导。
对于每一个复杂的函数,我们都可以将其利用多个多项式的和近似表示出来:
f ( x ) ≈ P n ( x ) = a 0 + a 1 ( x − x 0 ) + a 2 ( x − x 0 ) 2 + ⋯ + a n ( x − x 0 ) n f(x) \approx P_n(x) = a_0 + a_1(x - x_0) + a_2(x - x_0)^2 + \dots + a_n(x - x_0)^n f(x)≈Pn(x)=a0+a1(x−x0)+a2(x−x0)2+⋯+an(x−x0)n取 x = x 0 x = x_0 x=x0,那么我们可以得到:
{ a 0 = p n ( x 0 ) ≈ f ( x 0 ) a 1 = p n ′ ( x 0 ) ≈ f ′ ( x 0 ) a 2 = p n ′ ′ ( x 0 ) ≈ f ′ ′ ( x 0 ) ⋯ a n = p n ( n ) ( x 0 ) ≈ f ( n ) ( x 0 ) \begin{cases} a_0 = p_n(x_0) \approx f(x_0) \\ a_1 = p_n'(x_0) \approx f'(x_0) \\ a_2 = p_n''(x_0) \approx f''(x_0) \\ \dotsm \\ a_n = p_n^{(n)}(x_0) \approx f^{(n)}(x_0) \end{cases} ⎩⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎧a0=pn(x0)≈f(x0)a1=pn′(x0)≈f′(x0)a2=pn′′(x0)≈f′′(x0)⋯an=pn(n)(x0)≈f(n)(x0)
各个系数 a k a_k ak都是根据f(x)求相应次导数,使得a的前 k − 1 k-1 k−1项系数为0。将所有的a代入公式得到:
f ( x ) ≈ f ( x 0 ) + f ′ ( x 0 ) 1 ! ( x − x 0 ) + f ( 2 ) 2 ! ( x − x 0 ) 2 + ⋯ + f ( n ) ( x 0 ) n ! f(x) \approx f(x_0) + \frac{f'(x_0)}{1!} (x-x_0) + \frac{f^{(2)}}{2!}(x-x_0)^2 + \dots + \frac{f^{(n)}(x_0)}{n!} f(x)≈f(x0)+1!f′(x0)(x−x0)+2!f(2)(x−x0)2+⋯+n!f(n)(x0)以上基本就是泰勒公式的一个形式了,但是可以发现f(x)依旧是近似等于,而不是完全等于多项式,需要增加一个误差来使得等于号成立,也就是常说的余项 R n ( x ) R_n(x) Rn(x):
- 佩亚诺余项:直接使用一个高阶无穷小—— o ( ( x − x 0 ) n ) o((x-x_0)^n) o((x−x0)n)
- 拉格朗日余项:设 g ( x ) = ( x − x 0 ) n + 1 g(x) = (x - x_0)^{n+1} g(x)=(x−x0)n+1,利用柯西中值定理进行求解—— f ( n + 1 ) ( ξ ) n + 1 ( x − x 0 ) n + 1 \frac{f^{(n+1)}(\xi)}{n+1}(x-x_0)^{n+1} n+1f(n+1)(ξ)(x−x0)n+1
从而泰勒公式表示为: f ( x ) = P n ( x ) + R n ( x ) f(x) = P_n(x) + R_n(x) f(x)=Pn(x)+Rn(x)。
以上内容是DataWhale第28期组队学习,根据b站视频考研数学之高等数学(一二三都适用)学习整理所得,若有不足,望指出。
【Datawhale组队学习】机器学习数学基础 - 一元函数微分学【Task 03】相关推荐
- 【Datawhale组队学习】机器学习数学基础 - 一元函数微分学的几何应用【Task 04】
一元函数微分学的几何应用 文章目录 一元函数微分学的几何应用 极值与最值 单调性与极值点的判断 利用导数判断单调性 一阶可导点是极值点的必要条件 判断极值的充分条件 凹凸性与拐点 凹凸性的定义 拐点 ...
- Datawhale组队学习之集成学习——Task 6 Boosting
Datawhale组队学习之集成学习--Task 6 Boosting 一.Boosting方法的基本思路 二.Adaboost算法 1.Adaboost基本原理 2.使用sklearn对Adaboo ...
- Datawhale组队学习NLP之transformer Task 01
Datawhale组队学习NLP之transformer Task 01 Transformers在NLP中的兴起 一.自然语言处理(Natural Language Processing, NLP) ...
- Datawhale组队学习周报(第047周)
本周报总结了从 2021年01月03日至2022年01月09日,Datawhale组队学习的运行情况,我们一直秉承"与学习者一起成长的理念",希望这个活动能够让更多的学习者受益. ...
- Datawhale组队学习周报(第041周)
本周报总结了从 11月22日至11月28日,Datawhale组队学习的运行情况,我们一直秉承"与学习者一起成长的理念",希望这个活动能够让更多的学习者受益. 第 31 期组队学习 ...
- Datawhale组队学习周报(第040周)
本周报总结了从 11月15日至11月21日,Datawhale组队学习的运行情况,我们一直秉承"与学习者一起成长的理念",希望这个活动能够让更多的学习者受益. 第 31 期组队学习 ...
- Datawhale组队学习周报(第038周)
本周报总结了从 11月01日至11月07日,Datawhale组队学习的运行情况,我们一直秉承"与学习者一起成长的理念",希望这个活动能够让更多的学习者受益. 第 30 期组队学习 ...
- Datawhale组队学习周报(第035周)
希望开设的开源内容 目前Datawhale的开源内容分为两种:第一种是已经囊括在我们的学习路线图内的Datawhale精品课,第二种是暂未囊括在我们的学习路线图内的Datawhale打磨课.我们根据您 ...
- Datawhale组队学习周报(第032周)
希望开设的开源内容 目前Datawhale的开源内容分为两种:第一种是已经囊括在我们的学习路线图内的Datawhale精品课,第二种是暂未囊括在我们的学习路线图内的Datawhale打磨课.我们根据您 ...
最新文章
- hive向表格中插入数据并分析语句
- 做软件开发10年了,我准备转行了,做自媒体
- 详解图像直方图均衡化原理,附MATLAB、C、C++源码
- 石油大c语言答案,中国石油大学C语言答案
- 基于struts2拦截器实现用户操作日志记录
- 解读WPF中的Xaml
- 1、图解Oracle Logminer配置使用
- 微信小程序初体验,入门练手项目--通讯录,后台是阿里云服务器(一)
- 【Java从0到架构师】Zookeeper 应用 - Java 客户端操作、服务器动态感知、分布式锁业务处理
- vue-router的简单理解
- windows 下杀掉占用端口的程序
- 南昊网上阅卷系统服务器地址,南昊网上阅卷系统
- php 将日期转换时间戳,php怎么将日期转换为时间戳?
- 基于MATLAB印刷体汉字识别解析
- 清华大学计算机杜瑜皓,我在清华等你来|2015国际信息学奥赛全球第四名杜瑜皓:人生不搏枉少年...
- ZYNQ ADAU1761裸机音频驱动调试
- Java中RuntimeException和Exception区别
- PhysX3.4文档(4) --Rigid Body Overview
- 用CMD命令查看局域网电脑IP地址,电脑名称及MAC地址
- 【Java设计模式】外观模式