機械学習基礎理論独習

誤りがあればご指摘いただけると幸いです。数式が整うまで少し時間かかります。リンクフリーです。

勉強ログです。リンクフリーです
目次へ戻る

パーセプトロン

モデルの定義

データ集合を {\mathcal D}=\{{\bf x}_1,\dots,{\bf x}_N\} とします。
また、{\bf x}_n\in{\mathbb R}^D,\ t_n\in\{1,-1\},\ {\boldsymbol\phi}:{\mathbb R}^D\rightarrow{\mathbb R}^M とします。
{\bf x}_n はクラス {\mathcal C}_1 またはクラス {\mathcal C}_2 に属し、{\bf x}_n\in{\mathcal C}_1 のとき、t_n=1{\bf x}_n\in{\mathcal C}_2 のとき、t_n=-1 とします。

パーセプトロンは2クラスを分類するモデルです。
入力ベクトル{\bf x}を変換して、特徴ベクトル{\boldsymbol\phi}({\bf x})を得たとき、以下のモデルで識別します。

\begin{eqnarray}
y({\bf x})=f({\bf w}^\top{\boldsymbol\phi}({\bf x}))\tag{1}
\end{eqnarray}

{\boldsymbol\phi}({\bf x})は一般的にバイアス成分\phi_0({\bf x})=1を含んでいます。

ここで、f(\cdot)

\begin{eqnarray}
f(a)=
\left\{
    \begin{array}{l}
     +1,\hspace{20px}a \geq 0\\
     -1,\hspace{20px}a < 0
    \end{array}\tag{2}
  \right.
\end{eqnarray}

です。

目的変数はt\in\{-1,1\}とします。

よって、分類が正しければ

\begin{eqnarray}
{\bf w}^\top{\boldsymbol\phi}({\bf x})t\geq 0 \tag{3}
\end{eqnarray}

となります。

目的関数

目的関数(パーセプトロン基準)を以下のように定義します。

\begin{eqnarray}
E_P({\bf w})=-\sum_{n\in\mathcal{M}}{\bf w}^\top{\boldsymbol\phi}({\bf x}_n)t_n\tag{4}
\end{eqnarray}

\mathcal{M}は誤分類されたデータの集合です。
誤分類されていれば、E_Pは正の値を取り、誤分類されていなければ、E_P0です。

最適化

確率的最急降下アルゴリズムによって最適化します。
確率的最急降下アルゴリズムとは、データを1つ選んで、逐次的にパラメータを更新する手法です。

誤差関数が誤分類されているデータの和になっているので
パターン n が与えられたときの \nabla E_p 以下のようになります。
(パターン n は誤分類されているデータの中からランダムに1つ選びます。)

\begin{eqnarray}
\nabla E_p&=&\frac{\partial}{\partial {\bf w}}E_p({\bf w})\\
&=&\frac{\partial}{\partial {\bf w}}{\bf w}^\top{\boldsymbol\phi}({\bf x}_n)t_n\\
&=&{\boldsymbol\phi}({\bf x}_n)t_n\tag{5}
\end{eqnarray}

更新式は以下のようになります。

\begin{eqnarray}
{\bf w}^{(\tau+1)}={\bf w}^{(\tau)}+\eta{\boldsymbol\phi}({\bf x}_n)t_n\tag{6}
\end{eqnarray}

(6)\etaは学習パラメータです。

パーセプトロンの学習規則

Step1. 重みベクトル {\bf w} の初期値を適当に決定する
Step2. \mathcal D の中から学習パターンを一つ選ぶ
Step3. 識別関数 {\bf w}^\top{\bf x} によって識別を行い、正しく識別できなかった場合のみ
次のように重みベクトルを修正し、新しい重みベクトル {\bf w}' を作る。

\begin{eqnarray}
&&{\bf w}'={\bf w}+\eta {\boldsymbol\phi}({\bf x})t_n\tag{7}
\end{eqnarray}
Step4. 上の処理Step2,3を \mathcal D の全パターンに対して繰り返す。
Step5. \mathcal D の全パターン正しく識別できたら、終了。さもなければStep2に戻る。

パーセプトロンの学習の過程

パーセプトロンの学習の過程を以下に示します。
左上、右上、左下、右下の順に見てください。
黒の矢印は{\bf w}を示しており、緑の丸は誤分類して且つ着目している(ランダムに選ばれた)データを表します。


偉人の名言


神様は私たちに成功してほしいなんて思っていません。
ただ、挑戦することを望んでいるだけよ。
マザー・テレサ

参考文献

わかりやすいパターン認識 第2版 p23-p24
パターン認識機械学習 上巻 p191-p194

動画

なし

目次へ戻る