E資格受験に必要なJDLA認定講座の一つであるラビット・チャレンジ(https://ai999.careers/rabbit/)のレポート用ページです。
100文字以上要点まとめ
RNNの課題
時系列を遡れば遡るほど、勾配が消失していく。長い時系列の学習が困難
⇒構造自体を変えて解決したものがLSTM
勾配爆発
勾配が、層を逆伝播するごとに指数関数的に大きくなっっていく
CEC
RNNは考えることと記憶することを一緒くたにしていた
LSTMでは考えることと記憶することを分離
記憶する機能を独立させたのがCEC
記憶するだけなので勾配が1になる
【課題】
入力データについて時間依存度に関係なく重みが一律
⇒学習特性がない
入力ゲートと出力ゲート
入力・出力ゲートを追加することで、
それぞれのゲートへの入力値の重みを、重み行列W,Uで可変可能とする。
⇒CECの課題を解決
入力ゲート:今回の入力と前回の出力をもとに今回の入力をどうCECに記憶させるか
出力ゲート:今回の入力と前回の出力をもとにどうCECの記憶を取り出すか
忘却ゲート
過去の情報がいらなくなった場合、削除されず保管され続ける
⇒過去の情報が要らなくなった場合、そのタイミングで情報を忘却する機能が必要
覗き穴結合
【課題】
CECの保存されている過去の情報を、任意のタイミングで他のノードに伝播させたり、あるいは任意のタイミングで忘却させたい。CEC自身の値は、ゲート制御に影響を与えていない。
覗き穴結合とは?
⇒CEC自身の値に、重み行列を介して伝播可能にした構造。
実装演習
確認テスト
①シグモイド関数を微分した時、入力値が0の時に最大値をとる。その値として正しいものを選択肢から選べ。
0.25
②以下の文章をLSTMに入力し空欄に当てはまる単語を予測したいとする。文中の「とても」という言葉は空欄の予測においてなくなっても影響を及ぼさないと考えられる。このような場合、どのゲートが作用すると考えられるか。「映画おもしろかったね。ところで、とてもお腹が空いたから何か____。」
忘却ゲート
コメント