2. スカラをベクトルで微分の証明

Proofs: Scalar by Vector

2.1 定数の微分

公式:$\displaystyle\frac{\partial a}{\partial \boldsymbol{x}} = \boldsymbol{0}$
条件:$a \in \mathbb{R}$ はスカラ定数、$\boldsymbol{x} \in \mathbb{R}^N$
証明

分母レイアウトでは、スカラ $a$ をベクトル $\boldsymbol{x}$ で微分した結果は、各成分の偏微分を縦に並べた列ベクトルになる。

まず、勾配ベクトルの定義を確認する。スカラ関数をベクトルで微分すると、各成分に関する偏微分を並べたベクトルが得られる。

\begin{equation} \frac{\partial a}{\partial \boldsymbol{x}} = \begin{pmatrix} \displaystyle\frac{\partial a}{\partial x_0} \\[1em] \displaystyle\frac{\partial a}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial a}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-1-1} \end{equation}

ここで、$a$ は定数であることに注意する。定数とは、$x_0, x_1, \ldots, x_{N-1}$ のどの変数にも依存しない値である。

変数に依存しない値を、その変数で微分すると 0 になる。これは微分の基本的な性質である。したがって、各成分について以下が成り立つ。

\begin{equation} \frac{\partial a}{\partial x_k} = 0 \quad (k = 0, 1, \ldots, N-1) \label{eq:2-1-2} \end{equation}

\eqref{eq:2-1-2} を \eqref{eq:2-1-1} に代入すると、すべての成分が 0 になる。

\begin{equation} \frac{\partial a}{\partial \boldsymbol{x}} = \begin{pmatrix} 0 \\ 0 \\ \vdots \\ 0 \end{pmatrix} \label{eq:2-1-3} \end{equation}

すべての成分が 0 であるベクトルは、ゼロベクトル $\boldsymbol{0}$ と呼ばれる。したがって、最終的な結果は次のようになる。

\begin{equation} \frac{\partial a}{\partial \boldsymbol{x}} = \boldsymbol{0} \label{eq:2-1-4} \end{equation}

$\nabla$ 記法について:本資料では $\nabla f = \displaystyle\frac{\partial f}{\partial \boldsymbol{x}}$ は列ベクトルとして定義される(分母レイアウト)。これは機械学習や最適化の文献で標準的である。一方、分子レイアウトでは $\nabla f$ を行ベクトルとして定義することがあるので、文献を参照する際は注意が必要である。

2.2 内積の微分

公式:$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} \boldsymbol{a}^\top \boldsymbol{x} = \boldsymbol{a}$
条件:$\boldsymbol{a} \in \mathbb{R}^N$ は定数ベクトル、$\boldsymbol{x} \in \mathbb{R}^N$
証明

まず、内積 $\boldsymbol{a}^\top \boldsymbol{x}$ の定義を確認する。行ベクトル $\boldsymbol{a}^\top$ と列ベクトル $\boldsymbol{x}$ の積として表される。

\begin{equation} \boldsymbol{a}^\top \boldsymbol{x} = \begin{pmatrix} a_0 & a_1 & \cdots & a_{N-1} \end{pmatrix} \begin{pmatrix} x_0 \\ x_1 \\ \vdots \\ x_{N-1} \end{pmatrix} \label{eq:2-2-1} \end{equation}

行列の積を計算する。行ベクトルと列ベクトルの積は、対応する成分同士の積を足し合わせたスカラになる。

\begin{equation} \boldsymbol{a}^\top \boldsymbol{x} = a_0 x_0 + a_1 x_1 + \cdots + a_{N-1} x_{N-1} \label{eq:2-2-2} \end{equation}

これを総和記号を用いて簡潔に表すと、次のようになる。

\begin{equation} \boldsymbol{a}^\top \boldsymbol{x} = \sum_{n=0}^{N-1} a_n x_n \label{eq:2-2-3} \end{equation}

次に、この式を $x_k$($k$ 番目の成分)で偏微分する。和の中で $x_k$ を含む項は $a_k x_k$ だけであり、それ以外の項($a_n x_n$ で $n \neq k$)は $x_k$ に依存しない。

\begin{equation} \frac{\partial}{\partial x_k} \sum_{n=0}^{N-1} a_n x_n = \frac{\partial}{\partial x_k} (a_0 x_0 + \cdots + a_k x_k + \cdots + a_{N-1} x_{N-1}) \label{eq:2-2-4} \end{equation}

$x_k$ に依存しない項を微分すると 0 になる。したがって、$a_k x_k$ の項だけが残る。

\begin{equation} \frac{\partial}{\partial x_k} \sum_{n=0}^{N-1} a_n x_n = 0 + \cdots + \frac{\partial}{\partial x_k}(a_k x_k) + \cdots + 0 \label{eq:2-2-5} \end{equation}

$a_k$ は定数なので、積の微分において外に出すことができる。$\displaystyle\frac{\partial x_k}{\partial x_k} = 1$ であるから、次の結果を得る。

\begin{equation} \frac{\partial}{\partial x_k}(a_k x_k) = a_k \cdot \frac{\partial x_k}{\partial x_k} = a_k \cdot 1 = a_k \label{eq:2-2-6} \end{equation}

したがって、内積の $x_k$ に関する偏微分は次のようになる。

\begin{equation} \frac{\partial}{\partial x_k} (\boldsymbol{a}^\top \boldsymbol{x}) = a_k \label{eq:2-2-7} \end{equation}

この結果 \eqref{eq:2-2-7} を全ての $k = 0, 1, \ldots, N-1$ についてまとめて、勾配ベクトルを構成する。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (\boldsymbol{a}^\top \boldsymbol{x}) = \begin{pmatrix} \displaystyle\frac{\partial}{\partial x_0} (\boldsymbol{a}^\top \boldsymbol{x}) \\[1em] \displaystyle\frac{\partial}{\partial x_1} (\boldsymbol{a}^\top \boldsymbol{x}) \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial}{\partial x_{N-1}} (\boldsymbol{a}^\top \boldsymbol{x}) \end{pmatrix} = \begin{pmatrix} a_0 \\ a_1 \\ \vdots \\ a_{N-1} \end{pmatrix} \label{eq:2-2-8} \end{equation}

右辺のベクトルは $\boldsymbol{a}$ そのものである。したがって、最終的な結果は次のようになる。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (\boldsymbol{a}^\top \boldsymbol{x}) = \boldsymbol{a} \label{eq:2-2-9} \end{equation}

補足:$\boldsymbol{x}^\top \boldsymbol{a}$ も同じスカラ値なので、$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} \boldsymbol{x}^\top \boldsymbol{a} = \boldsymbol{a}$ である。

2.3 2-ノルムの2乗の微分

公式:$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} \boldsymbol{x}^\top \boldsymbol{x} = 2\boldsymbol{x}$
条件:$\boldsymbol{x} \in \mathbb{R}^N$
証明

まず、$\boldsymbol{x}^\top \boldsymbol{x}$ を成分表示で書き下す。行ベクトル $\boldsymbol{x}^\top$ と列ベクトル $\boldsymbol{x}$ の積である。

\begin{equation} \boldsymbol{x}^\top \boldsymbol{x} = \begin{pmatrix} x_0 & x_1 & \cdots & x_{N-1} \end{pmatrix} \begin{pmatrix} x_0 \\ x_1 \\ \vdots \\ x_{N-1} \end{pmatrix} \label{eq:2-3-1} \end{equation}

行列の積を計算する。対応する成分同士を掛けて足し合わせると、各成分の2乗の和になる。

\begin{equation} \boldsymbol{x}^\top \boldsymbol{x} = x_0 \cdot x_0 + x_1 \cdot x_1 + \cdots + x_{N-1} \cdot x_{N-1} \label{eq:2-3-2} \end{equation}

これを整理すると、次のように表せる。

\begin{equation} \boldsymbol{x}^\top \boldsymbol{x} = x_0^2 + x_1^2 + \cdots + x_{N-1}^2 \label{eq:2-3-3} \end{equation}

総和記号を用いて簡潔に表すと、次のようになる。これは 2-ノルムの2乗 $\|\boldsymbol{x}\|_2^2$ に等しい。

\begin{equation} \boldsymbol{x}^\top \boldsymbol{x} = \sum_{n=0}^{N-1} x_n^2 = \|\boldsymbol{x}\|_2^2 \label{eq:2-3-4} \end{equation}

次に、この式を $x_k$($k$ 番目の成分)で偏微分する。和の中で $x_k$ を含む項は $x_k^2$ だけである。

