Lie-Access Neural Turing Machineを纏める
ランニングできず 英語できず
(1)引き続き Lie-access Neural Turing Machine を読む。この論文は2つに分かれている。
1) DeepMindのNeural Turing Machine(NTM)が以下の複雑なパターンの学習できる理由
・a b c d e f g ⇔ g f e d b aと逆を教えると x y w v z → z v w y zと逆出力する
・a b c ⇔ a b c a b c a b cと3回繰返すと v x y z→ v x y z v x y z v x y zと3回出力
・3 4 5 6 7 ⇔ 3 5 7 4 6と奇数先とすると a b c d e→ a c e b dと奇数順から出力
この様な学習はLSTM単独ではできず、外部記憶で記憶できるため可能になっている。
これは下図にある様に、外部記憶のアクセス・コントローラがニューラルネットで構成され、これが適切に移動するからであるが、この論文はこの部分がLie群多様体上の動きであるので、安定した結果が得られるとの主張である。
上図を式で記述すると以下の展開になっている
ここで
はLSTMの隠れ変数
は外部記憶からの読込値
は外部記憶(N×M)でで構成される
は外部記憶のキー
はキー位置での値(vector)
はキー位置でのデータ長
ここで外部記憶への針(Header)はとすると、読込値は以下となる
上式のは外部記憶のキー毎での重みであって、ほど内積は大きくなる。
即ち隠れ変数と似たキーがとして検索されることになる
2) Lie群上のNTM(LANTM)モデルでの検証
この主張を確認するため、アクセス・コントローラをLie群上の関数で実装して、DeepMindのNTMと比較して、実現できるか確認している。得られた結果はかなりの精度の向上が示されている。
HeadはLie群上で操作で移動するが、以下の2つのLie群多様体上を移動するものとする。
Headの位置の移動
(A) Lie群上のシフト移動
(B) Lie群上の球面上の移動
読込み値を決める重みはLie群上の距離 の近さに比例と定義する
これは近い程大きな値を取るので、DeepMindのNTMがの内積と同じ考え方である。