ElnaggarAhmed ; DingWei ; JonesLlion ; GibbsTom ; FeherTamas ; AngererChristoph ; SeveriniSilvia ; MatthesFlorian ; RostBurkhard

摘要
目前,越来越多的成熟自然语言处理应用使人们的生活更加便捷。这些应用是通过源代码构建的,而源代码是软件工程中的语言。然而,用于理解和处理源代码语言以简化软件工程过程的应用研究相对较少。与此同时,变压器模型(Transformer Model),尤其是其与迁移学习(Transfer Learning)的结合,已被证明是自然语言处理任务中的一种强大技术。这些突破为处理源代码和解决软件工程任务指明了有前景的方向。本文介绍了CodeTrans——一种用于软件工程领域的编码器-解码器变压器模型,该模型探索了编码器-解码器变压器模型在六个软件工程任务中的有效性,包括十三个子任务。此外,我们还研究了不同训练策略的效果,包括单任务学习、迁移学习、多任务学习以及多任务学习后的微调。CodeTrans在所有任务上均优于当前最先进的模型。为了加速未来在软件工程领域的研究工作,我们已发布了CodeTrans的预训练模型。https://github.com/agemagician/CodeTrans
代码仓库
agemagician/CodeTrans
官方
tf
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| api-sequence-recommendation-on-deepapi | CodeTrans-MT-TF-Large | BLEU-4: 73.39 |
| code-comment-generation-on-deepcom | CodeTrans-TF-Large | Smoothed BLEU-4: 39.50 |
| code-documentation-generation-on | CodeTrans-MT-Base | Smoothed BLEU-4: 20.39 |
| code-documentation-generation-on-1 | CodeTrans-MT-Large | Smoothed BLEU-4: 21.87 |
| code-documentation-generation-on-2 | CodeTrans-TF-Large | Smoothed BLEU-4: 19.54 |
| code-documentation-generation-on-3 | CodeTrans-MT-Base | Smoothed BLEU-4: 26.23 |
| code-documentation-generation-on-4 | CodeTrans-MT-Base | Smoothed BLEU-4: 15.26 |
| code-documentation-generation-on-5 | CodeTrans-TF-Large | Smoothed BLEU-4: 18.98 |
| git-commit-message-generation-on-commitgen | CodeTrans-TF-Large | BLEU-4: 44.41 |
| program-synthesis-on-algolisp | CodeTrans-MT-TF-Small | Accuracy: 90.31 |
| source-code-summarization-on-summarizing-1 | CodeTrans-MT-Large | Smoothed BLEU-4: 23.57 |
| source-code-summarization-on-summarizing-2 | CodeTrans-MT-Base | Smoothed BLEU-4: 13.37 |
| source-code-summarization-on-summarizing-3 | CodeTrans-MT-TF-Large | Smoothed BLEU-4: 19.98 |