logo

機械学習における回帰のための線形モデル 📂機械学習

機械学習における回帰のための線形モデル

定義1

単純モデル

データ集合X={xi}X = \left\{ \mathbf{x}_{i} \right\}とラベル集合Y={yi}Y = \left\{ y_{i} \right\}の間のターゲット関数f:XYf : X \to Yを次のように定義しよう。

yi=f(xi) y_{i} = f(\mathbf{x}_{i})

機械学習において、線形回帰linear regressionとは、次の方程式を満たすw\mathbf{w}に対する線形関数f^\hat{f}を見つけることを言う。

yiy^i=f^(xi,w)=w0+w1x1++wnxn=w0+jwjxj 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}

このとき、xRn,wRn+1\mathbf{x} \in \mathbb{R}^{n}, \mathbf{w} \in \mathbb{R}^{n+1}である。

拡張モデル

入力データに対する非線形関数ϕj\phi_{j}が与えられたとしよう。

yiy^i=f^(xi,w)=w0+jwjϕj(xi) 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})

このとき、ϕj\phi_{j}基底関数basis functionsと言われる。

説明

実際に考えると、ターゲット関数ffの存在性からわかることはない。したがって、ffに最も近いf^\hat{f}を見つけることが目標であり、最もシンプルで多くを説明できる線形関数と仮定する。

ff~ f \approx \tilde{f}

非線形基底関数ϕ\phiを導入した場合も、f^\hat{f}が重みw\mathbf{w}に対して線形であるため、これを線形モデルと呼ぶことは同じである。

表記法

x0=1x_{0} = 1ϕj=1\phi_{j} = 1とすると、上記の二つのモデルをもっと簡単に表せる。

y^=f^(x,w)=j=0nwjxj=wTx \hat{y} = \hat{f}(\mathbf{x}, \mathbf{w}) = \sum\limits_{j=0}^{n} w_{j}x_{j} = \mathbf{w}^{T}\mathbf{x}

このとき、x=[x0xn]T\mathbf{x} = \begin{bmatrix} x_{0} & \dots & x_{n} \end{bmatrix}^{T}w=[w0wn]T\mathbf{w} = \begin{bmatrix} w_{0} & \dots & w_{n} \end{bmatrix}^{T}である。

y^=f^(x,w)=j=0nwjϕj(x)=wTϕ(x) \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})

このとき、ϕ=[ϕ0ϕn]T\boldsymbol{\phi} = \begin{bmatrix} \phi_{0} & \dots & \phi_{n} \end{bmatrix}^{T}である。

統計学における線形回帰

統計学ではwiw_{i}の代わりにβi\beta_{i}と表記し、これを回帰係数と呼ぶ。機械学習では、wiw_{i}重みweightsという。

統計学機械学習
xx独立変数データ
yy従属変数ラベル
w,βw, \beta回帰係数重み

特に機械学習では、b=w0b = w_{0}バイアスbiasと呼ばれている。

学習方法

線形モデルを訓練する方法には、以下のものがある。

  • [勾配降下法]
  • [最小二乗法]
  • ベイジアン
    • [最尤推定(Ml)]
    • [最大事後確率(MAP)]

  1. Christoper M. Bishop, Pattern Recognition annd Machine Learning (2006), p138-139 ↩︎