社会人からの異分野大学院進学〜修士〜

大学院で数学をしています.

距離空間上のgradient flowの定義 〜ノルムに対する不等式で微分の情報を抽出する〜

はじめに

こんにちは,shimoyamaです.
本稿では,僕の修士の勉強テーマである距離空間上のgradient flowについて,Euclid空間上の関数に対するgradient flowの定義から始めて,その定義を距離空間上でも定められるように一般化するまでの過程を紹介してみようと思います.
読むために必要な知識としては,微積の基本的な知識+ノルム空間と線形空間の定義を知っていれば十分だと思います.
また,本稿のサブ目標として,「不等式にあまり慣れていない方向けに,不等式の使い方の一例をgradient flowという一例を通してお伝えする」という目標を設定しています.
もしよければ読んでみていただけると嬉しいです.

内容に誤りがない様に努めますが,もし誤りを見つけた場合はご指摘いただけますと幸いです.
(ただ,今回はあくまで雰囲気を掴んでもらうことを優先しているため,踏み込むと脇道に逸れてしまい煩雑になるような話題についてはあえて一言で済ませて避けている箇所もあります.)
本記事の内容は,基本的に文献[2]を参照しています.
(文献[2]は僕が修士で取り組んでいる本です.)

本稿の内容をざっくり述べると以下になります:
gradient flowとは,関数を与えると定まる曲線のことで,与えられた関数をgradient flowと合成して得られた関数は与えられた関数の値が減少する方向に進むような曲線のことです.
距離空間には必ずしも微分構造(特に,線形性)が備わっているとは限らないため,通常のgradient flowの定義式を用いて距離空間上の関数に対するgradient flowを定義することはできません.
そこで,微分構造を明に用いない十分条件を導出し,それを距離空間上の関数に対するgradient flowの定義とします.

本文

[1] gradient flow の定義と意味

まず,一般の距離空間で考える前に,n次元Euclid空間上の関数に対するgradient flowを紹介します.
(※ 本記事では,Euclid空間は,実数の直積  \mathbb{R}^n にdot productによって内積を入れ,その内積から誘導されるノルム,そのノルムから誘導される距離を備えた空間を指すことにします.i.e. 通常の意味でのEuclid空間です.)

Definition 1 (gradient flows on Euclidian space)
  f: \mathbb{R}^n \to \mathbb{R}: 可微分関数, u: [a, b] \to \mathbb{R}^n: 可微分曲線とする.
 u f に対し次の等式を満たす時,  u f の gradient flow であると呼ばれる:
 \displaystyle
\begin{align}
\text{(C1):} \ & u'(t) = - \nabla f (u(t)) \ \text{for}\  \forall t \in [a, b],  \\
& \text{where}\  u' (t) = \left[u_1'(t), \ldots, u_n'(t) \right], \nabla f(x) = \left[ \frac{\partial f}{\partial x_1}(x), \ldots, \frac{\partial f}{\partial x_n} (x) \right]. 
\end{align}


gradient flowの意味を考えます.
条件(C1)から,gradient flowは曲線で,各点における接ベクトル  u'(t)

  • その点における関数のgradient(i.e.  \nabla f(u(t)))と逆方向を向いていて

  • その大きさがgradientと一致する

ような曲線のことだと分かります.
関数のgradientは関数値を大きくする方向を表しているので,gradient flowは「それに沿って進むと関数値を小さくし,進む大きさがgradientと一致する」という曲線だということが分かります.
(もう少し,厳密に上の説明を記述すると以下のようになります:
 f, u は共に微分可能だから, f \circ u微分可能.
よって,平均値の定理より,  \displaystyle
a \lt \forall s \lt \forall t \lt b
に対して,

 \displaystyle
\exists c \in (s, t)\  \mbox{s.t.} \  \frac{f \circ u(t) - f\circ u(s)}{t - s} \leq (f\circ u)'(c)
.

chain ruleと条件(C1)より,

  \displaystyle 
 (f\circ u)'(c) = \langle u'(t), \nabla f(u(t)) \rangle = - \| \nabla f(u(t)) \|^2 \leq 0.

 t - s \gt 0 だから,上2つの事実を組み合わせれば,

  f \circ u(t) - f\circ u(s) \leq 0.  

つまり,

 \displaystyle
f \circ u(t) \leq f\circ u(s)\ \text{for} \ a \lt \forall s \lt \forall  t \lt b

これは,gradient flowに沿って進むと関数値が減少することを意味する.)

