机器学习数学基础:3.偏导数

偏导数教程

一、偏导数的引入

在我们研究一元函数 y = f ( x ) y = f(x) y=f(x)时,导数 y ′ = f ′ ( x ) y^\prime = f^\prime(x) y=f(x)表示函数 y y y关于 x x x的变化率。然而,当我们遇到多元函数,例如二元函数 z = f ( x , y ) z = f(x, y) z=f(x,y)时,情况变得更加复杂。我们可能会想知道函数 z z z x x x方向或 y y y方向上的变化率,这就引入了偏导数的概念。

二、偏导数的定义

(一)二元函数的偏导数

对于二元函数 z = f ( x , y ) z = f(x, y) z=f(x,y),我们定义在点 ( x 0 , y 0 ) (x_0, y_0) (x0,y0)处关于 x x x的偏导数为:

f x ( x 0 , y 0 ) = lim ⁡ Δ x → 0 f ( x 0 + Δ x , y 0 ) − f ( x 0 , y 0 ) Δ x f_x(x_0, y_0)=\lim\limits_{\Delta x \to 0}\frac{f(x_0+\Delta x, y_0)-f(x_0, y_0)}{\Delta x} fx(x0,y0)=Δx0limΔxf(x0+Δx,y0)f(x0,y0)

它表示在点 ( x 0 , y 0 ) (x_0, y_0) (x0,y0)处,当 y y y固定为 y 0 y_0 y0,仅 x x x发生微小变化 Δ x \Delta x Δx时,函数 z z z的变化率。我们可以将 y y y看作是暂时固定不变的,此时函数 z = f ( x , y 0 ) z = f(x, y_0) z=f(x,y0)就类似于一个一元函数,按照一元函数导数的定义求出上述极限,这个极限就是 z = f ( x , y ) z = f(x, y) z=f(x,y) ( x 0 , y 0 ) (x_0, y_0) (x0,y0)关于 x x x的偏导数,通常记为 f x ( x 0 , y 0 ) f_x(x_0, y_0) fx(x0,y0),也可写成 ∂ z ∂ x ∣ ( x 0 , y 0 ) \frac{\partial z}{\partial x}\vert_{(x_0,y_0)} xz(x0,y0) ∂ f ∂ x ∣ ( x 0 , y 0 ) \frac{\partial f}{\partial x}\vert_{(x_0,y_0)} xf(x0,y0) z x ∣ ( x 0 , y 0 ) z_x\vert_{(x_0,y_0)} zx(x0,y0)

同样地,在点 ( x 0 , y 0 ) (x_0, y_0) (x0,y0)处关于 y y y的偏导数为:

f y ( x 0 , y 0 ) = lim ⁡ Δ y → 0 f ( x 0 , y 0 + Δ y ) − f ( x 0 , y 0 ) Δ y f_y(x_0, y_0)=\lim\limits_{\Delta y \to 0}\frac{f(x_0, y_0+\Delta y)-f(x_0, y_0)}{\Delta y} fy(x0,y0)=Δy0limΔyf(x0,y0+Δy)f(x0,y0)

记为 f y ( x 0 , y 0 ) f_y(x_0, y_0) fy(x0,y0),或 ∂ z ∂ y ∣ ( x 0 , y 0 ) \frac{\partial z}{\partial y}\vert_{(x_0,y_0)} yz(x0,y0) ∂ f ∂ y ∣ ( x 0 , y 0 ) \frac{\partial f}{\partial y}\vert_{(x_0,y_0)} yf(x0,y0) z y ∣ ( x 0 , y 0 ) z_y\vert_{(x_0,y_0)} zy(x0,y0)

(二)直观理解

想象你站在一个起伏的地形上,这个地形的高度可以用 z = f ( x , y ) z = f(x, y) z=f(x,y)来表示, x x x y y y是地面上的位置坐标, z z z是高度。当你沿着 x x x方向行走时,你只关心 x x x方向上高度的变化,而忽略 y y y方向的移动,此时你感受到的高度变化率就是 f x f_x fx;同理,当你沿着 y y y方向行走时,感受到的高度变化率就是 f y f_y fy