\begin{equation} \frac{\partial}{\partial x_k} \sum_{n=0}^{N-1} x_n^2 = \frac{\partial}{\partial x_k} (x_0^2 + \cdots + x_k^2 + \cdots + x_{N-1}^2) \label{eq:2-3-5} \end{equation}

$x_k$ に依存しない項($x_n^2$ で $n \neq k$)を微分すると 0 になる。したがって、$x_k^2$ の項だけが残る。

\begin{equation} \frac{\partial}{\partial x_k} \sum_{n=0}^{N-1} x_n^2 = 0 + \cdots + \frac{\partial}{\partial x_k}(x_k^2) + \cdots + 0 \label{eq:2-3-6} \end{equation}

べき乗の微分公式(1.18)を適用する。$\displaystyle\frac{d}{dx}(x^n) = n x^{n-1}$ において $n = 2$ とすると、次を得る。

\begin{equation} \frac{\partial}{\partial x_k}(x_k^2) = 2 x_k^{2-1} = 2x_k \label{eq:2-3-7} \end{equation}

この結果 \eqref{eq:2-3-7} を全ての $k = 0, 1, \ldots, N-1$ についてまとめて、勾配ベクトルを構成する。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (\boldsymbol{x}^\top \boldsymbol{x}) = \begin{pmatrix} 2x_0 \\ 2x_1 \\ \vdots \\ 2x_{N-1} \end{pmatrix} \label{eq:2-3-8} \end{equation}

共通因子 2 をくくり出すと、次のように整理できる。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (\boldsymbol{x}^\top \boldsymbol{x}) = 2 \begin{pmatrix} x_0 \\ x_1 \\ \vdots \\ x_{N-1} \end{pmatrix} \label{eq:2-3-9} \end{equation}

右辺の列ベクトルは $\boldsymbol{x}$ そのものである。したがって、最終的な結果は次のようになる。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (\boldsymbol{x}^\top \boldsymbol{x}) = 2\boldsymbol{x} \label{eq:2-3-10} \end{equation}

2.4 バイリニア形式(双線形形式)

公式:$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} (\boldsymbol{b}^\top \boldsymbol{A} \boldsymbol{x}) = \boldsymbol{A}^\top \boldsymbol{b}$
条件:$\boldsymbol{A} \in \mathbb{R}^{M \times N}$ は定数行列、$\boldsymbol{b} \in \mathbb{R}^M$ は定数ベクトル、$\boldsymbol{x} \in \mathbb{R}^N$
証明

まず、$\boldsymbol{A}\boldsymbol{x}$ を成分で計算する。$\boldsymbol{A}$ は $M \times N$ 行列、$\boldsymbol{x}$ は $N$ 次元列ベクトルなので、結果は $M$ 次元列ベクトルになる。

\begin{equation} (\boldsymbol{A}\boldsymbol{x})_i = \sum_{j=0}^{N-1} A_{ij} x_j \quad (i = 0, 1, \ldots, M-1) \label{eq:2-4-1} \end{equation}

つまり、$\boldsymbol{A}\boldsymbol{x}$ の第 $i$ 成分は、$\boldsymbol{A}$ の第 $i$ 行と $\boldsymbol{x}$ の内積である。

次に、$\boldsymbol{b}^\top (\boldsymbol{A}\boldsymbol{x})$ を計算する。これは $M$ 次元ベクトル同士の内積である。

\begin{equation} \boldsymbol{b}^\top (\boldsymbol{A}\boldsymbol{x}) = \sum_{i=0}^{M-1} b_i \cdot (\boldsymbol{A}\boldsymbol{x})_i \label{eq:2-4-2} \end{equation}

\eqref{eq:2-4-1} を \eqref{eq:2-4-2} に代入する。

\begin{equation} \boldsymbol{b}^\top \boldsymbol{A} \boldsymbol{x} = \sum_{i=0}^{M-1} b_i \cdot \left( \sum_{j=0}^{N-1} A_{ij} x_j \right) \label{eq:2-4-3} \end{equation}

和の順序を入れ替えて、二重和を1つの式にまとめる。$b_i$ は $j$ に依存しないので、内側の和に入れることができる。

\begin{equation} \boldsymbol{b}^\top \boldsymbol{A} \boldsymbol{x} = \sum_{i=0}^{M-1} \sum_{j=0}^{N-1} b_i A_{ij} x_j \label{eq:2-4-4} \end{equation}

この式を $x_k$($k$ 番目の成分)で偏微分する。微分は線形作用素なので、和と順序を交換できる。

\begin{equation} \frac{\partial}{\partial x_k} \left( \sum_{i=0}^{M-1} \sum_{j=0}^{N-1} b_i A_{ij} x_j \right) = \sum_{i=0}^{M-1} \sum_{j=0}^{N-1} b_i A_{ij} \frac{\partial x_j}{\partial x_k} \label{eq:2-4-5} \end{equation}

ここで、$\displaystyle\frac{\partial x_j}{\partial x_k}$ はKroneckerのデルタと等しい。これは $j = k$ のとき 1、それ以外のとき 0 になる。

\begin{equation} \frac{\partial x_j}{\partial x_k} = \delta_{jk} = \begin{cases} 1 & (j = k \text{ のとき}) \\ 0 & (j \neq k \text{ のとき}) \end{cases} \label{eq:2-4-6} \end{equation}

\eqref{eq:2-4-6} を \eqref{eq:2-4-5} に代入する。$\delta_{jk}$ により、$j = k$ の項だけが残る。

\begin{equation} \frac{\partial}{\partial x_k} (\boldsymbol{b}^\top \boldsymbol{A} \boldsymbol{x}) = \sum_{i=0}^{M-1} \sum_{j=0}^{N-1} b_i A_{ij} \delta_{jk} \label{eq:2-4-7} \end{equation}

$j$ についての和でデルタ関数を適用すると、$j = k$ の項のみが選ばれる。

\begin{equation} \frac{\partial}{\partial x_k} (\boldsymbol{b}^\top \boldsymbol{A} \boldsymbol{x}) = \sum_{i=0}^{M-1} b_i A_{ik} \label{eq:2-4-8} \end{equation}

この結果を行列の積として解釈する。$\sum_{i=0}^{M-1} b_i A_{ik}$ は、行ベクトル $\boldsymbol{b}^\top$ と行列 $\boldsymbol{A}$ の第 $k$ 列との内積である。これが $(\boldsymbol{A}^\top \boldsymbol{b})_k$ と等しいことを確認する。

$\boldsymbol{A}^\top$ の第 $k$ 行は $\boldsymbol{A}$ の第 $k$ 列を転置したものである。転置の定義 $(\boldsymbol{A}^\top)_{ki} = A_{ik}$ を使うと、次のようになる。

\begin{equation} (\boldsymbol{A}^\top \boldsymbol{b})_k = \sum_{i=0}^{M-1} (\boldsymbol{A}^\top)_{ki} b_i = \sum_{i=0}^{M-1} A_{ik} b_i \label{eq:2-4-9} \end{equation}

積の順序を入れ替えると、\eqref{eq:2-4-8} と一致することがわかる。

\begin{equation} (\boldsymbol{A}^\top \boldsymbol{b})_k = \sum_{i=0}^{M-1} b_i A_{ik} \label{eq:2-4-10} \end{equation}

したがって、$x_k$ に関する偏微分は次のようになる。

\begin{equation} \frac{\partial}{\partial x_k} (\boldsymbol{b}^\top \boldsymbol{A} \boldsymbol{x}) = (\boldsymbol{A}^\top \boldsymbol{b})_k \label{eq:2-4-11} \end{equation}

この結果を全ての $k = 0, 1, \ldots, N-1$ についてまとめると、最終的な結果を得る。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (\boldsymbol{b}^\top \boldsymbol{A} \boldsymbol{x}) = \boldsymbol{A}^\top \boldsymbol{b} \label{eq:2-4-12} \end{equation}

補足:$\boldsymbol{A} = \boldsymbol{I}$(単位行列)のとき、$\boldsymbol{A}^\top \boldsymbol{b} = \boldsymbol{I} \boldsymbol{b} = \boldsymbol{b}$ となり、内積の公式(2.2)と一致する。

2.5 二次形式

公式:$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} (\boldsymbol{x}^\top \boldsymbol{A} \boldsymbol{x}) = (\boldsymbol{A} + \boldsymbol{A}^\top) \boldsymbol{x}$
条件:$\boldsymbol{A} \in \mathbb{R}^{N \times N}$ は定数行列、$\boldsymbol{x} \in \mathbb{R}^N$
証明

