利用排序摊销务实程序合成
Amortizing Pragmatic Program Synthesis with Rankings
AI总结:
本研究提出利用全局务实排序摊销RSA算法,在程序合成中实现数量级加速,同时保持务实推理性能并超越非务实合成器。
摘要:
在程序合成中,智能系统接收一组用户生成的示例,并返回一个与这些示例逻辑一致的程序。理性言语行为(RSA)框架的成功应用构建了“务实”的程序合成器,这些合成器返回的程序除了逻辑一致外,还考虑了用户会选择信息性示例这一事实。然而,运行RSA算法的计算负担限制了务实程序合成在可能程序数量较少的领域中的应用。本研究提出了一种新颖的方法,通过利用“全局务实排序”——即对所有假设的单一全序——来摊销RSA算法。我们证明,对于使用单个演示的务实合成器,我们的全局排序方法能精确复现RSA的排序响应。我们进一步通过实验表明,在在线、多演示设置中,全局排序能有效近似完整的务实合成器。在两个程序合成领域上使用我们的务实排序方法的实验,相比RSA合成器实现了数量级的加速,同时性能优于标准的非务实合成器。
英文摘要:
In program synthesis, an intelligent system takes in a set of user-generated examples and returns a program that is logically consistent with these examples. The usage of Rational Speech Acts (RSA) framework has been successful in building \emph{pragmatic} program synthesizers that return programs which -- in addition to being logically consistent -- account for the fact that a user chooses their examples informatively. However, the computational burden of running the RSA algorithm has restricted the application of pragmatic program synthesis to domains with a small number of possible programs. This work presents a novel method of amortizing the RSA algorithm by leveraging a \emph{global pragmatic ranking} -- a single, total ordering of all the hypotheses. We prove that for a pragmatic synthesizer that uses a single demonstration, our global ranking method exactly replicates RSA's ranked responses. We further empirically show that global rankings effectively approximate the full pragmatic synthesizer in an online, multi-demonstration setting. Experiments on two program synthesis domains using our pragmatic ranking method resulted in orders of magnitudes of speed ups compared to the RSA synthesizer, while outperforming the standard, non-pragmatic synthesizer.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。