三、偏导数的求导法则

(一)基本求导法则

  • 将其他变量视为常数:当计算 z = f ( x , y ) z = f(x, y) z=f(x,y)关于 x x x的偏导数 ∂ z ∂ x \frac{\partial z}{\partial x} xz时,将 y y y视为常数,按照一元函数的求导法则进行求导。同理,计算 ∂ z ∂ y \frac{\partial z}{\partial y} yz时,将 x x x视为常数。

例如,对于函数 z = x 3 y 2 + 2 sin ⁡ y z = x^3y^2 + 2\sin y z=x3y2+2siny

  • ∂ z ∂ x \frac{\partial z}{\partial x} xz:把 y y y看作常数,根据幂函数求导公式 ( x n ) ′ = n x n − 1 (x^n)^\prime = nx^{n - 1} (xn)=nxn1和常数的导数为 0 0 0,可得 ∂ z ∂ x = ( x 3 y 2 ) ′ + ( 2 sin ⁡ y ) ′ \frac{\partial z}{\partial x}=(x^3y^2)^\prime + (2\sin y)^\prime xz=(x3y2)+(2siny)。因为 y y y是常数,所以 ( 2 sin ⁡ y ) ′ = 0 (2\sin y)^\prime = 0 (2siny)=0,而 ( x 3 y 2 ) ′ = 3 x 2 y 2 (x^3y^2)^\prime = 3x^2y^2 (x3y2)=3x2y2,因此 ∂ z ∂ x = 3 x 2 y 2 \frac{\partial z}{\partial x}=3x^2y^2 xz=3x2y2
  • ∂ z ∂ y \frac{\partial z}{\partial y} yz:把 x x x看作常数, ( x 3 y 2 ) ′ = 2 x 3 y (x^3y^2)^\prime = 2x^3y (x3y2)=2x3y ( 2 sin ⁡ y ) ′ = 2 cos ⁡ y (2\sin y)^\prime = 2\cos y (2siny)=2cosy,所以 ∂ z ∂ y = 2 x 3 y + 2 cos ⁡ y \frac{\partial z}{\partial y}=2x^3y + 2\cos y yz=2x3y+2cosy