まず、二次形式 $\boldsymbol{x}^\top \boldsymbol{A} \boldsymbol{x}$ を成分で書き下す。$\boldsymbol{A}\boldsymbol{x}$ の第 $i$ 成分は $\sum_{j=0}^{N-1} A_{ij} x_j$ である。

\begin{equation} \boldsymbol{x}^\top \boldsymbol{A} \boldsymbol{x} = \boldsymbol{x}^\top (\boldsymbol{A} \boldsymbol{x}) \label{eq:2-5-1} \end{equation}

内積の定義に従って展開する。

\begin{equation} \boldsymbol{x}^\top (\boldsymbol{A} \boldsymbol{x}) = \sum_{i=0}^{N-1} x_i \cdot (\boldsymbol{A}\boldsymbol{x})_i \label{eq:2-5-2} \end{equation}

$(\boldsymbol{A}\boldsymbol{x})_i$ の定義を代入する。

\begin{equation} \boldsymbol{x}^\top \boldsymbol{A} \boldsymbol{x} = \sum_{i=0}^{N-1} x_i \cdot \left( \sum_{j=0}^{N-1} A_{ij} x_j \right) \label{eq:2-5-3} \end{equation}

括弧を外して、二重和にまとめる。

\begin{equation} \boldsymbol{x}^\top \boldsymbol{A} \boldsymbol{x} = \sum_{i=0}^{N-1} \sum_{j=0}^{N-1} A_{ij} x_i x_j \label{eq:2-5-4} \end{equation}

この式を $x_k$($k$ 番目の成分)で偏微分する。二重和の各項 $A_{ij} x_i x_j$ について、$x_k$ が現れるのは $i = k$ または $j = k$ のときである。

積の微分公式(Leibniz則、1.25)を使う。$\displaystyle\frac{\partial x_i}{\partial x_k} = \delta_{ik}$(Kroneckerのデルタ)であることに注意する。

\begin{equation} \frac{\partial (x_i x_j)}{\partial x_k} = \frac{\partial x_i}{\partial x_k} \cdot x_j + x_i \cdot \frac{\partial x_j}{\partial x_k} = \delta_{ik} x_j + x_i \delta_{jk} \label{eq:2-5-5} \end{equation}

この結果を二重和に適用する。$A_{ij}$ は定数なので、微分の外に出せる。

\begin{equation} \frac{\partial}{\partial x_k} (\boldsymbol{x}^\top \boldsymbol{A} \boldsymbol{x}) = \sum_{i=0}^{N-1} \sum_{j=0}^{N-1} A_{ij} (\delta_{ik} x_j + x_i \delta_{jk}) \label{eq:2-5-6} \end{equation}

和を2つの部分に分ける。

\begin{equation} \frac{\partial}{\partial x_k} (\boldsymbol{x}^\top \boldsymbol{A} \boldsymbol{x}) = \sum_{i=0}^{N-1} \sum_{j=0}^{N-1} A_{ij} \delta_{ik} x_j + \sum_{i=0}^{N-1} \sum_{j=0}^{N-1} A_{ij} x_i \delta_{jk} \label{eq:2-5-7} \end{equation}

第1項を計算する。$\delta_{ik} = 1$ となるのは $i = k$ のときだけなので、$i$ についての和でデルタ関数を適用すると、$i = k$ の項のみが選ばれる。

\begin{equation} \sum_{i=0}^{N-1} \sum_{j=0}^{N-1} A_{ij} \delta_{ik} x_j = \sum_{j=0}^{N-1} A_{kj} x_j \label{eq:2-5-8} \end{equation}

これは $(\boldsymbol{A}\boldsymbol{x})_k$、すなわち $\boldsymbol{A}\boldsymbol{x}$ の第 $k$ 成分である。

\begin{equation} \sum_{j=0}^{N-1} A_{kj} x_j = (\boldsymbol{A}\boldsymbol{x})_k \label{eq:2-5-9} \end{equation}

第2項を計算する。$\delta_{jk} = 1$ となるのは $j = k$ のときだけなので、$j$ についての和でデルタ関数を適用する。

\begin{equation} \sum_{i=0}^{N-1} \sum_{j=0}^{N-1} A_{ij} x_i \delta_{jk} = \sum_{i=0}^{N-1} A_{ik} x_i \label{eq:2-5-10} \end{equation}

第2項を $\boldsymbol{A}^\top \boldsymbol{x}$ の成分として解釈する。転置の定義 $(\boldsymbol{A}^\top)_{ki} = A_{ik}$ を使う。

\begin{equation} (\boldsymbol{A}^\top \boldsymbol{x})_k = \sum_{i=0}^{N-1} (\boldsymbol{A}^\top)_{ki} x_i = \sum_{i=0}^{N-1} A_{ik} x_i \label{eq:2-5-11} \end{equation}

\eqref{eq:2-5-10} と \eqref{eq:2-5-11} を比較すると、両者は等しいことがわかる。

\begin{equation} \sum_{i=0}^{N-1} A_{ik} x_i = (\boldsymbol{A}^\top \boldsymbol{x})_k \label{eq:2-5-12} \end{equation}

\eqref{eq:2-5-7} に \eqref{eq:2-5-9} と \eqref{eq:2-5-12} を代入する。

\begin{equation} \frac{\partial}{\partial x_k} (\boldsymbol{x}^\top \boldsymbol{A} \boldsymbol{x}) = (\boldsymbol{A}\boldsymbol{x})_k + (\boldsymbol{A}^\top \boldsymbol{x})_k \label{eq:2-5-13} \end{equation}

右辺を行列の和として整理する。

\begin{equation} (\boldsymbol{A}\boldsymbol{x})_k + (\boldsymbol{A}^\top \boldsymbol{x})_k = ((\boldsymbol{A} + \boldsymbol{A}^\top) \boldsymbol{x})_k \label{eq:2-5-14} \end{equation}

この結果を全ての $k = 0, 1, \ldots, N-1$ についてまとめると、最終的な結果を得る。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (\boldsymbol{x}^\top \boldsymbol{A} \boldsymbol{x}) = (\boldsymbol{A} + \boldsymbol{A}^\top) \boldsymbol{x} \label{eq:2-5-15} \end{equation}

補足1:$\boldsymbol{A}$ が対称行列($\boldsymbol{A} = \boldsymbol{A}^\top$)の場合は、$\boldsymbol{A} + \boldsymbol{A}^\top = 2\boldsymbol{A}$ なので、 $$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} (\boldsymbol{x}^\top \boldsymbol{A} \boldsymbol{x}) = 2\boldsymbol{A}\boldsymbol{x}$$ となる。

補足2:$\boldsymbol{A} = \boldsymbol{I}$(単位行列)のとき、$\boldsymbol{I} + \boldsymbol{I}^\top = 2\boldsymbol{I}$ なので、 $$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} (\boldsymbol{x}^\top \boldsymbol{x}) = 2\boldsymbol{I}\boldsymbol{x} = 2\boldsymbol{x}$$ となり、公式(2.3)と一致する。

2.6 2-ノルムの微分

公式:$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} \|\boldsymbol{x} - \boldsymbol{a}\| = \displaystyle\frac{\boldsymbol{x} - \boldsymbol{a}}{\|\boldsymbol{x} - \boldsymbol{a}\|}$
条件:$\boldsymbol{a} \in \mathbb{R}^N$ は定数ベクトル、$\boldsymbol{x} \in \mathbb{R}^N$、$\boldsymbol{x} \neq \boldsymbol{a}$
証明

まず、2-ノルム $\|\boldsymbol{x} - \boldsymbol{a}\|$ を定義に従って書き下す。

\begin{equation} \|\boldsymbol{x} - \boldsymbol{a}\| = \sqrt{(\boldsymbol{x} - \boldsymbol{a})^\top (\boldsymbol{x} - \boldsymbol{a})} \label{eq:2-6-1} \end{equation}

成分表示に展開すると、次のようになる。

\begin{equation} \|\boldsymbol{x} - \boldsymbol{a}\| = \sqrt{\sum_{i=0}^{N-1} (x_i - a_i)^2} \label{eq:2-6-2} \end{equation}

表記を簡単にするため、$u = \|\boldsymbol{x} - \boldsymbol{a}\|^2$ とおく。

\begin{equation} u = \|\boldsymbol{x} - \boldsymbol{a}\|^2 = \sum_{i=0}^{N-1} (x_i - a_i)^2 \label{eq:2-6-3} \end{equation}

