| Japanese | English |
第21回LSIデザインコンテスト・イン沖縄 設計仕様書 - 3-3
3-3. アルゴリズム
zi2 (中間層i番目の重み付き入力)と zi3(出力層i番目の重み付き入力) は次のように計算される.
ai2 と ai3 はそれぞれ zi2 と zi3 の活性化関数である. 活性化関数には微分可能かつ正規化可能な関数を使用できる. シグモイド関数を例とすると, ai2 と ai3 は次のように示される.
すべての学習データ(n個)を入力し,全体のコストを計算する. 各学習データのコストは出力層と教師信号の二乗誤差である. 計算方法は以下のとおりである.
コストCの値を使用することにより, 重みwとバイアスbを勾配降下法にて計算できる. パラメータは誤差逆伝搬法(Back Propagation : BP)を用いて, 出力側から入力側に向けて最適化していく.
Fig 4 : コスト関数を使った逆誤差伝搬法
δji はFig.4に示す白い丸(ユニット)の誤差を示す. これらの式より,コスト関数のデルタ値を計算することができる. 例えば, ∂C/(∂w121 ) と ∂C/(∂b12 ) は以下のように計算できる.
次の計算式を用いて新しい重みwとバイアスbに更新する.
以降,同じ学習データを入力して,教師信号の値に出力が近似されるまで, コストの計算,およびパラメータ更新を繰り返す. Fig.5にBPのフローチャートを示す.
Fig 5 : ニューラルネットワークの逆誤差伝搬法のフローチャート
例題
以下のPDFファイルとzipファイルをダウンロードして例題を見てみよう.
2017/09/11 : zipファイルの新しいヴァージョンをアップロードしました
PDF file:Neural Network example
Zip file:Neural Network source code for Octave version 3.8 (文字コード: UTF-8N)
Zip file:Neural Network source code for Octave version 4.2.x (文字コード: SHIFT-JIS)