利用语法和强化学习进行神经程序合成
本文提出了一种新的程序合成方法,将寻找最优程序的问题转化为基于强化学习的马尔科夫决策过程, 并将这种方法应用于浮点数 RISC-V 汇编语言的子集上,并结合基于搜索技术的优先搜索树,证明了我们的方法相较于其他基线方法的优越性
Jun, 2018
在这项研究中,我们将通用 SyGuS 问题作为树搜索框架,并提出了一种基于蒙特卡洛树搜索 (MCTS) 的增强学习引导合成算法。我们的算法结合了学习到的策略和值函数,以及平衡探索和利用的树上置信上界。我们还介绍了一种基于现有一阶可满足性问题的反合一方法自动生成 SyGuS 的训练数据。通过这些成果,我们的工具在训练和测试集中相比基准枚举算法提高了 26 个百分点,超过了 1 CVC5 等最先进工具的表现,同时我们还公开了我们的数据集以便于进一步应用机器学习方法解决 SyGuS 问题。
Jul, 2023
本文探讨了深度学习在解决人工智能无法处理的问题方面取得的巨大进展,以及智能系统解决程序合成问题的可能性,研究了程序归纳模型的演变历程以及其成功、失败和重构,最后对程序合成领域进行了对比研究,并提出了未来的研究建议。
Feb, 2018
本文提出了一种可扩展的程序合成框架,通过层级组合程序实现程序合成,该框架可以从输入 / 输出对中合成比之前更长、更复杂的程序,并通过任务嵌入空间和程序解码器将任务嵌入解码为程序。
Mar, 2023
该研究旨在学习一个将自然语言话语映射到可执行程序的语义分析器,该过程中只有正确执行结果的标记,而没有程序的标记。该研究通过将强化学习和最大边际似然相结合,开发出一种新的学习算法。该算法通过整合 MML 的系统搜索和 RL 的随机探索,防止歧义程序的出现,并通过更新参数来更加均匀地分配概率。本研究将该算法应用于新型的神经语义分析器,并在最近的上下文相关语义分析任务中实现了显著的进展。
Apr, 2017
本论文提出一种 MORL 的框架,通过程序合成技术实现对基于神经网络的黑箱模型深度强化学习策略的改进,得到符号表示形式,使其可以被手动或自动调试,经过行为克隆和梯度下降法的改进,不断迭代直到满足所需约束,在 CartPole 问题上的实例研究表明该方法能够进行高效的策略学习改进。
Jul, 2018
利用交互式经验反馈改进大规模语言模型的视觉程序合成能力,通过利用现有的视觉语言任务注释为该任务创造一个粗略的奖励信号,将语言模型作为一种策略,并应用增强的自训练,显示出在对象检测、复合视觉问答和图像 - 文本检索方面,经过自训练的语言模型在每种情况下优于或与量级更大的少样本冻结的语言模型相媲美。
Apr, 2024
本论文提出了一个用自然语言输入构造程序合成器的框架,其使用 NLP 特征和关键词编程翻译的排名学习最优权重和分类器来代替学习并使用各种领域特定语言,可以用于编辑、智能教育系统和飞行信息查询等多个领域。通过 1200 多个英语说明,各合成器为 80%和 90%的说明将期望的程序排名为最好的一个和三个。
Sep, 2015
本文旨在探索自动生成指定语言中的程序,依据输入输出行为生成程序,我们提出了一种新的方法来控制和评估合成数据分布的偏差,通过在 Karel 和小型计算器 DSL 上的实验表明,使用这些分布训练深度网络可以提高跨分布的泛化性能。
Dec, 2019
本文提出了一种用自然语言描述和少量输入 / 输出样例来生成程序的算法,称之为神经程序搜索。该算法将深度学习和程序合成领域的方法结合起来,通过设计丰富的领域特定语言和根据 Seq2Tree 模型进行指导的高效搜索算法。通过一个半合成的描述和测试案例数据集对该方法的质量进行了评估,结果表明我们的算法明显优于基线的带注意力的序列到序列模型。
Feb, 2018