Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Hybrid computing using a neural
network with dynamic external
memory
TIS + Albert 勉強会
2017/02/28
山内隆太郎
概要
• Neural Networkはデータ構造を表現し長期的に保持するのが苦
手
• →微分可能な外部メモリを追加する
• Differentiable Neural Computer(DNC)の発明
結果
• グラフをもとにした推論やブロックパズルなどができるように
なった
モデル全体像
処理の流れ
1. InputをもとにControllerがInterface parameters ξ 𝑡を生成
2. write weight vectorを求め、メモリに書き込む
3. Read weight vectorを求め、メモリを読...
Interface parameters ξ 𝑡
Write weight vectorの生成とMemoryへの書き込み
• 二つの要素を考慮してweightを生成する
1. Write keyとMemory slotの類似度 𝐶𝑡
𝑤
(論文中ではコサイン類似度)
2. 前ステップまでの読み...
Content weighting 𝐶𝑡
𝑤
Allocation weighting 𝑎 𝑡
一度読まれたMemory slotは消去してよい可能性が高いが、そうでない場合もある
→上書き不可フラグψ 𝑡を使って制御
ψ 𝑡は前ステップしか考慮していない。→ usage vectorを作...
Read weight vectorの生成とMemoryからの読み込み
• 三つのread modeがある
1. Content lookup 𝐶𝑡
𝑟,𝑖
2. Forward 𝑓𝑡
𝑖
3. Backward 𝑏𝑡
𝑖
Content lookup 𝐶𝑡
𝑟,𝑖
• Write weighting のときと同じ
Forward/backward
• 書き込み順に従った読み込み
𝑝𝑡は今回書き込みが行われた場所を保持する
link行列Lを以下のように更新
Forward/backward
前回読み込んだslotの直後/直前に書き込まれたslotを得ることができる
Neural Turing Machineとの比較
• 動的メモリ割当
• メモリ解放
• リンク
Experiments
• Synthetic question answering experiments
• Graph experiments
• Block puzzle experiments
Synthetic question answering experiments
• bAbI task
Q. mary journeyed to the kitchen. mary moved to the bedroom. john
wen...
Graph experiments
• 2つノードとその関係の組を入力
• ‘traversal’, ‘shortest path’, ‘inference’の3つの問に答えさせた
• Traversalで98.8%の正解率(LSTMは37%)
Block puzzle experiments
End
Upcoming SlideShare
Loading in …5
×

Hybrid computing using a neural network with dynamic

1,621 views

Published on

Defferentiable Neural Computerの解説

Published in: Technology
  • Be the first to comment

Hybrid computing using a neural network with dynamic

  1. 1. Hybrid computing using a neural network with dynamic external memory TIS + Albert 勉強会 2017/02/28 山内隆太郎
  2. 2. 概要 • Neural Networkはデータ構造を表現し長期的に保持するのが苦 手 • →微分可能な外部メモリを追加する • Differentiable Neural Computer(DNC)の発明
  3. 3. 結果 • グラフをもとにした推論やブロックパズルなどができるように なった
  4. 4. モデル全体像
  5. 5. 処理の流れ 1. InputをもとにControllerがInterface parameters ξ 𝑡を生成 2. write weight vectorを求め、メモリに書き込む 3. Read weight vectorを求め、メモリを読む 4. 以上を繰り返す
  6. 6. Interface parameters ξ 𝑡
  7. 7. Write weight vectorの生成とMemoryへの書き込み • 二つの要素を考慮してweightを生成する 1. Write keyとMemory slotの類似度 𝐶𝑡 𝑤 (論文中ではコサイン類似度) 2. 前ステップまでの読み出し状況 𝑎 𝑡 • 得られたweightを使って以下のように書き込み
  8. 8. Content weighting 𝐶𝑡 𝑤
  9. 9. Allocation weighting 𝑎 𝑡 一度読まれたMemory slotは消去してよい可能性が高いが、そうでない場合もある →上書き不可フラグψ 𝑡を使って制御 ψ 𝑡は前ステップしか考慮していない。→ usage vectorを作る φを𝑢 𝑡を小さい順に並べるようなindexingとして (たぶん𝑎 𝑡 を微分可能にするための処理)
  10. 10. Read weight vectorの生成とMemoryからの読み込み • 三つのread modeがある 1. Content lookup 𝐶𝑡 𝑟,𝑖 2. Forward 𝑓𝑡 𝑖 3. Backward 𝑏𝑡 𝑖
  11. 11. Content lookup 𝐶𝑡 𝑟,𝑖 • Write weighting のときと同じ
  12. 12. Forward/backward • 書き込み順に従った読み込み 𝑝𝑡は今回書き込みが行われた場所を保持する link行列Lを以下のように更新
  13. 13. Forward/backward 前回読み込んだslotの直後/直前に書き込まれたslotを得ることができる
  14. 14. Neural Turing Machineとの比較 • 動的メモリ割当 • メモリ解放 • リンク
  15. 15. Experiments • Synthetic question answering experiments • Graph experiments • Block puzzle experiments
  16. 16. Synthetic question answering experiments • bAbI task Q. mary journeyed to the kitchen. mary moved to the bedroom. john went back to the hallway. john picked up the milk there. what is john carrying ?- john travelled to the garden. john journeyed to the bedroom. what is john carrying ? - mary travelled to the bathroom. john took the apple there. what is john carrying ? - - A. {milk}, {milk}, {milk apple} • mean test error rate 3.8% を達成
  17. 17. Graph experiments • 2つノードとその関係の組を入力 • ‘traversal’, ‘shortest path’, ‘inference’の3つの問に答えさせた • Traversalで98.8%の正解率(LSTMは37%)
  18. 18. Block puzzle experiments
  19. 19. End

×