すると、$\|\boldsymbol{x} - \boldsymbol{a}\| = \sqrt{u} = u^{1/2}$ と書ける。

\begin{equation} \|\boldsymbol{x} - \boldsymbol{a}\| = u^{1/2} \label{eq:2-6-4} \end{equation}

$u^{1/2}$ を $x_k$ で偏微分する。合成関数の微分(連鎖律、1.26)を使う。

\begin{equation} \frac{\partial}{\partial x_k} (u^{1/2}) = \frac{d}{du}(u^{1/2}) \cdot \frac{\partial u}{\partial x_k} \label{eq:2-6-5} \end{equation}

まず、$\displaystyle\frac{d}{du}(u^{1/2})$ を計算する。べき乗の微分公式(1.19)$\displaystyle\frac{d}{du}(u^n) = n u^{n-1}$ を適用する。

\begin{equation} \frac{d}{du}(u^{1/2}) = \frac{1}{2} u^{1/2 - 1} = \frac{1}{2} u^{-1/2} \label{eq:2-6-6} \end{equation}

これを元の変数で表すと、次のようになる。

\begin{equation} \frac{1}{2} u^{-1/2} = \frac{1}{2\sqrt{u}} = \frac{1}{2\|\boldsymbol{x} - \boldsymbol{a}\|} \label{eq:2-6-7} \end{equation}

次に、$\displaystyle\frac{\partial u}{\partial x_k}$ を計算する。$u$ の定義 \eqref{eq:2-6-3} より、

\begin{equation} \frac{\partial u}{\partial x_k} = \frac{\partial}{\partial x_k} \sum_{i=0}^{N-1} (x_i - a_i)^2 \label{eq:2-6-8} \end{equation}

和の中で $x_k$ を含む項は $(x_k - a_k)^2$ だけである。他の項は $x_k$ に依存しないので、微分すると 0 になる。

\begin{equation} \frac{\partial u}{\partial x_k} = \frac{\partial}{\partial x_k} (x_k - a_k)^2 \label{eq:2-6-9} \end{equation}

$(x_k - a_k)^2$ を $x_k$ で微分する。連鎖律(1.26)を適用する。

\begin{equation} \frac{\partial}{\partial x_k} (x_k - a_k)^2 = 2(x_k - a_k) \cdot \frac{\partial}{\partial x_k}(x_k - a_k) \label{eq:2-6-10} \end{equation}

$a_k$ は定数なので、$\displaystyle\frac{\partial}{\partial x_k}(x_k - a_k) = 1$ である。

\begin{equation} \frac{\partial}{\partial x_k} (x_k - a_k)^2 = 2(x_k - a_k) \cdot 1 = 2(x_k - a_k) \label{eq:2-6-11} \end{equation}

\eqref{eq:2-6-5} に \eqref{eq:2-6-7} と \eqref{eq:2-6-11} を代入する。

\begin{equation} \frac{\partial}{\partial x_k} \|\boldsymbol{x} - \boldsymbol{a}\| = \frac{1}{2\|\boldsymbol{x} - \boldsymbol{a}\|} \cdot 2(x_k - a_k) \label{eq:2-6-12} \end{equation}

分子の 2 と分母の 2 が約分される。

\begin{equation} \frac{\partial}{\partial x_k} \|\boldsymbol{x} - \boldsymbol{a}\| = \frac{x_k - a_k}{\|\boldsymbol{x} - \boldsymbol{a}\|} \label{eq:2-6-13} \end{equation}

この結果を全ての $k = 0, 1, \ldots, N-1$ についてまとめて、勾配ベクトルを構成する。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} \|\boldsymbol{x} - \boldsymbol{a}\| = \begin{pmatrix} \displaystyle\frac{x_0 - a_0}{\|\boldsymbol{x} - \boldsymbol{a}\|} \\[1em] \displaystyle\frac{x_1 - a_1}{\|\boldsymbol{x} - \boldsymbol{a}\|} \\[1em] \vdots \\[0.5em] \displaystyle\frac{x_{N-1} - a_{N-1}}{\|\boldsymbol{x} - \boldsymbol{a}\|} \end{pmatrix} \label{eq:2-6-14} \end{equation}

分母 $\|\boldsymbol{x} - \boldsymbol{a}\|$ は全ての成分で共通なので、スカラとしてくくり出せる。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} \|\boldsymbol{x} - \boldsymbol{a}\| = \frac{1}{\|\boldsymbol{x} - \boldsymbol{a}\|} \begin{pmatrix} x_0 - a_0 \\ x_1 - a_1 \\ \vdots \\ x_{N-1} - a_{N-1} \end{pmatrix} \label{eq:2-6-15} \end{equation}

右辺の列ベクトルは $\boldsymbol{x} - \boldsymbol{a}$ そのものである。したがって、最終的な結果は次のようになる。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} \|\boldsymbol{x} - \boldsymbol{a}\| = \frac{\boldsymbol{x} - \boldsymbol{a}}{\|\boldsymbol{x} - \boldsymbol{a}\|} \label{eq:2-6-16} \end{equation}

補足1:この結果 $\displaystyle\frac{\boldsymbol{x} - \boldsymbol{a}}{\|\boldsymbol{x} - \boldsymbol{a}\|}$ は、$\boldsymbol{a}$ から $\boldsymbol{x}$ への方向を向く単位ベクトルである。

補足2:$\boldsymbol{a} = \boldsymbol{0}$ の場合は $\displaystyle\frac{\boldsymbol{x}}{\|\boldsymbol{x}\|}$ となる。

$\boldsymbol{x} = \boldsymbol{a}$ での非微分可能性:$\boldsymbol{x} = \boldsymbol{a}$ では分母が 0 になり、勾配が定義されない。幾何的には、ノルム関数はこの点で「折れ曲がる」ため、一意な接線方向が存在しない。最適化の文脈では、この点での勾配の代わりに劣勾配(subgradient)の集合 $\{\boldsymbol{g} : \|\boldsymbol{g}\| \leq 1\}$ が用いられる。

2.7 2-ノルムの2乗の微分

公式:$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} \|\boldsymbol{x} - \boldsymbol{a}\|^2 = 2(\boldsymbol{x} - \boldsymbol{a})$
条件:$\boldsymbol{a} \in \mathbb{R}^N$ は定数ベクトル、$\boldsymbol{x} \in \mathbb{R}^N$
証明

まず、$\|\boldsymbol{x} - \boldsymbol{a}\|^2$ を内積の形で表す。

\begin{equation} \|\boldsymbol{x} - \boldsymbol{a}\|^2 = (\boldsymbol{x} - \boldsymbol{a})^\top (\boldsymbol{x} - \boldsymbol{a}) \label{eq:2-7-1} \end{equation}

表記を簡単にするため、ベクトル値関数 $\boldsymbol{f}(\boldsymbol{x}) = \boldsymbol{x} - \boldsymbol{a}$ を定義する。

\begin{equation} \boldsymbol{f}(\boldsymbol{x}) = \boldsymbol{x} - \boldsymbol{a} \label{eq:2-7-2} \end{equation}

すると、\eqref{eq:2-7-1} は次のように書ける。

\begin{equation} \|\boldsymbol{x} - \boldsymbol{a}\|^2 = \boldsymbol{f}(\boldsymbol{x})^\top \boldsymbol{f}(\boldsymbol{x}) \label{eq:2-7-3} \end{equation}

$\boldsymbol{a}$ は定数なので、$\boldsymbol{f}(\boldsymbol{x})$ のJacobi行列を計算すると、単位行列になる。

\begin{equation} \frac{\partial \boldsymbol{f}(\boldsymbol{x})}{\partial \boldsymbol{x}} = \boldsymbol{I} \label{eq:2-7-4} \end{equation}

公式(2.3)より、$\displaystyle\frac{\partial}{\partial \boldsymbol{f}} (\boldsymbol{f}^\top \boldsymbol{f}) = 2\boldsymbol{f}$ である。

\begin{equation} \frac{\partial}{\partial \boldsymbol{f}} (\boldsymbol{f}^\top \boldsymbol{f}) = 2\boldsymbol{f} \label{eq:2-7-5} \end{equation}

合成関数の微分(連鎖律、1.26)を適用する。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} \|\boldsymbol{x} - \boldsymbol{a}\|^2 = \frac{\partial \boldsymbol{f}(\boldsymbol{x})}{\partial \boldsymbol{x}} \cdot \frac{\partial}{\partial \boldsymbol{f}} (\boldsymbol{f}^\top \boldsymbol{f}) \label{eq:2-7-6} \end{equation}

