パーセプトロン ・ ADALINE

機械学習アルゴリズム

パーセプトロン

・ADLINE

 

人口ニューロン

McCulloch-PittsニューロンMCPニューロン

→ 2値出力を行う単純な理論ゲートとしての神経細胞

理論ゲート:論理演算の結果0 or 1を返す電気回路

 

Frank Roseblattさん:MCPニューロンモデルに基づくパーセプトロンの学習規則をに関する概念を発表した人

アルゴリズム:最適な重み係数を自動的に学習

→ 入力信号と掛け合わせ、ニューロンが発火するかどうか判断

教師あり学習の分類問題を予測できた

w: 重みパラメータ

x: 入力値

z:総入力

  z=w^{T}x

 

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

  1. 重みを0 or 小さい値の乱数 で初期化
  2. 訓練データxごとに

        ① 出力値y^を計算

        ② 重みを更新する

パーセプトロンの収束が保証される条件

・2クラスが線形分離可能

(エポックごとに誤分類されている訓練データがある→ 重みが絶えず更新されてしまう)

・学習率が十分に小さい場合

 

 

ADALINE

パーセプトロンアルゴリズムの改良

特徴

連続値のコスト関数の定義付け + コスト関数の最小化に関する重要な概念 が示された

パーセプトロンとの違い

○ 重みの更新方法

パーセプトロン

・単位ステップ関数(0 or 1)

・個々の訓練データを評価した後に重みを更新

ADALINE:

・線形活性化関数(Widrow-Hoff則)(線形)

\phi \left( w^{T}x\right) =w^{T}x

・訓練データセット全体を用いて勾配を計算 → バッチ勾配降下法

 

勾配降下法によるコスト関数の最小化

アルゴリズムを作る

→ 最適化される目的関数を定義 =最小化したいコスト関数

ADALINEの場合

コスト関数 J (重みの学習に用いられるもの)

J\left( n\right) =\dfrac{1}{2}\sum _{i}\left( y^{\left( i\right) }-\phi \left( z^{\left( i\right) }\right) \right) ^{2}$

=成果指標の結果と実際のクラスラベル(分類問題)との誤差平方和

1/2 は便宜上追加したもの(→ 重みパララメーたに対するコストまたは損失関数の勾配が得やすくなるらしい?)

利点

微分可能→ 勾配降下法でコスト関数を最小化するための重みをつけることができる

重みの変化 → 微分したもの × 学習率 × (-1)