(線形)最小二乗法は優決定問題においてデータからモデルパラメータを決定する手法の一つであり,残差二乗和を最小とするようなモデルパラメータを与える.
観測量 \(d\) を変数 \(x\) と \(M\) 個のモデルパラメータ \(m_1, \dots , m_M\) によって \[ \begin{align} d(x) &= m_1 f_1(x) + \dots + m_M f_M(x) \\ &= \begin{pmatrix} f_1(x) & \dots & f_M(x) \\ \end{pmatrix} \begin{pmatrix} m_1 \\ \vdots \\ m_M \\ \end{pmatrix} \end{align} \] と説明するモデルを考える.\(f_1, \dots, f_M\) は \(x\) の関数である.
\(N\ (> M)\) 個のデータ \(d_1, \dots , d_N\) があるとき,\(i\) 個目のデータに対する残差 \(e_i\) は \[ \begin{align} e_i &\equiv d_i - \begin{pmatrix} f_1(x_i) & \dots & f_M(x_i) \\ \end{pmatrix} \begin{pmatrix} m_1 \\ \vdots \\ m_M \\ \end{pmatrix} \\ \end{align} \] と定義される.これを \(e_1\) から \(e_M\) について考えると \[ \begin{align} \begin{pmatrix} e_1 \\ \vdots \\ e_N \\ \end{pmatrix} &= \begin{pmatrix} d_1 \\ \vdots \\ d_N \\ \end{pmatrix} - \begin{pmatrix} f_1(x_1) & \dots & f_M(x_1) \\ \vdots & & \vdots \\ f_1(x_N) & \dots & f_M(x_N) \\ \end{pmatrix} \begin{pmatrix} m_1 \\ \vdots \\ m_M \\ \end{pmatrix} \\ \mathbf{e} &= \mathbf{d} - \mathbf{G} \mathbf{m} \end{align} \] となる.\(\mathbf{e}\),\(\mathbf{d}\),\(\mathbf{G}\),\(\mathbf{m}\) は以下のように定義した. \[ \begin{align} \mathbf{e} &\equiv \begin{pmatrix} e_1 & \dots & e_N \\ \end{pmatrix}^{\mathrm{T}} &&(\textsf{$N \times 1$ 行列,残差ベクトル}) \\ \mathbf{d} &\equiv \begin{pmatrix} d_1 & \dots & d_N \\ \end{pmatrix}^{\mathrm{T}} &&(\textsf{$N \times 1$ 行列,データベクトル,既知}) \\ \mathbf{G} &= \begin{pmatrix} G_{1 1} & \dots & G_{1 M} \\ \vdots & & \vdots \\ G_{N 1} & \dots & G_{N M} \\ \end{pmatrix} \equiv \begin{pmatrix} f_1(x_1) & \dots & f_M(x_1) \\ \vdots & & \vdots \\ f_1(x_N) & \dots & f_M(x_N) \\ \end{pmatrix} &&(\textsf{$N \times M$ 行列,カーネル行列,既知}) \\ \mathbf{m} &\equiv \begin{pmatrix} m_1 & \dots & m_M \\ \end{pmatrix}^{\mathrm{T}} &&(\textsf{$M \times 1$ 行列,モデルパラメータベクトル,未知}) \end{align} \]
残差二乗和 \(\Phi\) は以下のように計算される. \[ \begin{align} \Phi &\equiv \sum_{i=1}^{N} {e_i}^2 \\ &= \mathbf{e}^{\mathrm{T}} \mathbf{e} \\ &= (\mathbf{d} - \mathbf{G} \mathbf{m})^{\mathrm{T}} (\mathbf{d} - \mathbf{G} \mathbf{m}) \\ &= \mathbf{d}^{\mathrm{T}}\mathbf{d} - \mathbf{d}^{\mathrm{T}} \mathbf{G} \mathbf{m} - (\mathbf{G} \mathbf{m})^{\mathrm{T}} \mathbf{d} + (\mathbf{G} \mathbf{m})^{\mathrm{T}} \mathbf{G} \mathbf{m} \\ &= \mathbf{d}^{\mathrm{T}}\mathbf{d} - \mathbf{d}^{\mathrm{T}} \mathbf{G} \mathbf{m} - \mathbf{m}^{\mathrm{T}} \mathbf{G}^{\mathrm{T}} \mathbf{d} + \mathbf{m}^{\mathrm{T}} \mathbf{G}^{\mathrm{T}} \mathbf{G} \mathbf{m} \tag{1} \label{1} \\ &= \mathbf{d}^{\mathrm{T}}\mathbf{d} - 2 \mathbf{d}^{\mathrm{T}} \mathbf{G} \mathbf{m} + \mathbf{m}^{\mathrm{T}} \mathbf{G}^{\mathrm{T}} \mathbf{G} \mathbf{m} \tag{2} \label{2} \end{align} \] 式 \(\eqref{1}\) から \(\eqref{2}\) への変形には以下の関係を使った. \[ \begin{align} \mathbf{m}^{\mathrm{T}} \mathbf{G}^{\mathrm{T}} \mathbf{d} &= (\mathbf{m}^{\mathrm{T}} \mathbf{G}^{\mathrm{T}} \mathbf{d})^{\mathrm{T}}& &\because \textsf{スカラー} \\ &= \mathbf{d}^{\mathrm{T}}\,(\mathbf{m}^{\mathrm{T}} \mathbf{G}^{\mathrm{T}})^{\mathrm{T}} \\ &= \mathbf{d}^{\mathrm{T}} \mathbf{G} \mathbf{m} \end{align} \]
式 \(\eqref{2}\) の第2項と第3項を展開する. \[ \begin{align} \mathbf{d}^{\mathrm{T}} \mathbf{G} \mathbf{m} &= \begin{pmatrix} d_1 & \dots & d_N \\ \end{pmatrix} \begin{pmatrix} G_{1 1} & \dots & G_{1 M} \\ \vdots & & \vdots \\ G_{N 1} & \dots & G_{N M} \\ \end{pmatrix} \mathbf{m} \\ &= \begin{pmatrix} \sum_{i=1}^{N} d_i G_{i 1} & \dots & \sum_{i=1}^{N} d_i G_{i M} \\ \end{pmatrix} \begin{pmatrix} m_1 \\ \vdots \\ m_M \\ \end{pmatrix} \\ &= \sum_{j=1}^{M} \sum_{i=1}^{N} d_i G_{i j} m_j \end{align} \] \[ \begin{align} \mathbf{m}^{\mathrm{T}} \mathbf{G}^{\mathrm{T}} \mathbf{G} \mathbf{m} &= \begin{pmatrix} m_1 & \dots & m_M \\ \end{pmatrix} \begin{pmatrix} G_{1 1} & \dots & G_{N 1} \\ \vdots & & \vdots \\ G_{1 M} & \dots & G_{N M} \\ \end{pmatrix} \mathbf{G} \mathbf{m}\\ &= \begin{pmatrix} \sum_{j=1}^{M} m_j G_{1 j} & \dots & \sum_{j=1}^{M} m_j G_{N j} \\ \end{pmatrix} \begin{pmatrix} G_{1 1} & \dots & G_{1 M} \\ \vdots & & \vdots \\ G_{N 1} & \dots & G_{N M} \\ \end{pmatrix} \mathbf{m} \\ &= \begin{pmatrix} \sum_{i=1}^{N} \sum_{j=1}^{M} m_j G_{i j} G_{i 1} & \dots & \sum_{i=1}^{N} \sum_{j=1}^{M} m_j G_{i j} G_{i M} \\ \end{pmatrix} \begin{pmatrix} m_1 \\ \vdots \\ m_M \\ \end{pmatrix} \\ &= \sum_{l=1}^{M} \sum_{i=1}^{N} \sum_{j=1}^{M} m_j G_{i j} G_{i l} m_l \end{align} \]
式 \(\eqref{2}\) の各項を \(\mathbf{m}\) で微分する. \[ \begin{align} \frac{\mathrm{d}}{\mathrm{d} \mathbf{m}} (\mathbf{d}^{\mathrm{T}}\mathbf{d}) &= \mathbf{0} \end{align} \] \[ \begin{align} \frac{\mathrm{d}}{\mathrm{d} \mathbf{m}} (\mathbf{d}^{\mathrm{T}} \mathbf{G} \mathbf{m}) &= \begin{pmatrix} \dfrac{\mathrm{d}}{\mathrm{d} m_1} & \dots & \dfrac{\mathrm{d}}{\mathrm{d} m_M} \\ \end{pmatrix} \sum_{j=1}^{M} \sum_{i=1}^{N} d_i G_{i j} m_j \\ &= \begin{pmatrix} \sum_{i=1}^{N} d_i G_{i 1} & \dots & \sum_{i=1}^{N} d_i G_{i M} \\ \end{pmatrix} \\ &= \mathbf{d}^{\mathrm{T}} \mathbf{G} \end{align} \] \[ \begin{align} \frac{\mathrm{d}}{\mathrm{d} \mathbf{m}} (\mathbf{m}^{\mathrm{T}} \mathbf{G}^{\mathrm{T}} \mathbf{G} \mathbf{m}) &= \begin{pmatrix} \dfrac{\mathrm{d}}{\mathrm{d} m_1} & \dots & \dfrac{\mathrm{d}}{\mathrm{d} m_M} \\ \end{pmatrix} \sum_{l=1}^{M} \sum_{i=1}^{N} \sum_{j=1}^{M} m_j G_{i j} G_{i l} m_l \\ &= 2 \begin{pmatrix} \sum_{i=1}^{N} \sum_{j=1}^{M} m_j G_{i j} G_{i 1} & \dots & \sum_{i=1}^{N} \sum_{j=1}^{M} m_j G_{i j} G_{i M} \\ \end{pmatrix} \\ &= 2 \mathbf{m}^{\mathrm{T}} \mathbf{G}^{\mathrm{T}} \mathbf{G} \end{align} \]
したがって,\({\mathrm{d} \Phi}/{\mathrm{d} \mathbf{m}}\) は以下のように表される. \[ \begin{align} \frac{\mathrm{d} \Phi}{\mathrm{d} \mathbf{m}} &= -2\,\mathbf{d}^{\mathrm{T}} \mathbf{G} + 2 \mathbf{m}^{\mathrm{T}} \mathbf{G}^{\mathrm{T}} \mathbf{G} \end{align} \]
残差二乗和 \(\Phi\) が最小値をとるのは \({\mathrm{d} \Phi}/{\mathrm{d} \mathbf{m}} = \mathbf{0}\) のとき.したがって,\(\mathbf{m}\) は以下のように求められる. \[ \begin{gather} \mathbf{0} = \frac{\mathrm{d} \Phi}{\mathrm{d} \mathbf{m}} = -2\,\mathbf{d}^{\mathrm{T}} \mathbf{G} + 2 \mathbf{m}^{\mathrm{T}} \mathbf{G}^{\mathrm{T}} \mathbf{G} \\ \begin{aligned} \mathbf{m}^{\mathrm{T}} \mathbf{G}^{\mathrm{T}} \mathbf{G} &= \mathbf{d}^{\mathrm{T}} \mathbf{G} \\ \mathbf{G}^{\mathrm{T}} \mathbf{G} \mathbf{m} &= \mathbf{G}^{\mathrm{T}} \mathbf{d} \\ \end{aligned} \\ \\ \mathbf{m} = (\mathbf{G}^{\mathrm{T}} \mathbf{G})^{-1}\,\mathbf{G}^{\mathrm{T}} \mathbf{d} \end{gather} \]