中文

Patch-CLIP:一种补丁-文本预训练模型

软件工程 2024-04-02 v2

摘要

近年来,补丁表示学习已成为发掘机器学习在软件生成中能力的必要研究方向。这些表示为涉及代码变更的各种任务带来了显著的性能提升。尽管进展毋庸置疑,现有模型的共同局限在于其专门化:它们主要在预测任务(如安全补丁分类)或生成任务(如补丁描述生成)之一中表现出色。这种二分法更因普遍依赖于潜在噪声数据源而加剧。具体而言,许多模型使用集成了抽象语法树(AST)的补丁,而不幸的是其中可能包含解析错误,从而作为次优的监督来源。为应对这些挑战,我们引入 PATCH-CLIP,一种面向补丁与自然语言文本的新型预训练框架。PATCH-CLIP 采用三重损失训练策略:1)补丁-描述对比学习,用于在嵌入空间中分离补丁与描述;2)补丁-描述匹配,用于确保嵌入空间中每个补丁与其描述相关联;3)补丁-描述生成,用于确保补丁嵌入对生成有效。这些损失联合学习,以在涉及补丁的预测与生成任务中均取得良好性能。聚焦于补丁描述生成的实证评估表明,PATCH-CLIP 确立了新的 SOTA 性能,在 BLEU、ROUGE-L、METEOR 和 Recall 等指标上持续优于现有最优方法。

关键词

引用

@article{arxiv.2310.12753,
  title  = {Patch-CLIP: A Patch-Text Pre-Trained Model},
  author = {Xunzhu Tang and Zhenghan Chen and Saad Ezzini and Haoye Tian and Jacques Klein and Tegawende F. Bissyande},
  journal= {arXiv preprint arXiv:2310.12753},
  year   = {2024}
}

备注

The paper is incomplete, causing much confusion for the community