gradient flowの応用例をあげると,例えば,熱流をgradient flowと見ることでリッチ曲率の下限条件と熱流の関係を見やすくできることが知られています[1].
これ以外にも様々な分野でgradient flowの概念は用いられているようです.
(gradient flowの応用例については,僕の勉強不足でほとんど知らないため,「色んな場所で使われている」という事しか知らないです... 具体的な応用例を調べることは今後の課題とさせてください.)

(gradient flowは応用例が多いということを認めると)
Euclid空間上の関数のみでなく,一般の距離空間上の関数に対してもgradient flowを扱えるようにすることで,より広いクラスに対してgradient flowの視点から解析が行えるようになるため有用そうです.
しかしながら,一般の距離空間上では条件(C1)を定義として採用することはできません.

[2] 距離空間微分構造(線形性)を持たない

 (X, d)距離空間として,関数  f: X \to R と曲線  u: [a, b] \to X に対して,「 u f のgradient flowである」という定義を定めることを考えます.

しかし,Euclid空間におけるgradient flowの定義(C1)をそのまま採用することはできません.
その理由は以下です:
gradient flowの条件(C1)では, \mathbb{R}^n線形空間としての微分構造(線形性とスカラー倍)が使用されています.
uの微分の定義式を思い出してみます:  \displaystyle
u'(t) = \lim_{h \to 0} \frac{u(t+h) - u(t)}{h}
.
定義内で, \mathbb{R}^nの元としての加法  u(t+h) - u(t)スカラー \displaystyle
\frac{1}{h} \cdot (u(t+h) - u(t))
が用いられています.
しかし,一般の距離空間上では加法演算とスカラー演算(i.e. 線形空間の構造)が定まっているとは限りません.
なので, u距離空間への曲線  u: [a, b] \to X とすると,通常の意味での微分  u'(t) を定義することができません.
同様に距離空間には線形構造が定まっていないことから, f: X \to \mathbb{R} のgradient  \nabla f も定義することができません.

そこで, u'(t), \nabla f を用いない(C1)に対する十分条件を導出します.
この時,ノルムに対する不等式が重要な役割を果たします.

[3] gradient flowの定義(C1)に対する同値条件(C2)

