Neural Stored-program Memory
Towards neural simulation of
Universal Turing Machines
Presented by Hung Le
1
Motivation examples
How to teach machine to learn
complex sequential tasks?
• Algorithms
• Continual procedures
• Few-shot learning
• Natural language understanding
2
Neural networks vs Automata
RNNs
Neural
Stacks
Neural
Turing
machines
FSM
PDA
Turing
Machine
https://en.wikipedia.org/
3
Limitations
• All are Turing complete if properly wired
• Neural Turing Machines (NTMs) use the
most powerful model of computation (Turing
machine)
can learn atomic tasks
better than other RNNs
• However, tasks that are complicated,
consisted of multiple subtasks are far from
solvable
Graves, Alex, Greg Wayne, and Ivo Danihelka. "Neural turing machines." arXiv preprint arXiv:1410.5401 (2014).
4
Solutions
• More powerful model: Universal
Turing Machines
• Stored-program principle
• Break a big task into subtasks,
each can be handled by a TM
stored in a program memory
5https://en.wikipedia.org/
Neural stored-program memory (NSM)
Principle Implementation
Program/function Weight of a neural network
Stored-program memory Memory of weights (NSM)
Universal Turing Machine = a Turing
machine that stores other Turing
machines
Neural Universal Turing Machine = a
NTM + a NSM that stores weights of
other NTMs
A UTM uses its program to query other
TMs, each of whose program is defined
for a specific task/subtask
A NUTM learns its weight to query other
NTMs each of whose weights are learnt
towards a specific task/subtask
6
Neural Universal Turing Machine
• Stored program memory stores
key (the address) and values (the
weight)
• The weights of stored NTM and
the weight of the NUTM is learnt
end-to-end by backpropagation
7
Experiments
• Atomic algorithms
• Compositional algorithms
• Continual algorithms
• Few-shot learning
• Natural language quesiton
answering
8
Atomic algorithms
NTM 1
NTM 2
9
Compositional algorithms
10
Continual algorithms
11
Few-shot learning
12
Babi QA
13
Conclusion
• We contribute a new type of external memory for neural network:
memory for weights
• The memory takes inspiration from the stored-program memory in
computer architecture
• Our model simulates Universal Turing Machine
• Experiments demonstrate the computational universality of the
approach
14
Meet the authors
Hung Le
Associate Research Fellow
Applied Artificial Intelligence
Institute
Truyen Tran
Associate Professor
Applied Artificial
Intelligence Institute
Svetha Venkatesh
Co-Director, Applied
Artificial Intelligence
Institute (A2I2)
Alfred Deakin Professor,
Australian Laureate
Fellow
15
Thank you
thai.le@deakin.edu.au
A²I²
Deakin University
Geelong Waurn Ponds
Campus, Geelong, VIC 3220
Hung Le
16

Neural Stored-program Memory

  • 1.
    Neural Stored-program Memory Towardsneural simulation of Universal Turing Machines Presented by Hung Le 1
  • 2.
    Motivation examples How toteach machine to learn complex sequential tasks? • Algorithms • Continual procedures • Few-shot learning • Natural language understanding 2
  • 3.
    Neural networks vsAutomata RNNs Neural Stacks Neural Turing machines FSM PDA Turing Machine https://en.wikipedia.org/ 3
  • 4.
    Limitations • All areTuring complete if properly wired • Neural Turing Machines (NTMs) use the most powerful model of computation (Turing machine) can learn atomic tasks better than other RNNs • However, tasks that are complicated, consisted of multiple subtasks are far from solvable Graves, Alex, Greg Wayne, and Ivo Danihelka. "Neural turing machines." arXiv preprint arXiv:1410.5401 (2014). 4
  • 5.
    Solutions • More powerfulmodel: Universal Turing Machines • Stored-program principle • Break a big task into subtasks, each can be handled by a TM stored in a program memory 5https://en.wikipedia.org/
  • 6.
    Neural stored-program memory(NSM) Principle Implementation Program/function Weight of a neural network Stored-program memory Memory of weights (NSM) Universal Turing Machine = a Turing machine that stores other Turing machines Neural Universal Turing Machine = a NTM + a NSM that stores weights of other NTMs A UTM uses its program to query other TMs, each of whose program is defined for a specific task/subtask A NUTM learns its weight to query other NTMs each of whose weights are learnt towards a specific task/subtask 6
  • 7.
    Neural Universal TuringMachine • Stored program memory stores key (the address) and values (the weight) • The weights of stored NTM and the weight of the NUTM is learnt end-to-end by backpropagation 7
  • 8.
    Experiments • Atomic algorithms •Compositional algorithms • Continual algorithms • Few-shot learning • Natural language quesiton answering 8
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
    Conclusion • We contributea new type of external memory for neural network: memory for weights • The memory takes inspiration from the stored-program memory in computer architecture • Our model simulates Universal Turing Machine • Experiments demonstrate the computational universality of the approach 14
  • 15.
    Meet the authors HungLe Associate Research Fellow Applied Artificial Intelligence Institute Truyen Tran Associate Professor Applied Artificial Intelligence Institute Svetha Venkatesh Co-Director, Applied Artificial Intelligence Institute (A2I2) Alfred Deakin Professor, Australian Laureate Fellow 15
  • 16.
    Thank you thai.le@deakin.edu.au A²I² Deakin University GeelongWaurn Ponds Campus, Geelong, VIC 3220 Hung Le 16