\eqref{eq:2-7-4} と \eqref{eq:2-7-5} を \eqref{eq:2-7-6} に代入する。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} \|\boldsymbol{x} - \boldsymbol{a}\|^2 = \boldsymbol{I} \cdot 2\boldsymbol{f}(\boldsymbol{x}) \label{eq:2-7-7} \end{equation}

単位行列とベクトルの積はそのベクトル自身になる。

\begin{equation} \boldsymbol{I} \cdot 2\boldsymbol{f}(\boldsymbol{x}) = 2\boldsymbol{f}(\boldsymbol{x}) \label{eq:2-7-8} \end{equation}

$\boldsymbol{f}(\boldsymbol{x})$ の定義 \eqref{eq:2-7-2} を代入すると、最終的な結果を得る。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} \|\boldsymbol{x} - \boldsymbol{a}\|^2 = 2(\boldsymbol{x} - \boldsymbol{a}) \label{eq:2-7-9} \end{equation}

補足:公式(2.6)と比較すると、ノルムの2乗は $\boldsymbol{x} = \boldsymbol{a}$ でも微分可能である。これは、$\|\cdot\|^2$ は滑らかな関数(どこでも微分可能)であるためである。

2.8 内積(ドット積)の微分

公式:$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} (\boldsymbol{f}(\boldsymbol{x})^\top \boldsymbol{g}(\boldsymbol{x})) = \displaystyle\frac{\partial \boldsymbol{f}(\boldsymbol{x})}{\partial \boldsymbol{x}} \boldsymbol{g}(\boldsymbol{x}) + \displaystyle\frac{\partial \boldsymbol{g}(\boldsymbol{x})}{\partial \boldsymbol{x}} \boldsymbol{f}(\boldsymbol{x})$
条件:$\boldsymbol{f}: \mathbb{R}^N \to \mathbb{R}^M$、$\boldsymbol{g}: \mathbb{R}^N \to \mathbb{R}^M$ はベクトル値関数、$\boldsymbol{x} \in \mathbb{R}^N$
証明

内積 $\boldsymbol{f}(\boldsymbol{x})^\top \boldsymbol{g}(\boldsymbol{x})$ を成分で書き下す。$\boldsymbol{f}(\boldsymbol{x})$ の第 $m$ 成分を $f_m(\boldsymbol{x})$、$\boldsymbol{g}(\boldsymbol{x})$ の第 $m$ 成分を $g_m(\boldsymbol{x})$ と書く。

\begin{equation} \boldsymbol{f}(\boldsymbol{x})^\top \boldsymbol{g}(\boldsymbol{x}) = \sum_{m=0}^{M-1} f_m(\boldsymbol{x}) g_m(\boldsymbol{x}) \label{eq:2-8-1} \end{equation}

この式を $x_n$($\boldsymbol{x}$ の第 $n$ 成分)で偏微分する。

\begin{equation} \frac{\partial}{\partial x_n} (\boldsymbol{f}(\boldsymbol{x})^\top \boldsymbol{g}(\boldsymbol{x})) = \frac{\partial}{\partial x_n} \sum_{m=0}^{M-1} f_m(\boldsymbol{x}) g_m(\boldsymbol{x}) \label{eq:2-8-2} \end{equation}

微分は線形作用素なので、和と順序を交換できる。

\begin{equation} \frac{\partial}{\partial x_n} (\boldsymbol{f}(\boldsymbol{x})^\top \boldsymbol{g}(\boldsymbol{x})) = \sum_{m=0}^{M-1} \frac{\partial}{\partial x_n} (f_m(\boldsymbol{x}) g_m(\boldsymbol{x})) \label{eq:2-8-3} \end{equation}

各項 $f_m(\boldsymbol{x}) g_m(\boldsymbol{x})$ に積の微分法則(Leibniz則、1.25)を適用する。

\begin{equation} \frac{\partial}{\partial x_n} (f_m(\boldsymbol{x}) g_m(\boldsymbol{x})) = \frac{\partial f_m(\boldsymbol{x})}{\partial x_n} g_m(\boldsymbol{x}) + f_m(\boldsymbol{x}) \frac{\partial g_m(\boldsymbol{x})}{\partial x_n} \label{eq:2-8-4} \end{equation}

\eqref{eq:2-8-4} を \eqref{eq:2-8-3} に代入する。

\begin{equation} \frac{\partial}{\partial x_n} (\boldsymbol{f}(\boldsymbol{x})^\top \boldsymbol{g}(\boldsymbol{x})) = \sum_{m=0}^{M-1} \left( \frac{\partial f_m(\boldsymbol{x})}{\partial x_n} g_m(\boldsymbol{x}) + f_m(\boldsymbol{x}) \frac{\partial g_m(\boldsymbol{x})}{\partial x_n} \right) \label{eq:2-8-5} \end{equation}

和を2つに分ける。

\begin{equation} \frac{\partial}{\partial x_n} (\boldsymbol{f}(\boldsymbol{x})^\top \boldsymbol{g}(\boldsymbol{x})) = \sum_{m=0}^{M-1} \frac{\partial f_m(\boldsymbol{x})}{\partial x_n} g_m(\boldsymbol{x}) + \sum_{m=0}^{M-1} f_m(\boldsymbol{x}) \frac{\partial g_m(\boldsymbol{x})}{\partial x_n} \label{eq:2-8-6} \end{equation}

第1項を行列の積として解釈する。$\displaystyle\frac{\partial \boldsymbol{f}(\boldsymbol{x})}{\partial \boldsymbol{x}}$ は $N \times M$ 行列で、その $(n, m)$ 成分は $\displaystyle\frac{\partial f_m(\boldsymbol{x})}{\partial x_n}$ である。

\begin{equation} \left(\frac{\partial \boldsymbol{f}(\boldsymbol{x})}{\partial \boldsymbol{x}}\right)_{nm} = \frac{\partial f_m(\boldsymbol{x})}{\partial x_n} \label{eq:2-8-7} \end{equation}

この行列と $\boldsymbol{g}(\boldsymbol{x})$ の積の第 $n$ 成分は、第1項の和と等しい。

\begin{equation} \left(\frac{\partial \boldsymbol{f}(\boldsymbol{x})}{\partial \boldsymbol{x}} \boldsymbol{g}(\boldsymbol{x})\right)_n = \sum_{m=0}^{M-1} \frac{\partial f_m(\boldsymbol{x})}{\partial x_n} g_m(\boldsymbol{x}) \label{eq:2-8-8} \end{equation}

同様に、第2項は次のように解釈できる。

\begin{equation} \left(\frac{\partial \boldsymbol{g}(\boldsymbol{x})}{\partial \boldsymbol{x}} \boldsymbol{f}(\boldsymbol{x})\right)_n = \sum_{m=0}^{M-1} \frac{\partial g_m(\boldsymbol{x})}{\partial x_n} f_m(\boldsymbol{x}) \label{eq:2-8-9} \end{equation}

スカラの積は可換なので、$f_m(\boldsymbol{x}) \displaystyle\frac{\partial g_m(\boldsymbol{x})}{\partial x_n} = \displaystyle\frac{\partial g_m(\boldsymbol{x})}{\partial x_n} f_m(\boldsymbol{x})$ である。

\eqref{eq:2-8-6} の第1項と第2項を \eqref{eq:2-8-8} と \eqref{eq:2-8-9} で置き換える。

\begin{equation} \frac{\partial}{\partial x_n} (\boldsymbol{f}(\boldsymbol{x})^\top \boldsymbol{g}(\boldsymbol{x})) = \left(\frac{\partial \boldsymbol{f}(\boldsymbol{x})}{\partial \boldsymbol{x}} \boldsymbol{g}(\boldsymbol{x})\right)_n + \left(\frac{\partial \boldsymbol{g}(\boldsymbol{x})}{\partial \boldsymbol{x}} \boldsymbol{f}(\boldsymbol{x})\right)_n \label{eq:2-8-10} \end{equation}

この結果を全ての $n = 0, 1, \ldots, N-1$ についてまとめると、最終的な結果を得る。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (\boldsymbol{f}(\boldsymbol{x})^\top \boldsymbol{g}(\boldsymbol{x})) = \frac{\partial \boldsymbol{f}(\boldsymbol{x})}{\partial \boldsymbol{x}} \boldsymbol{g}(\boldsymbol{x}) + \frac{\partial \boldsymbol{g}(\boldsymbol{x})}{\partial \boldsymbol{x}} \boldsymbol{f}(\boldsymbol{x}) \label{eq:2-8-11} \end{equation}