(二)高阶偏导数

  • 二阶偏导数:如果 z = f ( x , y ) z = f(x, y) z=f(x,y)的一阶偏导数 f x ( x , y ) f_x(x, y) fx(x,y) f y ( x , y ) f_y(x, y) fy(x,y)仍然可导,我们可以继续求偏导数。

    • 关于 x x x的二阶偏导数:
      • 先对 x x x求偏导,再对 x x x求偏导,得到 ∂ 2 z ∂ x 2 = ∂ ∂ x ( ∂ z ∂ x ) = f x x ( x , y ) \frac{\partial^2 z}{\partial x^2}=\frac{\partial}{\partial x}(\frac{\partial z}{\partial x})=f_{xx}(x, y) x22z=x(xz)=fxx(x,y)。例如,对于 z = x 4 y z = x^4y z=x4y,先求 ∂ z ∂ x = 4 x 3 y \frac{\partial z}{\partial x}=4x^3y xz=4x3y,再对 x x x求偏导得 ∂ 2 z ∂ x 2 = 12 x 2 y \frac{\partial^2 z}{\partial x^2}=12x^2y x22z=12x2y
      • 先对 x x x求偏导,再对 y y y求偏导,得到 ∂ 2 z ∂ x ∂ y = ∂ ∂ y ( ∂ z ∂ x ) = f x y ( x , y ) \frac{\partial^2 z}{\partial x\partial y}=\frac{\partial}{\partial y}(\frac{\partial z}{\partial x})=f_{xy}(x, y) xy2z=y(xz)=fxy(x,y)。对于 z = x 4 y z = x^4y z=x4y,先求 ∂ z ∂ x = 4 x 3 y \frac{\partial z}{\partial x}=4x^3y xz=4x3y,再对 y y y求偏导得 ∂ 2 z ∂ x ∂ y = 4 x 3 \frac{\partial^2 z}{\partial x\partial y}=4x^3 xy2z=4x3
    • 关于 y y y的二阶偏导数:
      • 先对 y y y求偏导,再对 y y y求偏导,得到 ∂ 2 z ∂ y 2 = ∂ ∂ y ( ∂ z ∂ y ) = f y y ( x , y ) \frac{\partial^2 z}{\partial y^2}=\frac{\partial}{\partial y}(\frac{\partial z}{\partial y})=f_{yy}(x, y) y22z=y(yz)=fyy(x,y)。对于 z = x 4 y z = x^4y z=x4y,先求 ∂ z ∂ y = x 4 \frac{\partial z}{\partial y}=x^4 yz=x4,再对 y y y求偏导得 ∂ 2 z ∂ y 2 = 0 \frac{\partial^2 z}{\partial y^2}=0 y22z=0
      • 先对 y y y求偏导,再对 x x x求偏导,得到 ∂ 2 z ∂ y ∂ x = ∂ ∂ x ( ∂ z ∂ y ) = f y x ( x , y ) \frac{\partial^2 z}{\partial y\partial x}=\frac{\partial}{\partial x}(\frac{\partial z}{\partial y})=f_{yx}(x, y) yx2z=x(yz)=fyx(x,y)。对于 z = x 4 y z = x^4y z=x4y,先求 ∂ z ∂ y = x 4 \frac{\partial z}{\partial y}=x^4 yz=x4,再对 x x x求偏导得 ∂ 2 z ∂ y ∂ x = 4 x 3 \frac{\partial^2 z}{\partial y\partial x}=4x^3 yx2z=4x3
  • 混合偏导数相等的条件:在一定条件下(通常是二阶混合偏导数连续), f x y ( x , y ) = f y x ( x , y ) f_{xy}(x, y)=f_{yx}(x, y) fxy(x,y)=fyx(x,y)。这一性质在很多情况下能简化计算和理论推导,因为我们只需要计算其中一个混合偏导数即可。

(三)复合函数的偏导数法则

对于复合函数 z = f ( u ( x , y ) , v ( x , y ) ) z = f(u(x, y), v(x, y)) z=f(u(x,y),v(x,y)),其中 u = u ( x , y ) u = u(x, y) u=u(x,y) v = v ( x , y ) v = v(x, y) v=v(x,y)是中间变量,我们使用链式法则求偏导数。

  • x x x求偏导: ∂ z ∂ x = ∂ f ∂ u ∂ u ∂ x + ∂ f ∂ v ∂ v ∂ x \frac{\partial z}{\partial x}=\frac{\partial f}{\partial u}\frac{\partial u}{\partial x}+\frac{\partial f}{\partial v}\frac{\partial v}{\partial x} xz=ufxu+vfxv
  • y y y求偏导: ∂ z ∂ y = ∂ f ∂ u ∂ u ∂ y + ∂ f ∂ v ∂ v ∂ y \frac{\partial z}{\partial y}=\frac{\partial f}{\partial u}\frac{\partial u}{\partial y}+\frac{\partial f}{\partial v}\frac{\partial v}{\partial y} yz=ufyu+vfyv

