用组合子抽象提高神经程序解释器的通用性和可学习性
Improving the Universality and Learnability of Neural Programmer-Interpreters with Combinator Abstraction
摘要:
为了克服神经程序员解释器(NPI)在其通用性和可学习性方面的局限性,我们提出将组合子抽象纳入神经编程和一个新的NPI架构来支持这种抽象,我们称之为组合神经程序员解释器(CNPI)。组合器抽象极大地减少了需要由CNPI的核心控制器解释的程序的数量和复杂性,同时仍然允许CNPI通过核心与其他组件的协作来表示和解释任意复杂的程序。我们提出了一个小的四个组合子,以捕捉最普遍的编程模式。由于这个组合子集的有限性和简单性,以及从核心中卸下一些解释负担,我们能够构造一个CNPI,它对于所有可组合程序的集合是通用的,这足以解决大多数算法任务。此外,除了对执行轨迹的监督训练外,CNPI还可以通过策略梯度强化学习和适当设计的课程进行训练。
英文摘要:
To overcome the limitations of Neural Programmer-Interpreters (NPI) in its universality and learnability, we propose the incorporation of combinator abstraction into neural programing and a new NPI architecture to support this abstraction, which we call Combinatory Neural Programmer-Interpreter (CNPI). Combinator abstraction dramatically reduces the number and complexity of programs that need to be interpreted by the core controller of CNPI, while still allowing the CNPI to represent and interpret arbitrary complex programs by the collaboration of the core with the other components. We propose a small set of four combinators to capture the most pervasive programming patterns. Due to the finiteness and simplicity of this combinator set and the offloading of some burden of interpretation from the core, we are able construct a CNPI that is universal with respect to the set of all combinatorizable programs, which is adequate for solving most algorithmic tasks. Moreover, besides supervised training on execution traces, CNPI can be trained by policy gradient reinforcement learning with appropriately designed curricula.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。