次元の確認
  • $\displaystyle\frac{\partial \boldsymbol{f}(\boldsymbol{x})}{\partial \boldsymbol{x}} \in \mathbb{R}^{N \times M}$($N$ 行 $M$ 列の行列)
  • $\boldsymbol{g}(\boldsymbol{x}) \in \mathbb{R}^M$($M$ 次元列ベクトル)
  • 積 $\displaystyle\frac{\partial \boldsymbol{f}(\boldsymbol{x})}{\partial \boldsymbol{x}} \boldsymbol{g}(\boldsymbol{x}) \in \mathbb{R}^N$($N$ 次元列ベクトル)
したがって、結果は $N$ 次元列ベクトルで、勾配ベクトルの次元と一致する。

2.9 スカラ関数の積の微分

公式:$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} (f(\boldsymbol{x}) g(\boldsymbol{x})) = f(\boldsymbol{x}) \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial \boldsymbol{x}} + g(\boldsymbol{x}) \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}}$
条件:$f: \mathbb{R}^N \to \mathbb{R}$、$g: \mathbb{R}^N \to \mathbb{R}$ はスカラ関数、$\boldsymbol{x} \in \mathbb{R}^N$
証明

勾配ベクトルの第 $n$ 成分を考える。積 $f(\boldsymbol{x}) g(\boldsymbol{x})$ を $x_n$ で偏微分する。

通常の積の微分法則(Leibniz則、1.25)を適用する。

\begin{equation} \frac{\partial (f(\boldsymbol{x}) g(\boldsymbol{x}))}{\partial x_n} = \frac{\partial f(\boldsymbol{x})}{\partial x_n} \cdot g(\boldsymbol{x}) + f(\boldsymbol{x}) \cdot \frac{\partial g(\boldsymbol{x})}{\partial x_n} \label{eq:2-9-1} \end{equation}

この結果を全ての $n = 0, 1, \ldots, N-1$ についてまとめて、勾配ベクトルを構成する。

\begin{equation} \frac{\partial (f(\boldsymbol{x}) g(\boldsymbol{x}))}{\partial \boldsymbol{x}} = \begin{pmatrix} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_0} g(\boldsymbol{x}) + f(\boldsymbol{x}) \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial x_0} \\[1em] \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_1} g(\boldsymbol{x}) + f(\boldsymbol{x}) \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_{N-1}} g(\boldsymbol{x}) + f(\boldsymbol{x}) \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-9-2} \end{equation}

これを2つのベクトルの和として書き直す。

\begin{equation} \frac{\partial (f(\boldsymbol{x}) g(\boldsymbol{x}))}{\partial \boldsymbol{x}} = \begin{pmatrix} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_0} g(\boldsymbol{x}) \\[1em] \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_1} g(\boldsymbol{x}) \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_{N-1}} g(\boldsymbol{x}) \end{pmatrix} + \begin{pmatrix} \displaystyle f(\boldsymbol{x}) \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial x_0} \\[1em] \displaystyle f(\boldsymbol{x}) \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle f(\boldsymbol{x}) \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-9-3} \end{equation}

$f(\boldsymbol{x})$ と $g(\boldsymbol{x})$ はスカラなので、ベクトルの各成分から共通因子としてくくり出せる。

\begin{equation} \frac{\partial (f(\boldsymbol{x}) g(\boldsymbol{x}))}{\partial \boldsymbol{x}} = g(\boldsymbol{x}) \begin{pmatrix} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_0} \\[1em] \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_{N-1}} \end{pmatrix} + f(\boldsymbol{x}) \begin{pmatrix} \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial x_0} \\[1em] \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-9-4} \end{equation}

勾配ベクトルの定義を使って整理すると、最終的な結果を得る。

\begin{equation} \frac{\partial (f(\boldsymbol{x}) g(\boldsymbol{x}))}{\partial \boldsymbol{x}} = g(\boldsymbol{x}) \frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}} + f(\boldsymbol{x}) \frac{\partial g(\boldsymbol{x})}{\partial \boldsymbol{x}} \label{eq:2-9-5} \end{equation}

2.10 和・差の法則

公式:$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} (f \pm g) = \displaystyle\frac{\partial f}{\partial \boldsymbol{x}} \pm \displaystyle\frac{\partial g}{\partial \boldsymbol{x}}$
条件:$f: \mathbb{R}^N \to \mathbb{R}$、$g: \mathbb{R}^N \to \mathbb{R}$ はスカラ関数、$\boldsymbol{x} \in \mathbb{R}^N$
証明

勾配ベクトルの第 $n$ 成分を考える。$f + g$ を $x_n$ で偏微分する。

微分の線形性(1.24)より、和の微分は微分の和に等しい。

\begin{equation} \frac{\partial (f + g)}{\partial x_n} = \frac{\partial f}{\partial x_n} + \frac{\partial g}{\partial x_n} \label{eq:2-10-1} \end{equation}

この結果を全ての $n = 0, 1, \ldots, N-1$ についてまとめて、勾配ベクトルを構成する。

\begin{equation} \frac{\partial (f + g)}{\partial \boldsymbol{x}} = \begin{pmatrix} \displaystyle\frac{\partial f}{\partial x_0} + \displaystyle\frac{\partial g}{\partial x_0} \\[1em] \displaystyle\frac{\partial f}{\partial x_1} + \displaystyle\frac{\partial g}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial f}{\partial x_{N-1}} + \displaystyle\frac{\partial g}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-10-2} \end{equation}

これを2つのベクトルの和として書き直す。

\begin{equation} \frac{\partial (f + g)}{\partial \boldsymbol{x}} = \begin{pmatrix} \displaystyle\frac{\partial f}{\partial x_0} \\[1em] \displaystyle\frac{\partial f}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial f}{\partial x_{N-1}} \end{pmatrix} + \begin{pmatrix} \displaystyle\frac{\partial g}{\partial x_0} \\[1em] \displaystyle\frac{\partial g}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial g}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-10-3} \end{equation}

勾配ベクトルの定義を使って整理すると、最終的な結果を得る。

\begin{equation} \frac{\partial (f + g)}{\partial \boldsymbol{x}} = \frac{\partial f}{\partial \boldsymbol{x}} + \frac{\partial g}{\partial \boldsymbol{x}} \label{eq:2-10-4} \end{equation}

差 $f - g$ についても同様の議論が成り立つ。微分の線形性より、差の微分は微分の差に等しい。

\begin{equation} \frac{\partial (f - g)}{\partial \boldsymbol{x}} = \frac{\partial f}{\partial \boldsymbol{x}} - \frac{\partial g}{\partial \boldsymbol{x}} \label{eq:2-10-5} \end{equation}

2.11 スカラ倍の法則

公式:$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} (c \cdot f) = c \displaystyle\frac{\partial f}{\partial \boldsymbol{x}}$
条件:$c \in \mathbb{R}$ はスカラ定数、$f: \mathbb{R}^N \to \mathbb{R}$ はスカラ関数、$\boldsymbol{x} \in \mathbb{R}^N$
証明

勾配ベクトルの第 $n$ 成分を考える。$c \cdot f$ を $x_n$ で偏微分する。

$c$ は $x_n$ に依存しない定数なので、微分の外に出せる。これは微分の線形性(1.24)の一部である。

\begin{equation} \frac{\partial (c \cdot f)}{\partial x_n} = c \cdot \frac{\partial f}{\partial x_n} \label{eq:2-11-1} \end{equation}

この結果を全ての $n = 0, 1, \ldots, N-1$ についてまとめて、勾配ベクトルを構成する。

\begin{equation} \frac{\partial (c \cdot f)}{\partial \boldsymbol{x}} = \begin{pmatrix} \displaystyle c \cdot \displaystyle\frac{\partial f}{\partial x_0} \\[1em] \displaystyle c \cdot \displaystyle\frac{\partial f}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle c \cdot \displaystyle\frac{\partial f}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-11-2} \end{equation}

$c$ は全ての成分で共通なので、スカラとしてくくり出せる。

\begin{equation} \frac{\partial (c \cdot f)}{\partial \boldsymbol{x}} = c \cdot \begin{pmatrix} \displaystyle\frac{\partial f}{\partial x_0} \\[1em] \displaystyle\frac{\partial f}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial f}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-11-3} \end{equation}

勾配ベクトルの定義を使って整理すると、最終的な結果を得る。

