多変数の微積分 · 勾配

勾配

微分可能な関数の勾配は、偏微分を成分とするベクトル∇f = (∂f/∂x, ∂f/∂y)です。0でない場所では関数が最も速く増える方向を指し、その長さが最大の傾きです。

01

この可視化での勾配

関数f(x,y)f(x, y)の勾配は∇f\nabla fまたはgrad⁡f\operatorname{grad} fと書き、偏微分を成分とするベクトル∇f=(fx,fy)\nabla f = (f_x, f_y)です。ffが微分可能で∇f≠0\nabla f \ne 0のとき、ffが最も速く増える方向を指し、長さはその最大の変化率を表します。このページでは六つの曲面で、選んだ方向のffの変化率である方向微分とともに示します。

透明な曲面はz=f(x,y)z = f(x, y)のグラフで、床には等高線地図があります。青い点Pは(a,b)(a, b)の真上の曲面上にあります。赤い矢印uは水平な単位ベクトルで、正のxx軸から反時計回りに角度θ\thetaを測ります。uに沿って水平に1進んだときの接平面の上昇量が黄色い線分、つまり方向微分です。

方向微分
Duf(a,b)=∇f⋅u=fxcos⁡θ+fysin⁡θ.D_u f(a, b) = \nabla f \cdot u = f_x \cos\theta + f_y \sin\theta.

方向微分は、方向を単位ベクトルel=(cos⁡α,cos⁡β)e_l = (\cos\alpha, \cos\beta)で表して∂f∂l\dfrac{\partial f}{\partial l}とも書きます。ここでは正のxx軸から反時計回りにθ\thetaを測るので、cos⁡α=cos⁡θ\cos\alpha = \cos\theta、cos⁡β=sin⁡θ\cos\beta = \sin\thetaです。青い輪は、Pの周りの単位円を接平面に持ち上げたものです。最高点は勾配の方向にあり、Pより∣∇f∣|\nabla f|高くなります。これは次の式によります。

最急勾配
Duf=∣∇f∣cos⁡φ≤∣∇f∣,D_u f = |\nabla f| \cos\varphi \le |\nabla f|,

φ\varphiはuと∇f\nabla fの間の角度です。傾きは勾配の方向で最大、Pを通る等高線に沿う方向で0、勾配の逆方向で最も小さくなります。

02

注目する点

  • 勾配はPを通る等高線と直交します。ffを等間隔に取った等高線は、∣∇f∣|\nabla f|が大きい場所で密になります。
  • uを一周させると、地図上の点(a,b)+(Duf) u(a, b) + (D_u f)\,uは、(a,b)(a, b)と(a,b)+∇f(a, b) + \nabla fを直径の両端とする円を描きます。∇f=0\nabla f = 0では円が一点に縮みます。
  • 最急上昇の方向は、必ずしも山頂を指しません。引き伸ばした山では二つの方向が異なります。
  • 偏微分は方向微分の一種です。u=(1,0)u = (1, 0)でfxf_x、u=(0,1)u = (0, 1)でfyf_yになります。
  • ∇f=0\nabla f = 0となる臨界点では、すべての方向の傾きが0で、最急上昇の方向はありません。鞍点は、臨界点のうち極大でも極小でもない点です。
  • 黄色い上昇量は接平面上のもので、一次近似です。u方向の短い水平移動hhに対して、曲面自体の高さはf((a,b)+hu)−f(a,b)≈h Duff((a, b) + h u) - f(a, b) \approx h\,D_u fだけ変わります。hhが小さいほどよく一致します。
03

応用

  • 機械学習モデルの学習に使う基本的な方法である勾配降下法は、勾配と逆方向に小さな一歩x←x−η ∇f(x)x \leftarrow x - \eta\,\nabla f(x)を繰り返して関数の値を下げます。∇f≠0\nabla f \ne 0なら十分小さな一歩で値は下がりますが、最も低い点に着くとは限らず、局所的な最小値に落ち着いたり、鞍点の近くで進みが遅くなったりします。
  • 勾配は等高線に直交するため、その法線方向を与えます。滑らかなffが曲線g=cg = c上で最大または最小になるとき、∇g≠0\nabla g \ne 0なら二つの勾配は平行で∇f=λ∇g\nabla f = \lambda \nabla gです。これがラグランジュの未定乗数法の考え方です。
  • 物理学では、保存力は位置エネルギーの勾配に負号を付けたF=−∇UF = -\nabla Uです。エネルギーが最も速く下がる方向へ押す力になります。
04

操作方法

  • 曲面上のPや地図上の足元、赤い矢印の先をドラッグできます。主な点や方向(+x+x、+y+y、∇f\nabla f、⊥∇f\perp\nabla f)を選ぶと厳密な値に移動します。主な点として選ぶ臨界点では∇f\nabla fが厳密に0です。
  • 一周ではuを一回転させ、最急上昇方向で止めます。真上から見ると地図上の角度を正しく確認できます。プレゼンモードではプロジェクター向けに全画面表示します(スペースキーで一周、← →でuを回転、Hで答えを非表示)。
05

関連する概念

  • E10等高線図準備中
  • E12偏微分係数
  • E13接平面
  • E16二階偏微分による極値判定準備中
  • E17ラグランジュの未定乗数準備中

さらに読む: ウィキペディア: Gradient (英語); OpenStax, Calculus Volume 3, 4.6 Directional Derivatives and the Gradient (英語).