Classification (クラス分け) 問題は、回帰問題と非常に似ている。
最初に、二分類問題 (binary classification problem) について考える。 この問題では y の値は 0 か 1 となる。
yは離散的な値を取るが、連続値を取るものとしてみる。
y∈0,1 なので hθ(x) が 1 を超えたり負の値を取ったりすることは 意味がないようにみえる。そこで、0≤hθ(x)≤1となるように \boldsymbol{\theta}^T \boldsymbol{x} をロジスティック関数 ( Logistic Function ) に入れて使うことにする。
Logistiec Function を利用する |
\displaystyle \begin{eqnarray} h_{\theta}(x) & = & g(\boldsymbol{\theta}^T \boldsymbol{x}) \\ z & = & \boldsymbol{\theta}^T \boldsymbol{x} \\ \displaystyle g(z) & = & \frac{1}{1 + e^{-z}} \end{eqnarray} |
h_{\theta}(x) は、出力が 1 となる確率 (probability) とみなすことができる。
\displaystyle
\begin{eqnarray}
h_{\boldsymbol{\theta}}(\boldsymbol{x}) & = & P(y=1 | \boldsymbol{x}; \boldsymbol{\theta}) \\
& = & 1 - P(y=0 | \boldsymbol{x}; \boldsymbol{\theta}) \\
\end{eqnarray}
P(y=1 | \boldsymbol{x}; \boldsymbol{\theta}) + P(y=0 | \boldsymbol{x}; \boldsymbol{\theta}) = 1 |
{0, 1}分類に応用するために、hypothesis function の出力を次のように変換する。
\displaystyle \begin{eqnarray} h_{\boldsymbol{\theta}}(\boldsymbol{x}) \ge 0.5 \rightarrow y = 1 \\ h_{\boldsymbol{\theta}}(\boldsymbol{x}) \lt 0.5 \rightarrow y = 0 \\ \end{eqnarray} |
z = \boldsymbol{\theta}^T \boldsymbol{x} \ge 0 であれば g(z) = h_{\boldsymbol{\theta}}(\boldsymbol{x}) \ge 0.5 であるので、 結局、次のように表すことができる。
\displaystyle \begin{eqnarray} \boldsymbol{\theta}^T \boldsymbol{x} \ge 0 \rightarrow y = 1 \\ \boldsymbol{\theta}^T \boldsymbol{x} \lt 0 \rightarrow y = 0 \\ \end{eqnarray} |
decision boundary (決定境界) は y=0 とy=1を分ける境界線である。
[自分へのメモ] z = \theta_0 + \theta_1 x_1 + \theta_2 x_2 = 5 - x_1 としているようだ。