arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2204.09653cs.PLcs.CLcs.SE
收藏

低资源程序设计语言预训练语言模型的可移植性

On the Transferability of Pre-trained Language Models for Low-Resource Programming Languages

University of British Columbia(不列颠哥伦比亚大学);Singapore Management University(新加坡管理大学);JetBrains Research(JetBrains研究院)

Fuxiang Chen, Fatemeh Fard, David Lo, Timofey Bryksin

摘要:

Ahmed和Devanbu最近的一项研究报告说,使用多语言数据集编写的代码语料库来微调多语言预训练语言模型(PLM),与使用仅用一种程序设计语言编写的代码语料库相比,可以实现更高的性能。然而,没有进行分析,就微调单语PLM。此外,某些程序设计语言本质上是不同的,并且用一种语言编写的代码通常不能与其它语言互换,即,Ruby和Java代码具有非常不同的结构。为了更好地理解单语和多语言PLM如何影响不同的程序设计语言,我们调查1)在Ruby上的PLM的性能两个流行的软件工程任务:代码摘要和代码搜索,2)策略(选择程序设计语言),以及微调多语言PLM的Ruby,和3)性能的微调PLM在Ruby上给定不同的代码长度。在这项工作中,我们分析了一百多个预先训练和微调的模型。我们的研究结果表明:1)多语言PLM具有较低的性能时间比(BLEU,METEOR,或MRR分数在微调持续时间)相比,单语PLM,2)我们提出的策略,选择目标程序设计语言微调多语言PLM是有效的:它减少了微调的时间,但在代码摘要和代码搜索任务中实现了更高的性能,以及3)我们提出的策略在不同的码长上一致地显示出良好的性能。

英文摘要:

A recent study by Ahmed and Devanbu reported that using a corpus of code written in multilingual datasets to fine-tune multilingual Pre-trained Language Models (PLMs) achieves higher performance as opposed to using a corpus of code written in just one programming language. However, no analysis was made with respect to fine-tuning monolingual PLMs. Furthermore, some programming languages are inherently different and code written in one language usually cannot be interchanged with the others, i.e., Ruby and Java code possess very different structure. To better understand how monolingual and multilingual PLMs affect different programming languages, we investigate 1) the performance of PLMs on Ruby for two popular Software Engineering tasks: Code Summarization and Code Search, 2) the strategy (to select programming languages) that works well on fine-tuning multilingual PLMs for Ruby, and 3) the performance of the fine-tuned PLMs on Ruby given different code lengths. In this work, we analyze over a hundred of pre-trained and fine-tuned models. Our results show that 1) multilingual PLMs have a lower Performance-to-Time Ratio (the BLEU, METEOR, or MRR scores over the fine-tuning duration) as compared to monolingual PLMs, 2) our proposed strategy to select target programming languages to fine-tune multilingual PLMs is effective: it reduces the time to fine-tune yet achieves higher performance in Code Summarization and Code Search tasks, and 3) our proposed strategy consistently shows good performance on different code lengths.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