ベクトルの微分・行列の微分(Matrix Calculus)

公式一覧から証明・応用まで — 全16章+22分野の応用例

ベクトルの微分・行列の微分とは

ベクトルの微分・行列の微分(Matrix Calculus)とは、スカラー・ベクトル・行列を変数とする関数の微分を体系的に扱う分野である。 通常の偏微分を行列やベクトルの形にまとめることで、多次元の勾配計算を簡潔に記述できる。

直感的な理解

1変数関数 $f(x)$ の微分は $\dfrac{df}{dx}$(スカラー)だった。では、$n$ 変数の関数 $f(\boldsymbol{x})$ を $\boldsymbol{x} = (x_1, \ldots, x_n)^\top$ で微分すると何になるか? 答えは勾配ベクトル(各偏微分を並べたベクトル)である:

$$\frac{\partial f}{\partial \boldsymbol{x}} = \begin{pmatrix} \dfrac{\partial f}{\partial x_1} \\[6pt] \vdots \\[6pt] \dfrac{\partial f}{\partial x_n} \end{pmatrix}$$

同様に、ベクトル値関数 $\boldsymbol{f}(\boldsymbol{x})$ をベクトルで微分すればヤコビ行列に、スカラー関数を行列 $\boldsymbol{X}$ で微分すれば行列勾配になる。 これが「ベクトルの微分」「行列の微分」の基本的な考え方である。

微分の種類と結果の形

被微分関数 微分変数 結果の形 名称
スカラー $f$ ベクトル $\boldsymbol{x} \in \mathbb{R}^n$ $n$ 次元ベクトル 勾配(gradient)
ベクトル $\boldsymbol{f} \in \mathbb{R}^m$ ベクトル $\boldsymbol{x} \in \mathbb{R}^n$ $n \times m$ 行列 ヤコビ行列(Jacobian)
スカラー $f$ ベクトル $\boldsymbol{x}$(2回微分) $n \times n$ 行列 ヘッセ行列(Hessian)
スカラー $f$ 行列 $\boldsymbol{X} \in \mathbb{R}^{m \times n}$ $m \times n$ 行列 行列勾配

なぜ必要なのか

  • 機械学習: ニューラルネットワークの逆伝播(バックプロパゲーション)は行列の微分そのもの。損失関数の重み行列に関する勾配 $\frac{\partial L}{\partial \boldsymbol{W}}$ を計算する
  • 統計学: 最尤推定でパラメータベクトルに関する対数尤度の勾配を求める。フィッシャー情報行列やガウス過程の計算にも不可欠
  • 最適化: Newton法・準Newton法では勾配(1次)とヘッセ行列(2次)を使って収束を加速する
  • 制御工学: LQR(線形二次レギュレータ)やカルマンフィルタの導出に二次形式の微分が必要
  • 物理学: 連続体力学のひずみエネルギー関数、電磁気学のグリーン関数の微分など

主要公式 早見表(分母レイアウト)

以下は最も頻繁に使われる公式の抜粋である。全公式は公式集を参照。

ベクトルの微分(スカラーをベクトルで微分)

関数 微分 $\dfrac{\partial}{\partial \boldsymbol{x}}$ 備考
$\boldsymbol{a}^\top \boldsymbol{x}$ $\boldsymbol{a}$ 線形関数
$\boldsymbol{x}^\top \boldsymbol{A} \boldsymbol{x}$ $(\boldsymbol{A} + \boldsymbol{A}^\top)\boldsymbol{x}$ 二次形式($\boldsymbol{A}$ 対称なら $2\boldsymbol{A}\boldsymbol{x}$)
$\|\boldsymbol{x}\|^2 = \boldsymbol{x}^\top\boldsymbol{x}$ $2\boldsymbol{x}$ ノルムの二乗
$\boldsymbol{x}^\top \boldsymbol{A}^\top \boldsymbol{b}$ $\boldsymbol{A}^\top \boldsymbol{b}$ アフィン変換
$\|\boldsymbol{A}\boldsymbol{x} - \boldsymbol{b}\|^2$ $2\boldsymbol{A}^\top(\boldsymbol{A}\boldsymbol{x} - \boldsymbol{b})$ 最小二乗法の正規方程式