例如,设 z = f ( u , v ) = u 2 v z = f(u, v)=u^2v z=f(u,v)=u2v u = x + y u = x + y u=x+y v = x y v = xy v=xy

  • ∂ z ∂ x \frac{\partial z}{\partial x} xz
    • 首先, ∂ f ∂ u = 2 u v \frac{\partial f}{\partial u}=2uv uf=2uv ∂ u ∂ x = 1 \frac{\partial u}{\partial x}=1 xu=1 ∂ f ∂ v = u 2 \frac{\partial f}{\partial v}=u^2 vf=u2 ∂ v ∂ x = y \frac{\partial v}{\partial x}=y xv=y
    • ∂ z ∂ x = ∂ f ∂ u ∂ u ∂ x + ∂ f ∂ v ∂ v ∂ x = 2 u v × 1 + u 2 × y \frac{\partial z}{\partial x}=\frac{\partial f}{\partial u}\frac{\partial u}{\partial x}+\frac{\partial f}{\partial v}\frac{\partial v}{\partial x}=2uv\times1 + u^2\times y xz=ufxu+vfxv=2uv×1+u2×y,将 u = x + y u = x + y u=x+y v = x y v = xy v=xy代入,得到 ∂ z ∂ x = 2 ( x + y ) x y + ( x + y ) 2 y \frac{\partial z}{\partial x}=2(x + y)xy+(x + y)^2y xz=2(x+y)xy+(x+y)2y
  • ∂ z ∂ y \frac{\partial z}{\partial y} yz
    • 首先, ∂ f ∂ u = 2 u v \frac{\partial f}{\partial u}=2uv uf=2uv ∂ u ∂ y = 1 \frac{\partial u}{\partial y}=1 yu=1 ∂ f ∂ v = u 2 \frac{\partial f}{\partial v}=u^2 vf=u2 ∂ v ∂ y = x \frac{\partial v}{\partial y}=x yv=x
    • ∂ z ∂ y = ∂ f ∂ u ∂ v ∂ y + ∂ f ∂ v ∂ v ∂ y = 2 u v × 1 + u 2 × x \frac{\partial z}{\partial y}=\frac{\partial f}{\partial u}\frac{\partial v}{\partial y}+\frac{\partial f}{\partial v}\frac{\partial v}{\partial y}=2uv\times1 + u^2\times x yz=ufyv+vfyv=2uv×1+u2×x,将 u = x + y u = x + y u=x+y v = x y v = xy v=xy代入,得到 ∂ z ∂ y = 2 ( x + y ) x y + ( x + y ) 2 x \frac{\partial z}{\partial y}=2(x + y)xy+(x + y)^2x yz=2(x+y)xy+(x+y)2x

(四)隐函数的偏导数

当函数由方程 F ( x , y , z ) = 0 F(x, y, z) = 0 F(x,y,z)=0所确定的隐函数 z = z ( x , y ) z = z(x, y) z=z(x,y)时,我们可以使用以下公式求偏导数。

  • ∂ z ∂ x \frac{\partial z}{\partial x} xz时,将 y y y看作常数,根据隐函数求导公式 ∂ z ∂ x = − F x F z \frac{\partial z}{\partial x}=-\frac{F_x}{F_z} xz=FzFx,其中 F x = ∂ F ∂ x F_x=\frac{\partial F}{\partial x} Fx=xF F z = ∂ F ∂ z F_z=\frac{\partial F}{\partial z} Fz=zF

例如,对于方程 x 2 + y 2 + z 2 − 1 = 0 x^2 + y^2 + z^2 - 1 = 0 x2+y2+z21=0,令 F ( x , y , z ) = x 2 + y 2 + z 2 − 1 F(x, y, z)=x^2 + y^2 + z^2 - 1 F(x,y,z)=x2+y2+z21,则 F x = 2 x F_x = 2x Fx=2x F z = 2 z F_z = 2z Fz=2z,所以 ∂ z ∂ x = − 2 x 2 z = − x z \frac{\partial z}{\partial x}=-\frac{2x}{2z}=-\frac{x}{z} xz=2z2x=zx(假设 z ≠ 0 z\neq 0 z=0)。

同理,求 ∂ z ∂ y \frac{\partial z}{\partial y} yz时, ∂ z ∂ y = − F y F z \frac{\partial z}{\partial y}=-\frac{F_y}{F_z} yz=FzFy,对于上述方程 F y = 2 y F_y = 2y Fy=2y,所以 ∂ z ∂ y = − 2 y 2 z = − y z \frac{\partial z}{\partial y}=-\frac{2y}{2z}=-\frac{y}{z} yz=2z2y=zy(假设 z ≠ 0 z\neq 0 z=0)。

(五)对数求导法在偏导数中的应用