再び,Euclid空間の場合に戻ります(つまり,可微分関数  f: \mathbb{R}^n \to \mathbb{R} と可微分曲線  u: [a, b] \to \mathbb{R}^n

まず, u' における線形性の使用を回避した,(C1)と同値な条件を導出します.

Proposition 2 (equivalent condition to (C1))
 f: \mathbb{R}^n \to \mathbb{R}: 可微分関数, u: [a, b] \to \mathbb{R}^n: 可微分曲線とする.
 f u に対し,以下の2条件は同値である:
 \displaystyle
\begin{align}
\text{(C1):} \ & u'(t) = - \nabla f (u(t)) \ \text{for}\  \forall t \in [a, b],  \\
\text{(C2):} \ & (f\circ u)'(t) \leq -\frac{1}{2} \| u'(t)\|^2 - \frac{1}{2} \| \nabla f(u(t)) \|^2  \ \text{for}\  \forall t \in [a, b].
\end{align}

proof
 
\begin{align}
& u'(t)  = - \nabla f (u(t)) \\
& \iff \| u'(t) + \nabla f (u(t)) \|  = 0  \\
& \iff \| u'(t) + \nabla f (u(t)) \|^2 = 0 \\
& \iff \| u'(t) + \nabla f (u(t)) \|^2 \leq 0 \\ 
& \iff \left\langle u'(t) + \nabla f (u(t)), u'(t) + \nabla f (u(t)) \right\rangle \leq 0 \\
& \iff \|u'(t)\|^2 + 2\left\langle u'(t) , \nabla f (u(t))\right\rangle + \|\nabla f (u(t)) \|^2 \leq 0\\
& \iff \|u'(t)\|^2 + 2 (f\circ u)'(t) + \|\nabla f (u(t)) \|^2 \leq 0 \\
& \iff (f\circ u)'(t) \leq -\frac{1}{2} \| u'(t)\|^2 - \frac{1}{2} \| \nabla f(u(t)) \|^2
\end{align}


 \|u'(t)\| は次のように書けることに注意してください:

 \displaystyle
\|u'(t)\| = \lim_{h \to 0} \left\| \frac{u(t+h) - u(t)}{h} \right\| = \lim_{h \to 0} \frac{\| u(t+h) - u(t)\|}{|h|} = \lim_{h \to 0} \frac{d\left( u(t+h), u(t)\right)}{|h|},
ここで, d はノルムから定まる距離です.

つまり, \|u'(t)\| は線形性を用いずに,距離空間の構造だけで定めることができます.
(余談ですが,上の式の最右辺の量を metric derivative と呼びます.)

以上から,条件(C1)と同値で, u'(t) についての線形性を用いない条件(C2)を導出することができました(つまり, \|u'(t)\|距離空間の構造のみで定義することができます).
あとは,(C2)内の  \nabla f の項に対処してあげれば,距離空間上でもgradient flowを定義できます.

[4] upper gradientを用いた(C2)に対する十分条件の導出

まず,upper gradient という概念を導入します.

Definition 3 (upper gradient)
微分関数  f: \mathbb{R}^n \to \mathbb{R} に対し,関数  g: \mathbb{R}^n \to [0, +\infty] が次を満たす時, g f のupper gradientであるという:
 \displaystyle
\text{(D1):}\ \|\nabla f(x) \| \leq g(x) \ \text{for}\ \forall x \in \mathbb{R}^n
.


さらに,次の事実が成り立ちます.

Proposition 4 (Equivalent condition to upper gradient)
微分関数  f: \mathbb{R}^n \to \mathbb{R} ,関数  g: \mathbb{R}^n \to [0, +\infty] に対し,以下は同値である:
 \displaystyle
\begin{align}
\text{(D1): }\ & \|\nabla f(x) \| \leq g(x) \ \text{for}\  \forall x \in \mathbb{R}^n, \\ 
\text{(D2): }\ & |(f\circ \gamma)' (t)| \leq g ( \gamma (t)) \cdot \|\gamma'(t)\| \\
& \ \text{for}\  \forall \gamma: [a, b] \to \mathbb{R}^n: \text{differentiable}\ , \forall t \in [a, b].
\end{align}

proof of (D1)  \Rightarrow (D2): 
chain ruleから,  (f\circ \gamma)' (t) = \left \langle \nabla f(\gamma(t)), \gamma'(t) \right \rangle . 
コーシー・シュワルツの不等式より,  |\langle \nabla f(\gamma(t)), \gamma'(t) \rangle| \leq \|\nabla f(\gamma(t))\| \cdot \|\gamma'(t)\|.
以上と(D1)を組み合わせて(D2)を得る.

proof of (D2)  \Rightarrow (D1): 
 \forall x \in \mathbb{R}^n を任意に1つ取る.
 \nabla f(x) = 0 の時, (D1)の不等式が成り立つことは明らか.
 \nabla f(x) \neq 0 の時, 可微分曲線  \gamma: [a, b] \to \mathbb{R}^n を次で定義する:
 \gamma(t) := x + \nabla f(x) \cdot t \ \text{for}\ t \in [a, b]. 
 \gamma(0) = x, \gamma'(0) = \nabla f(x) がなりたつことに注意して, (D2)が成り立つことを用いれば,
 g(x) \cdot \|\nabla f(x) \| \geq |(f\circ \gamma)' (0)| = |\langle \nabla f(x), \nabla f(x) \rangle| = \| \nabla f(x) \|^2 .
