知能情報工学 第5回 Widrow-Hoffの学習規則 2016年5月17日 吉川雅博 1 誤識別を許容した学習方法 𝜔1 𝜔2 2つのクラスが重複した場合, 2つのクラスを誤識別なく分類できる識別境界はない → 誤識別を許容した学習規則 Widrow-Hoffの学習規則 2 Widrow-Hoffの学習規則(1) 全学習データの集合を以下のように定義 𝜒 = {𝒙1 , … , 𝒙𝑛 } 𝑝番目の学習データを𝒙𝑝 として,𝑐個の識別関数の値を並べた ベクトルは以下となる 𝑔1 𝒙𝑝 , … , 𝑔𝑐 (𝒙𝑝 ) 𝑡 識別関数の望ましい値𝑏𝑖 を教師信号と呼び, 各クラス分並べたものを教師ベクトルと呼ぶ 𝒃𝑖 = 𝑏1 , … 𝑏𝑖 , … , 𝑏𝑐 𝑡 (𝑏𝑖 = 1, 𝑏𝑗 = 0(𝑗 ≠ 𝑖)) 𝒙𝑝 がクラス𝜔𝑖 に属するのであれば𝑏𝑖 = 1,残りは0とする 3 Widrow-Hoffの学習規則(2) 識別関数の値と教師信号の値との誤差を𝜀𝑖𝑝 とすると, 𝜀𝑖𝑝 = 𝑔𝑖 𝒙𝑝 − 𝑏𝑖 誤差𝜀𝑖𝑝 の2乗和を𝐽𝑝 とすると, 1 𝐽𝑝 = 2 微分のため 1 = 2 𝑐 2 𝜀𝑖𝑝 𝑖=1 1 = 2 𝑐 𝑔𝑖 𝒙𝑝 − 𝑏𝑖 2 𝑖=1 𝑐 𝒘𝑡𝑖 𝒙𝑝 − 𝑏𝑖 2 𝑖=1 4 Widrow-Hoffの学習規則(3) すべての学習データの誤差の和をとったものを𝐽とすると 𝑛 𝐽= 𝑝=1 1 𝐽𝑝 = 2 𝑛 𝑐 2 𝜀𝑖𝑝 𝑝=1 𝑖=1 1 = 2 𝑛 1 = 2 𝑛 𝑐 𝑔𝑖 𝒙𝑝 − 𝑏𝑖 2 𝑝=1 𝑖=1 𝑐 𝒘𝑡𝑖 𝒙𝑝 − 𝑏𝑖 2 𝑝=1 𝑖=1 𝐽を最小にするように各クラスの重み𝒘𝑖 𝑖 = 1, … , 𝑐 を調整する → 最急降下法 5 最急降下法 クラス𝑖に対する重み𝒘𝑖 ,更新後の重み𝒘𝑖 ′,学習係数𝜌とすると 重みの更新式は以下となる 𝜕𝐽 𝐽を𝒘𝑖 の成分で微分して, 𝒘′𝑖 = 𝒘𝑖 − 𝜌 𝜕𝒘𝒊 ベクトル形式に並べたもの 𝐽 (𝑤𝑖0 , 𝐽(𝑤𝑖0 )) 𝑑𝐽 −𝜌 傾き 𝑑𝑤𝑖 𝑤𝑖1 𝑤𝑖0 𝑤𝑖 6 Widrow-Hoffの学習規則(4) 𝜕𝐽 = 𝜕𝒘𝑖 𝑛 𝑝=1 𝜕𝐽𝑝 𝜕𝒘𝑖 1 𝐽𝑝 = 2 𝑐 𝒘𝑡𝑖 𝒙𝑝 − 𝑏𝑖 2 𝑖=1 𝑛 𝒘𝑡𝑖 𝒙𝑝 − 𝑏𝑖 𝒙𝑝 = 𝑝=1 最終的に最急降下法の式は以下となる 𝜕𝐽 𝒘′𝑖 = 𝒘𝑖 − 𝜌 𝜕𝒘𝒊 𝑛 𝒘𝑡𝑖 𝒙𝑝 − 𝑏𝑖 𝒙𝑝 = 𝒘𝑖 − 𝜌 𝑝=1 7 演習7 Widrow-Hoffの学習規則を用いて,以下の学習データから識 別関数を求めよ. 重みの初期値は𝑤0 = 0.2, 𝑤1 = 0.3,学習係数は𝜌 = 0.2とする 𝑥1 (1.0, 1.0) 𝜔1 (1.0, 0.5) (1.0, -0.2) 𝑥0 𝜔2 (1.0, -1.3) ※荒木雅弘「フリーソフトでつくる音声認識システム」より 8 演習7-解答 𝑔1 (𝒙)を学習 クラス𝜔1 → 教師信号1 クラス𝜔2 → 教師信号0 1回目の更新 クラス 𝑥0 𝑥1 𝑤0 𝑤1 𝑔(𝒙) 誤差 𝜔1 1.0 1.0 0.2 0.3 0.5 -0.5 𝜔1 1.0 0.5 0.2 0.3 0.35 -0.65 0.35 − 1 = −0.65 𝜔2 1.0 -0.2 0.2 0.3 0.14 0.14 𝜔2 1.0 -1.3 0.2 0.3 -0.19 -0.19 0.14 − 0 = 0.14 −0.19 − 0 = −0.19 0.5 − 1 = −0.5 誤差の2乗和 0.7282 Widrow-Hoffの学習規則による重みの更新 𝑤0 ′ = 0.2 − 0.2 × −0.5 × 1.0 − 0.65 × 1.0 + 0.14 × 1.0 − 0.19 × 1.0 = 0.44 𝑤1 ′ = 0.3 − 0.2 × (−0.5 × 1.0 − 0.65 × 0.5 + 0.14 × −0.2 − 0.19 × −1.3) 9 = 0.4212 演習7-解答 2回目の更新 クラス 𝑥0 𝑥1 𝑤0 𝑤1 𝑔(𝒙) 誤差 𝜔1 1.0 1.0 0.44 0.4212 0.8612 -0.1388 𝜔1 1.0 0.5 0.44 0.4212 0.6506 -0.3494 𝜔2 1.0 -0.2 0.44 0.4212 0.3557 0.3577 𝜔2 1.0 -1.3 0.44 0.4212 -0.1075 -0.1075 誤差の2乗和 0.2794 Widrow-Hoffの学習規則による重みの更新 𝑤0 ′ = 0.4876 𝑤1 ′ = 0.4702 これ以降10回更新を繰り返すと,誤差は0.2450で落ち着き, 識別関数は𝑔1 𝒙 = 0.5𝑥0 + 0.5𝑥1 となる 10 演習7-解答 𝑔2 (𝒙)を学習 1回目の更新 クラス𝜔1 → 教師信号0 クラス𝜔2 → 教師信号1 クラス 𝑥0 𝑥1 𝑤0 𝑤1 𝑔(𝒙) 誤差 𝜔1 1.0 1.0 0.2 0.3 0.5 0.5 𝜔1 1.0 0.5 0.2 0.3 0.35 0.35 0.35 − 0 = 0.35 𝜔2 1.0 -0.2 0.2 0.3 0.14 -0.86 𝜔2 1.0 -1.3 0.2 0.3 -0.19 -1.19 0.14 − 1 = −0.86 −0.19 − 1 = −1.19 0.5 − 0 = 0.5 誤差の2乗和 2.528 Widrow-Hoffの学習規則による重みの更新 𝑤0 ′ = 0.2 − 0.2 × 0.5 × 1.0 + 0.35 × 1.0 − 0.86 × 1.0 − 1.19 × 1.0 = 0.44 𝑤1 ′ = 0.3 − 0.2 × (0.5 × 1.0 + 0.35 × 0.5 − 0.86 × −0.2 − 1.19 × −1.3) = −0.1788 11 演習7-解答 以降更新を繰り返すと, 識別関数𝑔2 𝒙 = 0.5𝑥0 − 0.5𝑥1 となる 𝑔1 𝒙 = 0.5𝑥0 + 0.5𝑥1 𝑔2 𝒙 = 0.5𝑥0 − 0.5𝑥1 クラス 𝑥0 𝑥1 𝑔1 (𝒙) 𝑔2 (𝒙) 𝜔1 1.0 1.0 1.00 0 𝜔1 1.0 0.5 0.75 0.25 𝜔2 1.0 -0.2 0.4 0.6 𝜔2 1.0 -1.3 -0.15 1.15 12
© Copyright 2024 ExpyDoc