首页 > 编程知识 正文

偏导数与导数的区别是什么,对偏导数的理解

时间:2023-05-04 21:15:29 阅读:214078 作者:1611

导数是人工智能、神经网络的基础,正向传播、反向传播无不依赖于导数,导数也是高数的基础,本文算是一个半学习半理解加非科班的学习过程吧

导数(Derivative),也叫导函数值。又名微商,是微积分中的重要基础概念。当函数y=f(x)的自变量x在一点x0上产生一个增量Δx时,函数输出值的增量Δy与自变量增量Δx的比值在Δx趋于0时的极限a如果存在,a即为在x0处的导数,记作f'(x0)或df(x0)/dx。

导数是变化率、是切线的斜率、是速度、是加速度

导数的本质是通过极限的概念对函数进行局部的线性逼近,从这个意义上讲是瞬时速度。

假设一辆车匀速前进,每小时时速为60公里,关于距离(y)、时速(常量60)和时间(x)的关系即y=f(x)=60*x

瞬间增量为 Δy=f(x0+Δx)-f(x0)

计算在某时刻的瞬间速度为f'(x0)=lim[Δx->0]Δy/Δx=lim[Δx->0](f(x0+Δx)-f(x0))/Δx=(60*(x0+Δx)-60*x0)/Δx=60

自由落体的公式是h=1/2gt^2(g为重力加速度,g=9.8m/s2),求某个时刻的速度,关于距离(y)、重力加速度(常量9.8)和时间(x)的关系即y=f(x)=1/2*9.8*x^2

瞬间增量为 Δy=f(x0+Δx)-f(x0)

计算在某时刻的瞬间速度为f'(x0)=lim[Δx->0]Δy/Δx=lim[Δx->0](f(x0+Δx)-f(x0))/Δx=(1/2*9.8*(x+Δx)^2-1/2*9.8*x^2)/Δx=4.9*(Δx^2+2Δx)/Δx=4.9Δx+9.8=9.8

f'(x)=lim[Δx->0](f(x0+Δx)-f(x0))/Δx=lim[Δx->0](f(x)-f(x-Δx))/Δx=lim[x->x0])(f(x)-f(x0))/(x-x0)

这个瞬间速度即导数也就是切线斜率,换成公式f'(x0)=(f(x)-f(x0))/(x-x0)

设曲线方程为y=f(x),曲线上某点为(a,f(a)),其切线方程应为 y=f'(a)(x-a)+f(a)

f'(x)=lim[Δx->0](f(x0+Δx)-f(x0))/Δx 表示为Δx无限接近0时的接近的值

导数的性质:

加法性质:{f(x)+g(x)}'=f'(x)+g'(x)

常量性质:{Cf(x)}'=Cf'(x)

除法性质:{1/f(x)}'=f'(x)/{f(x)}^2

当函数f(x)在x=a处取得最小值时,f'(a)=0,f'(a)=0是函数f(x)在x=a处取得最小值的必要条件

f'(x)<0,f(x)单调递减;f'(x)>0,f(x)单调递增

多变量函数

z=f(x,y),只看变量x,将y当作常数求导,即为关于x的偏导数

∂z/∂x=∂f(x,y)/∂x=lim[Δx=0](f(x+Δx,y)-f(x,y))/Δx

∂z/∂y=∂f(x,y)/∂y=lim[Δy=0](f(x,y+Δy)-f(x,y))/Δy

当z=wx+b

∂z/∂x=w,∂z/∂w=x,∂z/∂b=1

当z=w1x1+w2y2+b1,对x1,w2,b1求偏导

∂z/∂x1=w1

∂z/∂w2=x2

∂z/∂b1=1

当f(x,y)=3x^2+4y^2

∂z/∂x=∂f(x,y)/∂x=6x

∂z/∂y=∂f(x,y)/∂y=8y

多变量函数的最小值求法,拉格朗日乘数法

a+b=1,求1/a+4/b的最小值

z=f(a,b)=1/a+4/b

Φ(a,b)=a+b-1=0

F(a,b,λ)=f(x,y)+λΦ(x,y)=1/a+4/b+λ(a+b-1)

对a,b求导

F‘a(a,b,λ)=∂f(a,b,λ)/∂a=-1/a^2+λ=0

F‘b(a,b,λ)=∂f(a,b,λ)/∂b=-4/b^2+λ=0

Φ(a,b)=a+b-1=0

求解

λ=1/a^2=4/b^2

b=2a

a+b-1=0

a=1/3,b=2/3

zmin=f(1/3,2/3)=9

即约束条件构造为Φ函数,求解函数构造为f函数

构造F函数=f(x,y)+λΦ(x,y)

对F函数分别求偏导,配合约束条件,构成联立方程组,求x,y值

将x,y值带入求解方程即为最小值

复合函数求导

y=f(u),u=g(x)

dy/dx=(dy/du)*(du/dx)

y=f(u),u=g(v),v=z(x)

dy/dx=(dy/du)*(du/dv)*(dv/dx)

多变量复合函数求导

z=f(u,v),u=g(x,y),v=z(x,y)

∂z/∂x=(∂z/∂u)*(∂u/∂x)+(∂z/∂v)*(∂v/∂x)

∂z/∂y=(∂z/∂u)*(∂u/∂y)+(∂z/∂v)*(∂v/∂y)

例C=u^2+v^2,u=ax+by,v=px+qy(a,b,p,q为常数)

∂C/∂x=(∂C/∂u)*(∂u/∂x)+(∂C/∂v)*(∂v/∂x)=2ua+2vp=2a(ax+by)+2p(px+qy)

∂C/∂y=(∂C/∂u)*(∂u/∂y)+(∂C/∂v)*(∂v/∂y)=2ub+2vq=2b(ax+by)+2q(px+qy)

例C=u^2+v^2+w^2,u=a1x+b1y+c1z,v=a2x+b2y+c2z,w=a3x+b3y+c3z(ai,bi,ci为常数)

∂C/∂x=(∂C/∂u)*(∂u/∂x)+(∂C/∂v)*(∂v/∂x)+∂C/∂w)*(∂w/∂x)

=2u*a1+2v*a2+2w*a3

=2(a1x+b1y+c1z)*a1+2(a2x+b2y+c2z)*a2+2(a3x+b3y+c3z)*a3

导数是用来找到“线性近似”的数学工具

单变量函数的近似值

f'(x)=im[Δx=0](f(x+Δx,y)-f(x,y))/Δx≈(f(x+Δx)-f(x))/Δx

f(x+Δx)≈f(x)+f'(x)Δx

例:f(x)=e^x,求x=0的近似公式

e^(x+Δx)=e^x+e^x*Δx

x=0,将Δx=x

e^x=1+x

导数是线性变换

多变量函数的近似值

f(x+Δx,y+Δy)≈f(x,y)+∂f(x,y)/∂x*Δx+∂f(x,y)/∂y*Δy

令Δz=f(x+Δx,y+Δy)-f(x,y)

Δz≈∂f(x,y)/∂x*Δx+∂f(x,y)/∂y*Δy≈∂z/∂x*Δx+∂z/∂y*Δy

再多变量时Δz≈∂z/∂x*Δx+∂z/∂y*Δy+∂z/∂w*Δw

令∇z=(∂z/∂w,∂z/∂x,∂z/∂y),Δx=(Δw,Δx,Δy)

Δz=∇z*Δx=(∂z/∂w,∂z/∂x,∂z/∂y)*(Δw,Δx,Δy)

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。