Bridging Pre-trained Models and Downstream Tasks for Source Code Understanding
원문 초록
With the great success of pre-trained models, the pretrain-then-finetune paradigm has been widely adopted on downstream tasks for source code understanding. However, compared to costly training a large-scale model from scratch, how to effectively adapt pre-trained models to a new task has not been fully explored. In this paper, we propose an approach to bridge pre-trained models and code-related tasks. We exploit semantic-preserving transformation to enrich downstream data diversity, and help pre-trained models learn semantic features invariant to these semantically equivalent transformations. Further, we introduce curriculum learning to organize the transformed data in an easy-to-hard manner to fine-tune existing pre-trained models. We apply our approach to a range of pre-trained models, and they significantly outperform the state-of-the-art models on tasks for source code understanding, such as algorithm classification, code clone detection, and code search. Our experiments even show that without heavy pre-training on code data, natural language pre-trained model RoBERTa fine-tuned with our lightweight approach could outperform or rival existing code pre-trained models fine-tuned on the above tasks, such as CodeBERT and GraphCodeBERT. This finding suggests that there is still much room for improvement in code pre-trained models.
함께 살펴볼 논문
공통 태그를 근거로 연결했습니다. 실제 인용 관계나 논문의 우수성을 뜻하지 않습니다.
Advanced Detection of Source Code Clones via an Ensemble of Unsupervised Similarity Measures
Source Code Clone Detection Using Unsupervised Similarity Measures
TransformCode: A Contrastive Learning Framework for Code Embedding via Subtree Transformation
CodeXGLUE: A Machine Learning Benchmark Dataset for Code Understanding and Generation
GraphCodeBERT: Pre-training Code Representations with Data Flow
CodeSAM: Source Code Representation Learning by Infusing Self-Attention with Multi-Code-View Graphs
토론
이 논문과 연결된 포럼 글이 아직 없습니다.