エンジニアを目指す浪人のブログ

情報系に役立ちそうな応用数理をゆるめにメモします

フレシェ微分が勾配に一致するための条件と,勾配は双対空間の要素であることについて考える

勉強を進めていて,関数解析のフレシェ微分(Fréchet derivative)と数理最適化において不可欠な概念である勾配(gradient)の関係とくにどのような設定においてフレシェ微分は勾配になるのか,またなぜ勾配が双対空間の要素になるのか,についてモヤモヤしてしまったので,調べてまとめておくことにしました.

=================================================================================


問題を設定するため,いくつか準備をします.

ヤコビ行列の定義は以下です(文献[4]にあります).

'--------------------------------------------------------------------------------------------------------------------------------------------
定義 1.

関数 {\displaystyle f : \mathbb{R}^n \to \mathbb{R}^m }{\displaystyle \mathbb{R}^n } 上で偏微分可能であるとする.以下の {\displaystyle m \times n } 行列をヤコビ行列という.

(1.1){\displaystyle \;\;\; J_f(x)  =  \begin{bmatrix} \frac{\partial f_1}{\partial x_1}(x) & \cdots & \frac{\partial f_1}{\partial x_n}(x) \\ \vdots  &  & \vdots \\ \frac{\partial f_m}{\partial x_1}(x) & \cdots & \frac{\partial f_m}{\partial x_n}(x) \end{bmatrix}  }

'--------------------------------------------------------------------------------------------------------------------------------------------


フレシェ微分の定義は以下です(文献[5]にあります).

'--------------------------------------------------------------------------------------------------------------------------------------------
定義 2.
 
ノルム空間 {\displaystyle ( V,\left\| \cdot \right\|_V ), ( W, \left\| \cdot \right\|_W) } を考える.{\displaystyle V } の開部分集合を {\displaystyle U \subseteq V } とする.以下をみたす有界線形作用素 {\displaystyle A:V \to W } が存在するとき,関数 {\displaystyle f:U \to W }{\displaystyle x \in U } でフレシェ微分可能であるという.

(1.2){\displaystyle \;\;\; \lim_{ h \to 0 } = \frac{ \left\| f(x + h) - f(x) - Ah \right\|_W }{ \left\| h \right\|_V } = 0 }

このような {\displaystyle A } が存在するとき一意に定まる.{\displaystyle Df(x)=A } と書き {\displaystyle f }{\displaystyle x } でのフレシェ微分という.以下に注意する.{\displaystyle B(V,W) }{\displaystyle V } から {\displaystyle W } へのすべての有界線形作用素で構成される空間である.

(1.3){\displaystyle \;\;\; Df \;\; : \; U \to B(V,W); \; x \mapsto Df(x) }

(1.4){\displaystyle \;\;\; Df(x) : \; U \to W; \;\;\; h \mapsto Df(x) h }


{\displaystyle V = \mathbb{R}^n, W = \mathbb{R}^m } のとき,フレシェ微分はヤコビ行列である.

(1.5){\displaystyle \;\;\; Df \;\; : \; U \to B(\mathbb{R}^n,\mathbb{R}^m); \; x \mapsto Df(x) }

(1.6){\displaystyle \;\;\; Df(x) : \; U \to \mathbb{R}^m; \;\;\; h \mapsto J_f(x) h \;\;\;\;\;\;( h \in \mathbb{R}^n ) }

'--------------------------------------------------------------------------------------------------------------------------------------------


以上の設定の下で,本記事の目的に進みます.

'--------------------------------------------------------------------------------------------------------------------------------------------
事実.

勾配はフレシェ微分の特別な場合である.
'--------------------------------------------------------------------------------------------------------------------------------------------

以下では,証明というよりもどのようなときに事実.が成り立つのか定義 2.に基づいて考えていきます.


{\displaystyle V = \mathbb{R}^n, \ W = \mathbb{R} } とします.ヤコビ行列は(1.1)で {\displaystyle m = 1 } として以下となります.

(1.7){\displaystyle \;\;\; J_f(x) = \begin{bmatrix} \frac{\partial f}{\partial x_1}(x) & \cdots & \frac{\partial f}{\partial x_n}(x) \end{bmatrix} }