\begin{equation} \frac{\partial (c \cdot f)}{\partial \boldsymbol{x}} = c \frac{\partial f}{\partial \boldsymbol{x}} \label{eq:2-11-4} \end{equation}

2.12 商の法則

公式:$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} \displaystyle\frac{f(\boldsymbol{x})}{g(\boldsymbol{x})} = \displaystyle\frac{1}{g(\boldsymbol{x})^2}\left(g(\boldsymbol{x}) \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}} - f(\boldsymbol{x}) \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial \boldsymbol{x}}\right)$
条件:$f: \mathbb{R}^N \to \mathbb{R}$、$g: \mathbb{R}^N \to \mathbb{R}$ はスカラ関数、$\boldsymbol{x} \in \mathbb{R}^N$、$g(\boldsymbol{x}) \neq 0$
証明

勾配ベクトルの第 $n$ 成分を考える。$f(\boldsymbol{x})/g(\boldsymbol{x})$ を $x_n$ で偏微分する。

通常の商の微分法則(1.28)を適用する。

\begin{equation} \frac{\partial}{\partial x_n} \left( \frac{f(\boldsymbol{x})}{g(\boldsymbol{x})} \right) = \frac{g(\boldsymbol{x}) \cdot \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_n} - f(\boldsymbol{x}) \cdot \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial x_n}}{g(\boldsymbol{x})^2} \label{eq:2-12-1} \end{equation}

$\displaystyle\frac{1}{g(\boldsymbol{x})^2}$ をくくり出す。

\begin{equation} \frac{\partial}{\partial x_n} \left( \frac{f(\boldsymbol{x})}{g(\boldsymbol{x})} \right) = \frac{1}{g(\boldsymbol{x})^2} \left( g(\boldsymbol{x}) \frac{\partial f(\boldsymbol{x})}{\partial x_n} - f(\boldsymbol{x}) \frac{\partial g(\boldsymbol{x})}{\partial x_n} \right) \label{eq:2-12-2} \end{equation}

この結果を全ての $n = 0, 1, \ldots, N-1$ についてまとめて、勾配ベクトルを構成する。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} \left( \frac{f(\boldsymbol{x})}{g(\boldsymbol{x})} \right) = \begin{pmatrix} \displaystyle\frac{1}{g(\boldsymbol{x})^2} \left( g(\boldsymbol{x}) \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_0} - f(\boldsymbol{x}) \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial x_0} \right) \\[1em] \displaystyle\frac{1}{g(\boldsymbol{x})^2} \left( g(\boldsymbol{x}) \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_1} - f(\boldsymbol{x}) \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial x_1} \right) \\[1em] \vdots \\[0.5em] \displaystyle\frac{1}{g(\boldsymbol{x})^2} \left( g(\boldsymbol{x}) \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_{N-1}} - f(\boldsymbol{x}) \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial x_{N-1}} \right) \end{pmatrix} \label{eq:2-12-3} \end{equation}

$f(\boldsymbol{x})$、$g(\boldsymbol{x})$、$1/g(\boldsymbol{x})^2$ はスカラなので、ベクトルの外にくくり出せる。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} \left( \frac{f(\boldsymbol{x})}{g(\boldsymbol{x})} \right) = \frac{1}{g(\boldsymbol{x})^2} \left( g(\boldsymbol{x}) \begin{pmatrix} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_0} \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_{N-1}} \end{pmatrix} - f(\boldsymbol{x}) \begin{pmatrix} \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial x_0} \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial g(\boldsymbol{x})}{\partial x_{N-1}} \end{pmatrix} \right) \label{eq:2-12-4} \end{equation}

勾配ベクトルの定義を使って整理すると、最終的な結果を得る。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} \left( \frac{f(\boldsymbol{x})}{g(\boldsymbol{x})} \right) = \frac{1}{g(\boldsymbol{x})^2} \left( g(\boldsymbol{x}) \frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}} - f(\boldsymbol{x}) \frac{\partial g(\boldsymbol{x})}{\partial \boldsymbol{x}} \right) \label{eq:2-12-5} \end{equation}

2.13 逆数の微分

公式:$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} \displaystyle\frac{1}{f(\boldsymbol{x})} = -\displaystyle\frac{1}{f(\boldsymbol{x})^2} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}}$
条件:$f: \mathbb{R}^N \to \mathbb{R}$ はスカラ関数、$\boldsymbol{x} \in \mathbb{R}^N$、$f(\boldsymbol{x}) \neq 0$
証明

勾配ベクトルの第 $n$ 成分を考える。$1/f(\boldsymbol{x})$ を $x_n$ で偏微分する。

$1/f(\boldsymbol{x}) = f(\boldsymbol{x})^{-1}$ と書けるので、連鎖律(1.26)を適用する準備として、この形で表す。

\begin{equation} \frac{\partial}{\partial x_n} \left( \frac{1}{f(\boldsymbol{x})} \right) = \frac{\partial}{\partial x_n} (f(\boldsymbol{x})^{-1}) \label{eq:2-13-1} \end{equation}

連鎖律(1.26)により、「外側の関数の微分」×「内側の関数の微分」になる。$t = f(\boldsymbol{x})$ とおくと、次のように表せる。

\begin{equation} \frac{\partial}{\partial x_n} (f(\boldsymbol{x})^{-1}) = \frac{d}{dt}(t^{-1}) \cdot \frac{\partial f(\boldsymbol{x})}{\partial x_n} \label{eq:2-13-2} \end{equation}

まず、$\displaystyle\frac{d}{dt}(t^{-1})$ を計算する。べき乗の微分公式(1.19)$\displaystyle\frac{d}{dt}(t^n) = n t^{n-1}$ において $n = -1$ とする。

\begin{equation} \frac{d}{dt}(t^{-1}) = (-1) \cdot t^{-1-1} = -t^{-2} \label{eq:2-13-3} \end{equation}

これを分数の形に書き直すと、次のようになる。

\begin{equation} -t^{-2} = -\frac{1}{t^2} = -\frac{1}{f(\boldsymbol{x})^2} \label{eq:2-13-4} \end{equation}

\eqref{eq:2-13-4} を \eqref{eq:2-13-2} に代入する。

\begin{equation} \frac{\partial}{\partial x_n} \left( \frac{1}{f(\boldsymbol{x})} \right) = -\frac{1}{f(\boldsymbol{x})^2} \cdot \frac{\partial f(\boldsymbol{x})}{\partial x_n} \label{eq:2-13-5} \end{equation}

この結果を全ての $n = 0, 1, \ldots, N-1$ についてまとめて、勾配ベクトルを構成する。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} \left( \frac{1}{f(\boldsymbol{x})} \right) = \begin{pmatrix} \displaystyle -\displaystyle\frac{1}{f(\boldsymbol{x})^2} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_0} \\[1em] \displaystyle -\displaystyle\frac{1}{f(\boldsymbol{x})^2} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle -\displaystyle\frac{1}{f(\boldsymbol{x})^2} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-13-6} \end{equation}

$-\displaystyle\frac{1}{f(\boldsymbol{x})^2}$ は全ての成分で共通なので、スカラとしてくくり出せる。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} \left( \frac{1}{f(\boldsymbol{x})} \right) = -\frac{1}{f(\boldsymbol{x})^2} \begin{pmatrix} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_0} \\[1em] \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-13-7} \end{equation}

勾配ベクトルの定義を使って整理すると、最終的な結果を得る。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} \left( \frac{1}{f(\boldsymbol{x})} \right) = -\frac{1}{f(\boldsymbol{x})^2} \frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}} \label{eq:2-13-8} \end{equation}

補足:これは商の法則(2.12)で分子を定数 1 とした特別な場合である。

2.14 べき乗の微分

公式:$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} f(\boldsymbol{x})^n = n f(\boldsymbol{x})^{n-1} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}}$
条件:$f: \mathbb{R}^N \to \mathbb{R}$ はスカラ関数、$n \in \mathbb{R}$ は定数、$\boldsymbol{x} \in \mathbb{R}^N$
証明

勾配ベクトルの第 $k$ 成分を考える。$f(\boldsymbol{x})^n$ を $x_k$ で偏微分する。

連鎖律(1.26)を適用する。「外側の関数の微分」×「内側の関数の微分」になる。$t = f(\boldsymbol{x})$ とおくと、次のように表せる。

