机器学习应用数学基础-微分上

本文介绍了大O符号O(n)和小o符号o(n)在算法复杂度中的含义,展示了它们在极限和导数理论中的应用。讨论了导数作为函数变化率的概念,以及在寻找函数极值中的作用。同时,提到了泰勒展开式和函数逼近,以及凸函数的特性。内容涵盖了数学分析的基础概念,对于理解算法效率和优化问题具有重要意义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

O(n)和 o(n)

O(n)

f(x)=O(g(x))f(x)=O(g(x))f(x)=O(g(x))

  • order 阶,多项式阶
  • 数学表述:∃X0,M,f(x)≤Mg(x)\exists X_0,M,f(x)\leq Mg(x)X0,M,f(x)Mg(x)
    举例:M=2,2x2=O(x2),x0任意M=2,2x^2=O(x^2),x_0任意M=22x2=O(x2),x0

o(n)

  • 数学表述:∀ε,∃X0,f(x)≤εg(x)\forall\varepsilon,\exists X_0,f(x)\leq \varepsilon g(x)ε,X0,f(x)εg(x)
  • 意义:当x足够大时,可以在任意ε\varepsilonε条件下成立

极限

X−>∞,f(x)g(x)−>0 X->\infty ,\frac{f(x)}{g(x)}->0X>,g(x)f(x)>0
X−>x1,f(x)−>y1X->x_1,f(x)->y_1X>x1,f(x)>y1


导数

基本运算

  1. 含义
    函数在某一点的变化率

  2. python实现

import sympy as sp  #载入包

str_expr = "x**3-x*3"  
expr = sp.sympify(str_expr)  
print(sp.diff(expr))
  1. 求导的方法

(1)四则运算
+:(f(x)±g(x))′=f(x)′±g(x)′(f(x)\pm g(x))'=f(x)'\pm g(x)'(f(x)±g(x))=f(x)±g(x)
×:(uv)′=u′v+uv′\times:(uv)'=u'v+uv'×:(uv)=uv+uv
÷:(uv)′=u′v−uv′v2\div:(\frac{u}{v})'=\frac{u'v-uv'}{v^2}÷:(vu)=v2uvuv

(2)复合函数(链式法则)
[f(g(x))]′=f′(g(x0))∗g′(x0)[f(g(x))]'=f'(g(x_0))*g'(x_0)[f(g(x))]=f(g(x0))g(x0)
与神经网络关系密切


导数应用

  1. 费马定理
    f(x)f(x)f(x)在区间内,当X=x0X=x_0X=x0时,存在极值=>f’(x0)=0f’(x_0)=0f(x0)=0
    反之不见得成立(反例:y=x3y=x^3y=x3),但可以作为寻找极值的参考。
  • 推导:
    x<x0,lim⁡x−>x0f(x)−f(x0)x−x0≥0x<x_0,\lim_{x->x_0}\frac{f(x)-f(x_0)}{x-x_0}\geq 0x<x0,x>x0limxx0f(x)f(x0)0
    x<x0,lim⁡x−>x0f(x)−f(x0)x−x0≤0x<x_0,\lim_{x->x_0}\frac{f(x)-f(x_0)}{x-x_0}\leq 0x<x0,x>x0limxx0f(x)f(x0)0
    f′(x)即≥0又≤0,所以f′(x)=0f'(x)即\geq 0又\leq 0,所以f'(x)=0f(x)00f(x)=0
  1. 函数逼近
    f(x)−f(x0)x−x0=f′(x0)=>f(x)=f(x0)+f′(x0)(x−x0)\frac{f(x)-f(x_0)}{x-x_0}=f'(x_0)=>f(x)=f(x_0)+f'(x_0)(x-x_0)xx0f(x)f(x0)=f(x0)=>f(x)=f(x0)+f(x0)(xx0)
  • 意义:非线性的函数可以用斜率为f′(x0)f'(x_0)f(x0)的线性函数近似表示

(1)Rolle中值定理
f′(x2)=0,x0<x2<x1,f(x0)=f(x1)=0f'(x_2)=0, x_0<x_2<x_1,f(x_0)=f(x_1)=0f(x2)=0,x0<x2<x1,f(x0)=f(x1)=0
Rolle中值定理

(2)拉格朗日中值定理
x和x0之间的斜率=f(x)−f(x0)x−x0=f′(x1),x0<x1<xx和x_0之间的斜率=\frac{f(x)-f(x_0)}{x-x_0}=f'(x_1),x_0<x_1<xxx0=xx0f(x)f(x0)=f(x1),x0<x1<x
拉格朗日中值定理

  1. 泰勒展开
  • 目的:更精细的拟合f(x)
  • 为了研究函数逼近和函数本身差多少,引入泰勒展开:
    函数逼近:f(x)≈f(x0)+f′(x0)(x−x0)函数逼近:f(x)\approx f(x_0)+f'(x_0)(x-x_0):f(x)f(x0)+f(x0)(xx0)
    拉格朗日:f(x)=f(x0)+f(x1)(x−x0),x1∈[x0,x]拉格朗日:f(x)=f(x_0)+f(x_1)(x-x_0),x_1\in[x_0,x]:f(x)=f(x0)+f(x1)(xx0)x1[x0,x]
    f(x)=f(x0)+{(x−x0)f′(x0)+...+(x−x0)Nf(N)(x0)N!+o((x−x0)N)}f(x)=f(x_0)+\{(x-x_0)f'(x_0)+...+(x-x_0)^N\frac{f^{(N)}(x_0)}{N!}+o((x-x_0)^N)\}f(x)=f(x0)+{(xx0)f(x0)+...+(xx0)NN!f(N)(x0)+o((xx0)N)}

凸函数

下凸函数

  1. 定义
    连接函数f(x)f(x)f(x)上的f(x1)f(x_1)f(x1)f(x2)f(x_2)f(x2),在x1和x2x_1和x_2x1x2区间内,函数值均小于线性函数的值,即为下凸函数。
    下凸函数
  • 数学表述:
    线性函数:f(a)+θ(f(b)−f(a)),θ∈[0,1]f(a)+\theta(f(b)-f(a)),\theta \in [0,1]f(a)+θ(f(b)f(a)),θ[0,1]
    凸函数:f(a+θ(b−a))f(a+\theta(b-a))f(a+θ(ba))
    线性函数>凸函数

凸函数数学表达

  1. 性质
    (1)f′(x)<0,当x<x0;f′(x)>0,当x>x0f'(x)<0,当x<x_0;f'(x)>0,当x>x_0f(x)<0,x<x0;f(x)>0,x>x0
    (2)f′′(x)>0f''(x)>0fx>0

上凸函数

  1. 定义
    连接函数f(x)f(x)f(x)上的f(x1)f(x_1)f(x1)f(x2)f(x_2)f(x2),在x1和x2x_1和x_2x1x2区间内,函数值均大于线性函数的值,即为上凸函数。

上凸函数

  1. 性质
    (1)f′(x)>0,当x<x0;f′(x)<0,当x>x0f'(x)>0,当x<x_0;f'(x)<0,当x>x_0f(x)>0,x<x0;f(x)<0,x>x0
    (2)f′′(x)<0f''(x)< 0fx<0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值