当函数具有复杂的乘积、商或幂的形式时,对数求导法可简化求导过程。

例如,对于函数 z = ( x 2 + y 2 ) x y z = (x^2 + y^2)^{xy} z=(x2+y2)xy,先对等式两边取自然对数 ln ⁡ z = x y ln ⁡ ( x 2 + y 2 ) \ln z = xy\ln(x^2 + y^2) lnz=xyln(x2+y2)

  • x x x求偏导:

    • ln ⁡ z \ln z lnz关于 x x x求偏导,根据复合函数求导法则, 1 z ∂ z ∂ x = y ln ⁡ ( x 2 + y 2 ) + 2 x 2 y x 2 + y 2 \frac{1}{z}\frac{\partial z}{\partial x}=y\ln(x^2 + y^2)+\frac{2x^2y}{x^2 + y^2} z1xz=yln(x2+y2)+x2+y22x2y
    • 所以 ∂ z ∂ x = z ( y ln ⁡ ( x 2 + y 2 ) + 2 x 2 y x 2 + y 2 ) = ( x 2 + y 2 ) x y ( y ln ⁡ ( x 2 + y 2 ) + 2 x 2 y x 2 + y 2 ) \frac{\partial z}{\partial x}=z\left(y\ln(x^2 + y^2)+\frac{2x^2y}{x^2 + y^2}\right)=(x^2 + y^2)^{xy}\left(y\ln(x^2 + y^2)+\frac{2x^2y}{x^2 + y^2}\right) xz=z(yln(x2+y2)+x2+y22x2y)=(x2+y2)xy(yln(x2+y2)+x2+y22x2y)
  • y y y求偏导:

    • ln ⁡ z \ln z lnz关于 y y y求偏导, 1 z ∂ z ∂ y = x ln ⁡ ( x 2 + y 2 ) + 2 x y 2 x 2 + y 2 \frac{1}{z}\frac{\partial z}{\partial y}=x\ln(x^2 + y^2)+\frac{2xy^2}{x^2 + y^2} z1yz=xln(x2+y2)+x2+y22xy2
    • 所以 ∂ z ∂ y = z ( x ln ⁡ ( x 2 + y 2 ) + 2 x y 2 x 2 + y 2 ) = ( x 2 + y 2 ) x y ( x ln ⁡ ( x 2 + y 2 ) + 2 x y 2 x 2 + y 2 ) \frac{\partial z}{\partial y}=z\left(x\ln(x^2 + y^2)+\frac{2xy^2}{x^2 + y^2}\right)=(x^2 + y^2)^{xy}\left(x\ln(x^2 + y^2)+\frac{2xy^2}{x^2 + y^2}\right) yz=z(xln(x2+y2)+x2+y22xy2)=(x2+y2)xy(xln(x2+y2)+x2+y22xy2)

四、偏导数的几何意义

(一)关于 x x x的偏导数

函数 z = f ( x , y ) z = f(x, y) z=f(x,y)表示一个空间曲面。当我们求 f x ( x 0 , y 0 ) f_x(x_0, y_0) fx(x0,y0)时,想象用平面 y = y 0 y = y_0 y=y0去截这个曲面,得到一条曲线, f x ( x 0 , y 0 ) f_x(x_0, y_0) fx(x0,y0)就是这条曲线在点 ( x 0 , y 0 , f ( x 0 , y 0 ) ) (x_0, y_0, f(x_0, y_0)) (x0,y0,f(x0,y0))处的切线关于 x x x轴的斜率。它反映了在 y y y固定为 y 0 y_0 y0时,函数 z z z沿 x x x方向的变化率,就像你沿着平行于 x x x轴的方向在曲面上移动时,感受到的“爬坡”或“下坡”的陡峭程度。

(二)关于 y y y的偏导数

