某机构赞助的研讨会推动深度学习在代码领域的应用
ICLR研讨会由某机构CodeWhisperer赞助,展示了关于新型因果语言模型对比学习框架以及评估代码生成模型鲁棒性方法的论文。
2023年5月2日
4分钟阅读
研讨会信息
ICLR 2023 深度学习与代码研讨会 (DL4C)
在今年的国际学习表征会议(ICLR)上,某机构的自动代码生成服务CodeWhisperer赞助了第二届深度学习与代码研讨会(DL4C),这是代码深度学习研究的顶级学术平台。今年研讨会的重点领域包括人机交互、评估、推理、负责任的人工智能以及代码领域的开源人工智能。为期一天的DL4C研讨会将于2023年5月5日举行,包括特邀报告、专题讨论和被接收论文的口头报告。
多级对比学习
第一篇论文题为“ContraCLM: 因果语言模型的对比学习”。因果语言模型(如GPT系列模型)是根据给定前面的token来预测序列中下一个token的语言模型。虽然CLM在代码生成等语言生成任务上表现出色,但它们的判别能力较差:例如,无法判断两个词序列是否具有相同含义,或两个代码块是否执行相同功能。
部分原因是CLM倾向于各向异性:即其对输入的表示被限制在表示空间的某个子区域内。为了扩展CLM对表示空间的使用(增加各向同性),某机构研究人员采用对比学习,在相似和不相似的输入对上进行训练。训练过程中,模型学习将不相似输入的表示推远,将相似输入的表示拉近。
具体来说,研究人员提出了一个多级对比学习目标:
- 序列级别:模型学习将具有相同含义的文本序列聚在一起,同时将不同含义的序列推远
- Token级别:模型学习将同一输入序列中的不同token相互推远
这两个目标的结合使模型能够利用更多的表示空间。
新模型ContraCLM可以增强各向同性和判别能力,无论原始模型是否存在表示退化问题。研究人员在自然语言和编程语言任务上评估了模型准确率:
- 在WikiText-103测试集上获得更好的MAUVE分数,生成的文本语义更连贯
- 在CodeNet代码搜索任务上性能提升高达34%,在HumanEval代码补全任务上提升9-11%
评估鲁棒性
第二篇论文题为“ReCode: 代码生成模型的鲁棒性评估”。基于LLM的代码生成与大多数LLM应用类似,涉及基于给定提示词进行补全。然而,LLM对提示词的微小扰动非常敏感:单个拼写错误或单词更改都可能改变输出。
例如,研究人员报告称,将函数名“remove_lowercase”从蛇形命名法(下划线分隔单词)改为驼峰命名法(“removeLowercase”)会完全改变生成的代码,导致某些模型出现逻辑错误。这种脆弱性引发了严重的鲁棒性问题。
论文中提出了ReCode,这是首个针对代码生成模型的全面鲁棒性评估基准:
- 应用30种自动扰动变换,基于真实文档字符串、函数、代码语法等中常见的错误类型
- 变换包括:字符对顺序反转、同义词替换、虚拟代码插入(零次迭代循环或永假条件)、变量重命名、驼峰命名等
ReCode论文还提出了评估指标,用于衡量模型在不同提示词扰动下的鲁棒性。最后,研究人员在ReCode上对多种流行的LLM进行了基准测试并报告了结果。
研讨会的组织者表示:“这次研讨会汇集了该领域的一些顶尖专家。研究这个引人入胜且日益重要的话题,正逢其时。”
研究领域
- 对话式人工智能
标签
- 代码生成
- 大型语言模型 (LLMs)
- ICLRFINISHED