基于图形的自监督程序修复技术,利用诊断反馈
本文介绍了 “搜索,对齐和修复” 数据驱动程序修复框架,旨在自动化初级编程练习的反馈生成,采用了大量的学生提交。该技术可在大型或 MOOC 规模的初级编程课程中使用,其结果表明,在平均 2 秒内,SARFGEN 系统可以为 89.7%不正确的学生提交生成简明有用的反馈,并已集成到 Microsoft-DEV204.1X edX 班级中,用于生产。
Nov, 2017
BugLab 是一种基于机器学习的、自监督学习为主的程序分析方法,通过两个模型共同训练,可以有效地发现和修复代码中的错误,提高了 2374 个真实缺陷数据集的检测和修复准确度,同时发现了 19 个以前未知的错误。
May, 2021
本文介绍了一种名为因果程序修复(CPR)的可解释性方法,该方法基于序列到序列模型和因果推断,可以在自动程序修复的过程中生成决策解释的相关组成部分、通过数据增广来推断这些关系、生成响应的令牌图,并解决划分问题。实验表明,CPR 可以生成合理的解释因果图,并提高自动程序修复的错误修正性能。
May, 2022
使用递归神经网络 (RNNs) 生成自动化反馈以修复编程任务中的语法错误,可以完全修复 31.69% 的提交并部分修正 6.39% 的提交。
Mar, 2016
本文提出了一种名为 “Break-It-Fix-It (BIFI)” 的新的代码修复训练方法,该方法可以在无需标记数据的情况下优化现有模型,在测试集上取得了明显的准确度提高,该方法可以用于 Python 和 C 代码的修复,可能会成为无监督学习各种修复任务的有力起点。
Jun, 2021
我们基于大型语言模型(LLM)提出了一个名为 PaR 的框架,用于解决高级编程作业中的程序错误修复问题,并通过对新的高级学生作业数据集(Defects4DS)和另一个经过深入调查的 ITSP 数据集的评估,展示了超越现有 LMM - 和基于符号的方法的最新性能提升(分别达到了 19.94%和 15.2%的修复率提高)。
Apr, 2024
针对初学者编程者在编程语言上的困惑,通过一种新颖的基于强化学习的编程语言纠错框架,利用专家演示以及自我探索等方式进行训练提升,使得其对有错误的程序进行更好的修复,相对于最先进的工具 DeepFix 在修复错误和更多的编译器错误信息上提高了 14% 和 29%
Jan, 2018
该研究通过整合不同的神经网络模型,使模型在程序综合问题上表现更出色,并且提出了一个神经程序调试工具,可以通过修改神经网络的生成结果来改善程序效果。
Jul, 2020