{\displaystyle \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; = \nabla f(x)^T }


ノルム空間 {\displaystyle ( \mathbb{R}^n,\left\| \cdot \right\|_{ \mathbb{R}^n } ), ( \mathbb{R}, \left\| \cdot \right\|_{ \mathbb{R} } ) } を考えます.内積は(まだ)導入していません.

有限次元ベクトル空間においてすべてのノルムは同値(equivalent)であり,同値なノルムは同じ位相を定めます(文献[1][6]にあります).したがって極限(1.2)を考える上で二つのノルム {\displaystyle \left\| \cdot \right\|_{ \mathbb{R}^n }, \ \left\| \cdot \right\|_{ \mathbb{R} } } を具体的に定める必要はありません.

{\displaystyle \mathbb{R}^n } の開部分集合を {\displaystyle U \subseteq \mathbb{R}^n } とします.以下をみたす有界線形作用素 {\displaystyle A :\mathbb{R}^n \to \mathbb{R} } が存在するとき,関数 {\displaystyle f:U \to \mathbb{R} }{\displaystyle x \in U } でフレシェ微分可能であるといいます.

(1.8){\displaystyle \;\;\; \lim_{ h \to 0 } = \frac{ \left\| f(x + h) - f(x) - Ah \right\|_{\mathbb{R}} }{ \left\| h \right\|_{\mathbb{R}^n} } = 0 }

{\displaystyle \;\;\; \Leftrightarrow \lim_{ h \to 0 } = \frac{ \left\| f(x + h) - f(x) - Df(x) h \right\|_{\mathbb{R}} }{ \left\| h \right\|_{\mathbb{R}^n} } = 0 \;\;\; \because } (1.5)

{\displaystyle \;\;\; \Leftrightarrow \lim_{ h \to 0 } = \frac{ \left\| f(x + h) - f(x) - J_f(x) h \right\|_{\mathbb{R}} }{ \left\| h \right\|_{\mathbb{R}^n} } = 0 \;\;\;\; \because } (1.6)

{\displaystyle \;\;\; \Leftrightarrow \lim_{ h \to 0 } = \frac{ \left\| f(x + h) - f(x) - \nabla f(x)^T h \right\|_{\mathbb{R}} }{ \left\| h \right\|_{\mathbb{R}^n} } = 0 \;\;\; \because } (1.7)

{\displaystyle \;\;\; \Leftrightarrow \lim_{ h \to 0 } = \frac{ \left\| f(x + h) - f(x) - \nabla f(x) \cdot h \right\|_{\mathbb{R}} }{ \left\| h \right\|_{\mathbb{R}^n} } = 0 }

したがって以下が成り立ちます.ノルム空間 {\displaystyle ( \mathbb{R}^n,\left\| \cdot \right\|_{ \mathbb{R}^n } ) } 上の関数 {\displaystyle f:U \to \mathbb{R} } の勾配 {\displaystyle \nabla f(x) } は双対空間(dual space)(文献[7]にあります) {\displaystyle \left(  \mathbb{R}^n \right)^* } の要素であることがわかります.

(1.9){\displaystyle \;\;\; (A = \ ) \;\; \nabla f(x) \in B(\mathbb{R}^n, \mathbb{R}) \subseteq \left( \mathbb{R}^n \right)^* }


つぎに通常の内積  {\displaystyle \langle \cdot , \cdot \rangle  } を導入し {\displaystyle \mathbb{R}^n, \mathbb{R} }ヒルベルト空間(Hilbert space)(文献[8]にあります)とします.誘導ノルム(induced norm)は {\displaystyle \left\| \cdot \right\|_{ \mathbb{R}^n } = \left\| \cdot \right\|_2, \; \left\| \cdot \right\|_{ \mathbb{R} } = \left| \cdot \right| } となり,ノルム空間は {\displaystyle ( \mathbb{R}^n, \left\| \cdot \right\|_2 ), ( \mathbb{R}, \left| \cdot \right| ) } です.このときフレシェ微分を定義する極限(1.8)を以下で表すことができます.

