DEEP LEARNING: Recurrent Neural Network : AI-Anesth 6

CNNの基本をクリアしたので、次はいよいよRNN。
RNNについての基本事項:
再帰型ニューラルネット:内部に閉路を持つニューラルネットの総称。
情報を一時的に記憶し、また振る舞いを動的に変化させる。
系列データ中に存在する文脈を捉えて、分類をうまく処理できるようになる。
各時刻tに入力x^tを受け取り、出力y^tを返す。ただし、出力を計算する際にRNNが受け取った入力履歴が関与する。
単純RNNの長期依存性問題:100ステップ以上になると計算が爆発する。
この問題を解決するために登場したのがLSTM(Long Short-Term Memory:長・短期記憶ユニット)。
重要でない情報に対する忘却という概念を組み込むことでRNNで爆発するパラメータ計算を抑制することで、LSTMは長期依存(long-term dependencies)を学習できるように改良したモデル。

RNNのモデル

LSTMモデル

DL4JのLSTMのExampleであるGraveLSTMChartModellingExampleを分析してみる。
GravesLSTMChartModellingExanpleオリジナルのコードは、ウェブ上のシェークスピアの文章にアクセスして、シェークスピア風文章を自動作成させるプログラムであるが、シェークスピアの古語では、たいへんわかりにくいので、ビートルズの42曲の歌詞に変更して挑戦してみる。

学習の結果、得られたビートルズ風機械作成歌詞は以下の通り:
なんのこっちゃ!?

総出力結果は、