中文

CodeScore-R:用于评估代码合成功能正确性的自动化鲁棒性度量

软件工程 2024-06-12 v1

摘要

评估指标在代码合成领域至关重要。常见的编码评估指标可分为三类:匹配类、语义类和执行类。其中,执行类 Pass@k 度量通过执行测试用例来准确评估预测代码的功能。然而,计算该度量需要大量开销,迫切需要一种无需测试用例即可评估预测代码功能的自动化评估指标。此外,良好的评估指标应具备鲁棒性,即即使预测代码发生细微变化,度量仍能保持准确性。为此,本文提出一种基于 UniXcoder 和对比学习的自动化鲁棒度量,称为 CodeScore-R,用于评估代码合成的功能。CodeScore-R 采用诸如草图处理、语法等价转换和突变测试等技术,有效缓解了标识符、语法结构和运算符对评估结果的干扰。实验结果表明,在 Java 和 Python 上的代码生成和迁移任务中,CodeScore-R 在其他评估指标之外,更符合 Pass@k 度量,并且具有更强的鲁棒性。

关键词

引用

@article{arxiv.2406.06902,
  title  = {CodeScore-R: An Automated Robustness Metric for Assessing the FunctionalCorrectness of Code Synthesis},
  author = {Guang Yang and Yu Zhou and Xiang Chen and Xiangyu Zhang},
  journal= {arXiv preprint arXiv:2406.06902},
  year   = {2024}
}

备注

in Chinese language, Journal of Computer Research and Development