(1.10){\displaystyle \;\;\; \nabla f(x) \cdot h = \langle \nabla f(x) , h \rangle }

(1.11){\displaystyle \;\;\; \lim_{ h \to 0 } = \frac{ \left| f(x + h) - f(x) - \langle \nabla f(x) , h \rangle \right| }{ \left\| h \right\|_{2} } = 0 }


ヒルベルト空間  {\displaystyle ( \mathbb{R}^n, \left\| \cdot \right\|_2 ) } の設定の下では別の解釈もあります.有界線形作用素 {\displaystyle A : \mathbb{R}^n \to \mathbb{R} }有界な線形汎関数(linear functional)(文献[9]にあります)とみなすこともできるので,リースの表現定理(Riesz representation theorem)(文献[10]にあります)より,以下をみたすようなただ一つの {\displaystyle g_A \in \mathbb{R}^n } が存在します.

(1.12){\displaystyle \;\;\; A(h) = \langle g_A , h \rangle \;\;\;\; \mathrm{for \ all} \;\; h \in \mathbb{R}^n }

(1.13){\displaystyle \;\;\; \left\| g_A  \right\|_{ \mathbb{R}^n } = \left\| A \right\|_{ \left( \mathbb{R}^n \right)^*  } \;\;\; \left( \; = \left\| A \right\|_{ B(\mathbb{R}^n,\mathbb{R}) } \right)  }

実はこの {\displaystyle g_A \in \mathbb{R}^n } が勾配 {\displaystyle \nabla f(x) } です.ヒルベルト空間 {\displaystyle \mathbb{R}^n } と双対空間 {\displaystyle (\mathbb{R}^n)^* } は(1.12)より一対一に対応していることがわかります.すなわち {\displaystyle A = \nabla f(x) }{\displaystyle g_A = \nabla f(x) } は一対一に対応します.さらに(1.13)よりノルムは等しいので二つの空間は同一視することができます.


最後に,勾配は双対空間の要素であることについて考えます.ノルム空間 {\displaystyle ( \mathbb{R}^n,\left\| \cdot \right\|_{ \mathbb{R}^n } ) } 上の関数 {\displaystyle f:U \to \mathbb{R} } の勾配 {\displaystyle \nabla f(x) } は(1.9)のように双対空間の要素です.他方,ヒルベルト空間のとき双対空間と元の空間を同一視できることから,勾配 {\displaystyle \nabla f(x) } は実質的に元のヒルベルト空間の要素とみなすことができます.

=================================================================================

以上,フレシェ微分が勾配に一致するための条件と,勾配は双対空間の要素であることについて考えてみました.深く考えずに使ってきた勾配の数学的な位置づけについて,イメージし易くなったと思います.



参考文献
[1] Brigham Young University Lennard Bakker 先生のノート https://math.byu.edu/~bakker/Math346/Lectures/M346Lec02.pdf
[2] Carnegie Mellon University Aaditya Ramdas 先生のノート https://www.stat.cmu.edu/~aramdas/martingales18/L9,10-Banach.pdf
[3] 神奈川大学 松澤 寛 先生のノート https://www.sci.kanagawa-u.ac.jp/math-phys/hmatsu/AppliedMath1-12.pdf

[4] Wikipedia Jacobian matrix and determinant のページ https://en.wikipedia.org/wiki/Jacobian_matrix_and_determinant
[5] Wikipedia Fréchet derivative のページ https://en.wikipedia.org/wiki/Fr%C3%A9chet_derivative
[6] Wikipedia Norm (mathematics) のページ https://en.wikipedia.org/wiki/Norm_(mathematics)
[7] Wikipedia Dual space のページ https://en.wikipedia.org/wiki/Dual_space
[8] Wikipedia Hilbert space のページ https://en.wikipedia.org/wiki/Hilbert_space
[9] Wikipedia Linear form のページ https://en.wikipedia.org/wiki/Linear_form
[10] Wikipedia Riesz representation theorem のページ https://en.wikipedia.org/wiki/Riesz_representation_theorem