長岡技術科学大学 自然言語処理研究室 B3ゼミ勉強会(第3回)
χϡʔϥϧωοτ平成29年2⽉9⽇⻑岡技術科学⼤学⾃然⾔語処理研究室 ⼩川耀⼀朗
View Slide
⽬次• ਓχϡʔϩϯ• χϡʔϥϧωοτ• χϡʔϥϧωοτͷछྨ• ύʔηϓτϩϯ• όοΫϓϩύήʔγϣϯ1 / 14
⼈⼯ニューロンのモデル⽣物の神経細胞は、他の複数の神経細胞から信号を受け取り、細胞内で処理を施したうえで、信号出⼒を他の神経細胞に送るਓχϡʔϩϯとは、このような働きを単純化して数学的に模擬した計算素⼦のこと2⼈⼯ニューロンの構成複数の⼊⼒信号を受け取り、適当な計算を施したうえで出⼒信号を出⼒する/ 14
⼈⼯ニューロンのモデル3"~$ : ⼊⼒信号"~$ : 重み : しきい値 : 出⼒信号• ⼊⼒信号ごとにあらかじめ決められた定数$を掛け合わせるこの定数$をॏΈと呼ぶ• ⼊⼒信号は重みを掛け合わせたうえで⾜し合わせ、更に͖͍͠と呼ばれる定数で減算する• その結果をとすると、 をୡؔ()で処理し結果を、⼈⼯ニューロンの出⼒とする = - ..− . = ()/ 14
⼈⼯ニューロンのモデル伝達関数には様々な関数を⽤いることができるεςοϓؔやγάϞΠυؔなどがよく⽤いられる4ステップ関数 シグモイド関数シグモイド関数: = ""1234/ 14
⼈⼯ニューロンの挙動5⼈⼯ニューロンの例重み "= 5= 1しきい値 = 1.5"5 0 0 -1.5 00 1 -0.5 01 0 -0.5 01 1 0.5 1ANDཧԋࢉࢠ/ 14
⼈⼯ニューロンの挙動6⼈⼯ニューロンの例重み "= 5= 1しきい値 = . "5 0 0 -0.5 00 1 0.5 11 0 0.5 11 1 1.5 1ORཧԋࢉࢠ/ 14
⼈⼯ニューロンの挙動7⼈⼯ニューロンの例ೖྗ͕1ͭ重み w = −しきい値 = −. 0 0.5 11 -0.5 0NOTཧԋࢉࢠ/ 14⼈⼯ニューロンの組み合わせることで任意の論理回路が構成可能⼈⼯ニューロンの挙動は、重みとしきい値を変更することで変化→ ⼈⼯ニューロンにある挙動をさせたいなら、その挙動に適した重みとしきい値を学習させれば良い
ニューラルネット• 複数の⼈⼯ニューロンを組み合わせたものを、χϡʔϥϧωοτという• ⼈⼯ニューロンを層状に並べ、⼊⼒から出⼒に向けて順に信号が伝搬していくネットワークを、ϑΟʔυϑΥϫʔυܕωοτϫʔΫと呼ぶ8フィードフォワード型ネットワーク/ 14
ニューラルネットの種類フィードフォワード型ネットワークは様々な形式に拡張可能92⼊⼒3階層フィードフォワード型ネットワークこのように、⼈⼯ニューロンを増やしたり、階層を増やしたりすることでネットワークの規模を拡⼤することが可能/ 14
ニューラルネットの種類他にも⼤規模で多層からなる構造層間が全結合ではなく、特定の部分のみ接続される構造10ਂֶशまたある⼈⼯ニューロンの出⼒を前段の⼈⼯ニューロンの⼊⼒に加える構造ϦΧϨϯτωοτϫʔΫ/ 14
パーセプトロン11⼊⼒層は、⼊⼒信号を中間層に伝えるだけの固定化した素⼦中間層の重みとしきい値は、ランダムに初期化した定数出⼒層の重みとしきい値は学習によって変更が可能/ 14
パーセプトロンの学習12誤差 = 教師データ?− 出⼒パーセプトロンの学習では、学習データをニューラルネットに与えて出⼒を計算するし、出⼒と教師データを⽐較し、2つの誤差が⼩さくなるように重みとしきい値を調節するしかし、中間層の固定化された重みとしきい値によっては学習データを満⾜する学習ができない場合がある/ 14
バックプロパゲーションパーセプトロンは出⼒層の重みとしきい値のみを学習する⽅法だった更に前段の重みをバックプロパゲーションを⽤いて学習するバックプロパゲーションでは、出⼒と教師データの誤差を逆向きに伝える131. ネットワーク出⼒に誤差Eが⽣じる2. 誤差Eを、中間層との結合の重みに応じて分配する3. それぞれの⼈⼯ニューロンにおいて、分配された誤差の値を使って重みを更新する3層のネットワークのみでなく、ΑΓଟͷニューラルネットの学習が可能となる / 14
まとめ• ⼈⼯ニューロン• ニューラルネット• ニューラルネットの種類• パーセプトロン• バックプロパゲーション14 / 14