论文

通过语义熵和行为共识自我改进代码生成

Self-Improving Code Generation via Semantic Entropy and Behavioral Consensus

模型训练偏好优化

摘要

提高 大语言模型 (LLM) 的代码生成能力通常依赖于有监督的 微调 或偏好优化,这两者都需要昂贵的外部资源,例如强大的教师模型或可靠的测试单元。然而,在现实场景中,获取参考解决方案和测试预言比获取问题描述和测试输入要困难得多。在本文中,我们解决了一个具有挑战性但现实的问题:代码语言模型可以在没有优秀老师和测试预言机的情况下自我改进吗?为了回答这个问题,我们提出了 ConSelf,一种基于两个关键思想的自我改进方法。首先,我们引入代码语义熵,这是一种新颖的度量标准,通过评估程序行为的功能多样性来衡量问题级别的不确定性,从而能够构建包含最容易学习的问题的课程。其次,我们提出了共识驱动的直接偏好优化(Con-DPO),这是一种基于偏好的 微调 方法,通过行为共识对每个偏好对进行加权,从而减轻噪声自生监督的影响。在各种基准和主干 LLM 上的实验表明,ConSelf 显着优于基准,验证了基于语义熵的课程构建和共识驱动的优化在无需外部监督的情况下改进代码生成的有效性。