同理, f y ( x 0 , y 0 ) f_y(x_0, y_0) fy(x0,y0)是用平面 x = x 0 x = x_0 x=x0截曲面得到的曲线在点 ( x 0 , y 0 , f ( x 0 , y 0 ) ) (x_0, y_0, f(x_0, y_0)) (x0,y0,f(x0,y0))处的切线关于 y y y轴的斜率,反映了在 x x x固定为 x 0 x_0 x0时,函数 z z z沿 y y y方向的变化率。

五、偏导数的应用

(一)物理学中的应用

  • 热传导问题:在热传导方程 ∂ T ∂ t = α ( ∂ 2 T ∂ x 2 + ∂ 2 T ∂ y 2 + ∂ 2 T ∂ z 2 ) \frac{\partial T}{\partial t}=\alpha(\frac{\partial^2 T}{\partial x^2}+\frac{\partial^2 T}{\partial y^2}+\frac{\partial^2 T}{\partial z^2}) tT=α(x22T+y22T+z22T)中, T ( x , y , z , t ) T(x, y, z, t) T(x,y,z,t)表示温度随空间 ( x , y , z ) (x, y, z) (x,y,z)和时间 t t t的变化。 ∂ T ∂ t \frac{\partial T}{\partial t} tT表示温度随时间的变化率,而二阶偏导数 ∂ 2 T ∂ x 2 \frac{\partial^2 T}{\partial x^2} x22T ∂ 2 T ∂ y 2 \frac{\partial^2 T}{\partial y^2} y22T ∂ 2 T ∂ z 2 \frac{\partial^2 T}{\partial z^2} z22T描述了温度在空间中的梯度变化, α \alpha α是热扩散系数。通过求解这个偏微分方程,可以分析热量在物体内的传播情况,例如在预测金属棒的温度分布随时间的变化,或者建筑物内的热量传递时非常有用。
  • 流体力学:对于流体的速度场 v ⃗ ( x , y , z ) = ( v x ( x , y , z ) , v y ( x , y , z ) , v z ( x , y , z ) ) \vec{v}(x, y, z)=(v_x(x, y, z), v_y(x, y, z), v_z(x, y, z)) v (x,y,z)=(vx(x,y,z),vy(x,y,z),vz(x,y,z)),偏导数 ∂ v x ∂ x \frac{\partial v_x}{\partial x} xvx ∂ v y ∂ y \frac{\partial v_y}{\partial y} yvy ∂ v z ∂ z \frac{\partial v_z}{\partial z} zvz等描述了流体在不同方向上的速度变化率,可用于研究流体的流动特性,如是否存在湍流、漩涡等,对于设计飞机机翼、汽车外形等以减少流体阻力有重要意义。

(二)经济学中的应用

  • 生产函数:对于生产函数 Q = f ( K , L ) Q = f(K, L) Q=f(K,L),其中 Q Q Q表示产量, K K K表示资本投入, L L L表示劳动投入,偏导数 ∂ Q ∂ K \frac{\partial Q}{\partial K} KQ表示资本的边际产量,即当劳动投入 L L L固定时,增加一单位资本投入所带来的产量增加量; ∂ Q ∂ L \frac{\partial Q}{\partial L} LQ表示劳动的边际产量,即资本投入 K K K固定时,增加一单位劳动投入带来的产量增加量。企业可以根据这些边际产量来优化资源配置,以实现利润最大化。

(三)计算机图形学中的应用

  • 在三维图形学中,对于一个由函数 z = f ( x , y ) z = f(x, y) z=f(x,y)表示的曲面,其法向量 n ⃗ \vec{n} n 可通过 n ⃗ = ( − ∂ z ∂ x , − ∂ z ∂ y , 1 ) \vec{n}=(-\frac{\partial z}{\partial x},-\frac{\partial z}{\partial y},1) n =(xz,yz,1)(经过归一化处理)计算得到。法向量对于光照计算、阴影生成等非常重要,因为它决定了光线如何与表面相互作用,从而影响物体在屏幕上的渲染效果,例如在渲染山脉、地形等复杂表面时,通过偏导数计算法向量,让物体看起来更加逼真。

你可能感兴趣的:(机器学习数学基础,机器学习,人工智能)