機械学習における回帰のための線形モデル
定義1
単純モデル
データ集合$X = \left\{ \mathbf{x}_{i} \right\}$とラベル集合$Y = \left\{ y_{i} \right\}$の間のターゲット関数$f : X \to Y$を次のように定義しよう。
$$ y_{i} = f(\mathbf{x}_{i}) $$
機械学習において、線形回帰linear regressionとは、次の方程式を満たす$\mathbf{w}$に対する線形関数$\hat{f}$を見つけることを言う。
$$ y_{i} \approx \hat{y}_{i} = \hat{f}(\mathbf{x}_{i}, \mathbf{w}) = w_{0} + w_{1}x_{1} + \cdots + w_{n}x_{n} = w_{0} + \sum\limits_{j} w_{j}x_{j} $$
このとき、$\mathbf{x} \in \mathbb{R}^{n}, \mathbf{w} \in \mathbb{R}^{n+1}$である。
拡張モデル
入力データに対する非線形関数$\phi_{j}$が与えられたとしよう。
$$ y_{i} \approx \hat{y}_{i} = \hat{f}(\mathbf{x}_{i}, \mathbf{w}) = w_{0} + \sum\limits_{j} w_{j} \phi_{j}(\mathbf{x}_{i}) $$
このとき、$\phi_{j}$は基底関数basis functionsと言われる。
説明
実際に考えると、ターゲット関数$f$の存在性からわかることはない。したがって、$f$に最も近い$\hat{f}$を見つけることが目標であり、最もシンプルで多くを説明できる線形関数と仮定する。
$$ f \approx \tilde{f} $$
非線形基底関数$\phi$を導入した場合も、$\hat{f}$が重み$\mathbf{w}$に対して線形であるため、これを線形モデルと呼ぶことは同じである。
表記法
$x_{0} = 1$、$\phi_{j} = 1$とすると、上記の二つのモデルをもっと簡単に表せる。
$$ \hat{y} = \hat{f}(\mathbf{x}, \mathbf{w}) = \sum\limits_{j=0}^{n} w_{j}x_{j} = \mathbf{w}^{T}\mathbf{x} $$
このとき、$\mathbf{x} = \begin{bmatrix} x_{0} & \dots & x_{n} \end{bmatrix}^{T}$、$\mathbf{w} = \begin{bmatrix} w_{0} & \dots & w_{n} \end{bmatrix}^{T}$である。
$$ \hat{y} = \hat{f}(\mathbf{x}, \mathbf{w}) = \sum\limits_{j=0}^{n} w_{j}\phi_{j}(\mathbf{x}) = \mathbf{w}^{T}\boldsymbol{\phi}(\mathbf{x}) $$
このとき、$\boldsymbol{\phi} = \begin{bmatrix} \phi_{0} & \dots & \phi_{n} \end{bmatrix}^{T}$である。
統計学における線形回帰
統計学では、$w_{i}$の代わりに$\beta_{i}$と表記し、これを回帰係数と呼ぶ。機械学習では、$w_{i}$を重みweightsという。
統計学 | 機械学習 | |
---|---|---|
$x$ | 独立変数 | データ |
$y$ | 従属変数 | ラベル |
$w, \beta$ | 回帰係数 | 重み |
特に機械学習では、$b = w_{0}$はバイアスbiasと呼ばれている。
学習方法
線形モデルを訓練する方法には、以下のものがある。
- [勾配降下法]
- [最小二乗法]
- ベイジアン
- [最尤推定(Ml)]
- [最大事後確率(MAP)]
Christoper M. Bishop, Pattern Recognition annd Machine Learning (2006), p138-139 ↩︎