| Japanese | English |
第22回LSIデザインコンテスト・イン沖縄 設計仕様書 - 3-3
3-3. アルゴリズム
zi2 (中間層1のi番目の重み付き入力)と zi3 (中間層2のi番目の重み付き入力)と zi4(出力層i番目の重み付き入力) は次のように計算される.
ai2 と ai3 と ai4 はそれぞれ zi2 と zi3 と zi4の活性化関数である. 活性化関数には微分可能かつ正規化可能な関数を使用できる. ReLU関数(ランプ関数)を例とすると,
ai2 と φ(zi2) は次のように示される.
すべての学習データ(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ファイルをダウンロードして例題を見てみよう.
2018/10/17 : 昨年度とほとんど同じなので、以下のサンプルプログラムを参考に課題に取り組んでみてください.
PDF file:Neural Network exampleZip 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)