\begin{equation} \frac{\partial}{\partial x_k} (f(\boldsymbol{x})^n) = \frac{d}{dt}(t^n) \cdot \frac{\partial f(\boldsymbol{x})}{\partial x_k} \label{eq:2-14-1} \end{equation}

まず、$\displaystyle\frac{d}{dt}(t^n)$ を計算する。べき乗の微分公式(1.19)を適用する。

\begin{equation} \frac{d}{dt}(t^n) = n \cdot t^{n-1} \label{eq:2-14-2} \end{equation}

$t = f(\boldsymbol{x})$ を代入すると、次のようになる。

\begin{equation} \frac{d}{dt}(t^n) = n \cdot f(\boldsymbol{x})^{n-1} \label{eq:2-14-3} \end{equation}

\eqref{eq:2-14-3} を \eqref{eq:2-14-1} に代入する。

\begin{equation} \frac{\partial}{\partial x_k} (f(\boldsymbol{x})^n) = n f(\boldsymbol{x})^{n-1} \cdot \frac{\partial f(\boldsymbol{x})}{\partial x_k} \label{eq:2-14-4} \end{equation}

この結果を全ての $k = 0, 1, \ldots, N-1$ についてまとめて、勾配ベクトルを構成する。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (f(\boldsymbol{x})^n) = \begin{pmatrix} \displaystyle n f(\boldsymbol{x})^{n-1} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_0} \\[1em] \displaystyle n f(\boldsymbol{x})^{n-1} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle n f(\boldsymbol{x})^{n-1} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-14-5} \end{equation}

$n f(\boldsymbol{x})^{n-1}$ は全ての成分で共通なので、スカラとしてくくり出せる。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (f(\boldsymbol{x})^n) = n f(\boldsymbol{x})^{n-1} \begin{pmatrix} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_0} \\[1em] \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-14-6} \end{equation}

勾配ベクトルの定義を使って整理すると、最終的な結果を得る。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (f(\boldsymbol{x})^n) = n f(\boldsymbol{x})^{n-1} \frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}} \label{eq:2-14-7} \end{equation}

補足
  • $n = 1/2$ のとき:平方根 $\sqrt{f(\boldsymbol{x})} = f(\boldsymbol{x})^{1/2}$ の微分が得られる。$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} \sqrt{f(\boldsymbol{x})} = \displaystyle\frac{1}{2\sqrt{f(\boldsymbol{x})}} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}}$
  • $n = -1$ のとき:逆数 $1/f(\boldsymbol{x}) = f(\boldsymbol{x})^{-1}$ の微分(2.13)が得られる。
  • $n = 2$ のとき:2乗 $f(\boldsymbol{x})^2$ の微分。$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} f(\boldsymbol{x})^2 = 2f(\boldsymbol{x}) \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}}$

2.15 指数関数の微分

公式:$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} e^{f(\boldsymbol{x})} = e^{f(\boldsymbol{x})} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}}$
条件:$f: \mathbb{R}^N \to \mathbb{R}$ はスカラ関数、$\boldsymbol{x} \in \mathbb{R}^N$
証明

勾配ベクトルの第 $k$ 成分を考える。$e^{f(\boldsymbol{x})}$ を $x_k$ で偏微分する。

連鎖律(1.26)を適用する。「外側の関数の微分」×「内側の関数の微分」になる。

\begin{equation} \frac{\partial}{\partial x_k} (e^{f(\boldsymbol{x})}) = \frac{d}{df}(e^f) \cdot \frac{\partial f(\boldsymbol{x})}{\partial x_k} \label{eq:2-15-1} \end{equation}

$\displaystyle\frac{d}{df}(e^f)$ を計算する。指数関数 $e^f$ の微分は $e^f$ 自身である(1.20)。

\begin{equation} \frac{d}{df}(e^f) = e^f \label{eq:2-15-2} \end{equation}

\eqref{eq:2-15-2} を \eqref{eq:2-15-1} に代入する。

\begin{equation} \frac{\partial}{\partial x_k} (e^{f(\boldsymbol{x})}) = e^{f(\boldsymbol{x})} \cdot \frac{\partial f(\boldsymbol{x})}{\partial x_k} \label{eq:2-15-3} \end{equation}

この結果を全ての $k = 0, 1, \ldots, N-1$ についてまとめて、勾配ベクトルを構成する。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (e^{f(\boldsymbol{x})}) = \begin{pmatrix} \displaystyle e^{f(\boldsymbol{x})} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_0} \\[1em] \displaystyle e^{f(\boldsymbol{x})} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle e^{f(\boldsymbol{x})} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-15-4} \end{equation}

$e^{f(\boldsymbol{x})}$ は全ての成分で共通なので、スカラとしてくくり出せる。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (e^{f(\boldsymbol{x})}) = e^{f(\boldsymbol{x})} \begin{pmatrix} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_0} \\[1em] \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-15-5} \end{equation}

勾配ベクトルの定義を使って整理すると、最終的な結果を得る。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (e^{f(\boldsymbol{x})}) = e^{f(\boldsymbol{x})} \frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}} \label{eq:2-15-6} \end{equation}

補足:底が $a$($a > 0, a \neq 1$)の場合は、$a^{f(\boldsymbol{x})} = e^{f(\boldsymbol{x}) \log a}$ なので、連鎖律(1.26)より $$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} a^{f(\boldsymbol{x})} = a^{f(\boldsymbol{x})} \log a \cdot \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}}$$ となる。

2.16 対数関数の微分

公式:$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} \log f(\boldsymbol{x}) = \displaystyle\frac{1}{f(\boldsymbol{x})} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}}$
条件:$f: \mathbb{R}^N \to \mathbb{R}_{>0}$ は正値スカラ関数、$\boldsymbol{x} \in \mathbb{R}^N$
証明

勾配ベクトルの第 $k$ 成分を考える。$\log f(\boldsymbol{x})$ を $x_k$ で偏微分する。

連鎖律(1.26)を適用する。「外側の関数の微分」×「内側の関数の微分」になる。

\begin{equation} \frac{\partial}{\partial x_k} (\log f(\boldsymbol{x})) = \frac{d}{df}(\log f) \cdot \frac{\partial f(\boldsymbol{x})}{\partial x_k} \label{eq:2-16-1} \end{equation}

$\displaystyle\frac{d}{df}(\log f)$ を計算する。自然対数 $\log f$ の微分は $\displaystyle\frac{1}{f}$ である(1.21)。

\begin{equation} \frac{d}{df}(\log f) = \frac{1}{f} \label{eq:2-16-2} \end{equation}

\eqref{eq:2-16-2} を \eqref{eq:2-16-1} に代入する。

\begin{equation} \frac{\partial}{\partial x_k} (\log f(\boldsymbol{x})) = \frac{1}{f(\boldsymbol{x})} \cdot \frac{\partial f(\boldsymbol{x})}{\partial x_k} \label{eq:2-16-3} \end{equation}

この結果を全ての $k = 0, 1, \ldots, N-1$ についてまとめて、勾配ベクトルを構成する。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (\log f(\boldsymbol{x})) = \begin{pmatrix} \displaystyle \displaystyle\frac{1}{f(\boldsymbol{x})} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_0} \\[1em] \displaystyle \displaystyle\frac{1}{f(\boldsymbol{x})} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle \displaystyle\frac{1}{f(\boldsymbol{x})} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-16-4} \end{equation}

$\displaystyle\frac{1}{f(\boldsymbol{x})}$ は全ての成分で共通なので、スカラとしてくくり出せる。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (\log f(\boldsymbol{x})) = \frac{1}{f(\boldsymbol{x})} \begin{pmatrix} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_0} \\[1em] \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_1} \\[1em] \vdots \\[0.5em] \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial x_{N-1}} \end{pmatrix} \label{eq:2-16-5} \end{equation}

勾配ベクトルの定義を使って整理すると、最終的な結果を得る。

\begin{equation} \frac{\partial}{\partial \boldsymbol{x}} (\log f(\boldsymbol{x})) = \frac{1}{f(\boldsymbol{x})} \frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}} \label{eq:2-16-6} \end{equation}

補足:底が $a$($a > 0, a \neq 1$)の場合は、$\log_a f(\boldsymbol{x}) = \displaystyle\frac{\log f(\boldsymbol{x})}{\log a}$ なので、 $$\displaystyle\frac{\partial}{\partial \boldsymbol{x}} \log_a f(\boldsymbol{x}) = \displaystyle\frac{1}{f(\boldsymbol{x}) \log a} \displaystyle\frac{\partial f(\boldsymbol{x})}{\partial \boldsymbol{x}}$$ となる。