ベクトルの微分(ベクトルをベクトルで微分)

関数 微分 $\dfrac{\partial}{\partial \boldsymbol{x}}$ 備考
$\boldsymbol{A}\boldsymbol{x}$ $\boldsymbol{A}^\top$ ヤコビ行列
$\boldsymbol{x}$ $\boldsymbol{I}$ 恒等写像

行列の微分(スカラーを行列で微分)

関数 微分 $\dfrac{\partial}{\partial \boldsymbol{X}}$ 備考
$\mathrm{tr}(\boldsymbol{A}\boldsymbol{X})$ $\boldsymbol{A}^\top$ トレースの微分(最基本)
$\mathrm{tr}(\boldsymbol{X}^\top\boldsymbol{A}\boldsymbol{X})$ $(\boldsymbol{A}+\boldsymbol{A}^\top)\boldsymbol{X}$ 二次形式のトレース
$\mathrm{tr}(\boldsymbol{A}\boldsymbol{X}^{-1}\boldsymbol{B})$ $-\boldsymbol{X}^{-\top}\boldsymbol{A}^\top\boldsymbol{B}^\top\boldsymbol{X}^{-\top}$ 逆行列を含むトレース
$\log|\boldsymbol{X}|$ $\boldsymbol{X}^{-\top}$ 対数行列式(最尤推定で頻出)
$|\boldsymbol{X}|$ $|\boldsymbol{X}|\,\boldsymbol{X}^{-\top}$ 行列式の微分
$\boldsymbol{X}^{-1}$(行列値) $-\boldsymbol{X}^{-1} d\boldsymbol{X}\, \boldsymbol{X}^{-1}$ 逆行列の微分

上表はすべて分母レイアウト(Jacobian formulation)に基づく。分子レイアウトでは転置が入る。詳細は入門ページの「レイアウトの選び方」を参照。

分母レイアウトと分子レイアウト

行列微分には2つの記法が共存しており、文献によって異なる。結果が転置の関係になるため、混在させると計算を間違える。

項目 分母レイアウト 分子レイアウト
$\dfrac{\partial f}{\partial \boldsymbol{x}}$($f$: スカラー, $\boldsymbol{x} \in \mathbb{R}^n$) $n \times 1$ 列ベクトル $1 \times n$ 行ベクトル
別名 Jacobian formulation Hessian formulation
主な採用分野 統計学・機械学習・最適化 工学・物理学の一部
連鎖律の順序 右から左 左から右

本シリーズでは分母レイアウトを採用している。詳しい比較は入門ページ、約60分野のレイアウト傾向は分野別レイアウト一覧を参照。

本シリーズの特徴

  • 全16章の公式集 — スカラー・ベクトル・行列の微分を網羅(トレース、行列式、逆行列、固有値、ノルム、構造行列、複素行列まで)
  • 全公式に証明付き — 成分計算と余因子展開を用いた厳密な導出過程を証明集に収録(16章+Lie群3章)
  • 22分野の応用例 — 統計学、機械学習、最適化から分子動力学、ロボティクス、金融工学まで具体的な適用例を収録
  • 分母・分子の両レイアウト対応 — 公式集の付録Aで分子レイアウトとの変換表を掲載
  • Lie群の微分 — 回転行列 $SO(3)$、剛体変換 $SE(3)$ の微分まで拡張

シリーズ目次

  1. 第1章 ベクトル微分/行列微分入門

    なぜ必要か、何ができるか、分母/分子レイアウトの選び方

  2. 第2章 ベクトル微分/行列微分の公式集

    全16章・スカラー/ベクトル/行列の微分公式一覧

  3. 第3章 ベクトル微分/行列微分の証明集

    各公式の詳細な導出過程(16章+Lie群3章+応用4章)

  4. 第4章 テンソル微分入門

    高階テンソルへの一般化

  5. 第5章 自動微分と最適化

    深層学習フレームワークとの関係

  6. 付録 分野別レイアウト一覧

    約60分野における記法の傾向

前提知識

  • 線形代数の基礎(行列演算、転置、逆行列、行列式)
  • 微分の基礎(偏微分、連鎖律)
  • ベクトル解析の基礎(勾配)