How to learn an algorithm

Juergen Schmidhuber, IDSIA

I review a quarter-century of research on both gradient-based and more general problem solvers that search the space of algorithms running on general purpose computers with internal memory. Architectures include traditional computers, Turing machines, recurrent neural networks, fast weight networks, stack machines, and others. Some of the program searchers are based on algorithmic information theory and are optimal in asymptotic or other senses. Some of them are self-referential and can even learn the learning algorithm itself (recursive self-improvement). Without a teacher, some of them can reinforcement-learn to solve very deep algorithmic problems (involving billions of steps) infeasible for more recent memory-based deep learners.

Related talk: https://www.youtube.com/watch?v=mF5-tr7qAF4

Related G+ post: https://plus.google.com/100849856540000067209