よって, (D1)の不等式が  x に対し成り立つことが分かる.


1つ前の章で見たように,可微分曲線の微分のノルムは距離空間の構造だけで定義できました: \displaystyle \| \gamma'(t)\| = \lim_{h\to0} \frac{d(\gamma(t+h), \gamma(t))}{|h|}
また, f\circ \gamma: [a, b] \to \mathbb{R} はEuclid空間上の関数なので,通常の微分を定義できます.
よって,upper gradientは,(D2)を定義とすれば,距離空間上でも定義することができます.
(微分可能な  \gamma を対象としているから  \gamma微分を定義できる必要があるのではないか?と思われた方のためにコメントします.
結局使っている情報は  (f\circ \gamma)' \| \gamma' \| のみなので,この2つを満たすような  \gamma を対象にすればそのような問題には対処できます.)

upper gradientを用いると,gradient flowの同値条件(C2)に対する十分条件を導出することができます.

Proposition 5 (Sufficient condition to (C2))
 f: \mathbb{R}^n \to \mathbb{R}: 可微分関数 , u: [a, b] \to \mathbb{R}^n: 可微分曲線,  g: \mathbb{R}^n \to [0, +\infty] :  f のupper gradient とする. この時,以下の条件(C3)が成り立つならば,upper gradientの条件(C2)が成り立つ:
 \displaystyle
\begin{align}
\text{(C3):}\ & (f\circ u)'(t) \leq -\frac{1}{2} \| u'(t)\|^2 - \frac{1}{2} g^2(u(t)) \ \text{for}\  \forall t \in [a, b], \\
\text{(C2):} \ & (f\circ u)'(t) \leq -\frac{1}{2} \| u'(t)\|^2 - \frac{1}{2} \| \nabla f(u(t)) \|^2 \ \text{for}\  \forall t \in [a, b].
\end{align}

proof
 g f の upper gradient なので,(D1)が成り立つ.
つまり,  \| \nabla f(u(t)) \|^2 \leq g^2(u(t)). 
よって,  -g^2(u(t)) \leq - \| \nabla f(u(t)) \|^2 .
したがって, (C2)が成り立つ.


条件(C3)では, u', \nabla f に対する  \mathbb{R}^n の線形性の使用を行なっていません.
よって,条件(C3)は一般の距離空間上でも定義することができます.
そのため,条件(C3)を距離空間上の関数・距離空間への曲線のgradient flowの定義として採用することができます.
これで,当初の目標であった「 u, f に対して  \mathbb{R}^n微分情報を用いないgradient flowの十分条件の導出」が完了しました.

おわりに

本記事では,一般の距離空間上でも定義可能なgradient flowの十分条件を不等式を駆使して導出しました.
本記事で紹介したように,定義のモチベーション自体は微積分の基本知識とノルム空間・距離空間の定義のみで理解できるかと思います.
しかし,実際に理論を構築しようとすると,上に挙げた以上の知識が必要になります.
例えば,metric derivativeが存在するような曲線はどんな曲線か?という問題を考えると,その問題への回答の1つとして絶対連続曲線を挙げることができます.
ただ,絶対連続曲線を深くまで理解しようとすると測度論の知識が必要になります.
また,gradient flowを考える距離空間の重要な具体例としてバナッハ空間があり(正確にはノルム空間ですが),バナッハ空間そのものの知識やバナッハ空間に値を持つような測度についての知識があった方が見通しが良くなります.

このように,スタート地点は単純ですが色んな数学の分野とつながりがあり,非常に味わいのある対象だなと感じます.

ここまで読んでいただきありがとうございました.
また気が向いたら自分の勉強した内容を記事にまとめようと思いますので,もしよろしければ見てみてください.

参考文献

[1] 測度距離空間のリッチ曲率と熱流, 太田 慎一.
[2] Gradient Flows In Metric Spaces and in the Space of Probability Measures, Luigi Ambrosio, Nicola Gigli, Giuseppe Savaré.