SuperCoder:基于状态叠加在噪声条件下进行程序学习
机器学习
2020-12-08 v1
摘要
我们提出一种在领域特定语言(Domain Specific Language, DSL)中进行程序学习的新方法,该方法基于梯度下降且无需直接搜索。我们方法的第一部分是对 DSL 变量的概率表示。在程序序列的每个时间步,不同的 DSL 函数以一定概率作用于 DSL 变量,导致不同的可能结果。我们并非分别处理所有这些输出(其数量随每个时间步指数增长),而是将它们收集到一个变量叠加态中,该叠加态以单一但模糊的状态捕获信息。该状态在最终时间步通过损失函数与真实输出进行对比。我们方法的第二部分是基于注意力的循环神经网络,其为优化概率表示的梯度下降提供合适的初始化点。我们开发的方法在合成长程序方面超越了当前最优水平,并能够在噪声下学习程序。
引用
@article{arxiv.2012.03925,
title = {SuperCoder: Program Learning Under Noisy Conditions From Superposition of States},
author = {Ali Davody and Mahmoud Safari and Răzvan V. Florian},
journal= {arXiv preprint arXiv:2012.03925},
year = {2020}
}
备注
11 pages, 6 figures