Publication Type
Conference Proceeding Article
Version
publishedVersion
Publication Date
10-2021
Abstract
Pre-trained models like BERT have achieved strong improvements on many natural language processing (NLP) tasks, showing their great generalizability. The success of pre-trained models in NLP inspires pre-trained models for programming language. Recently, CodeBERT, a model for both natural language (NL) and programming language (PL), pre-trained on code search dataset, is proposed. Although promising, CodeBERT has not been evaluated beyond its pre-trained dataset for NL-PL tasks. Also, it has only been shown effective on two tasks that are close in nature to its pre-trained data. This raises two questions: Can CodeBERT generalize beyond its pre-trained data? Can it generalize to various software engineering tasks involving NL and PL? Our work answers these questions by performing an empirical investigation into the generalizability of CodeBERT. First, we assess the generalizability of CodeBERT to datasets other than its pre-training data. Specifically, considering the code search task, we conduct experiments on another dataset containing Python code snippets and their corresponding documentation. We also consider yet another dataset of questions and answers collected from Stack Overflow about Python programming. Second, to assess the generalizability of CodeBERT to various software engineering tasks, we apply CodeBERT to the just-in-time defect prediction task. Our empirical results support the generalizability of CodeBERT on the additional data and task. CodeBERT-based solutions can achieve higher or comparable performance than specialized solutions designed for the code search and just-intime defect prediction tasks. However, the superior performance of the CodeBERT requires a tradeoff; for example, it requires much more computation resources as compared to specialized code search approaches.
Keywords
pre-trained model, generalizability, CodeBERT
Discipline
Databases and Information Systems | Software Engineering
Research Areas
Software and Cyber-Physical Systems
Publication
Proceedings of the 37th IEEE International Conference on Software Maintenance and Evolution (ICSME 2021), Virtual Conference, September 27- October 1
First Page
425
Last Page
436
Identifier
10.1109/ICSME52107.2021.00044
Publisher
IEEE
City or Country
Virtual Conference
Citation
ZHOU, Xin; HAN, DongGyun; and LO, David.
Assessing generalizability of CodeBERT. (2021). Proceedings of the 37th IEEE International Conference on Software Maintenance and Evolution (ICSME 2021), Virtual Conference, September 27- October 1. 425-436.
Available at: https://ink.library.smu.edu.sg/sis_research/6854
Copyright Owner and License
Publisher
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-No Derivative Works 4.0 International License.
Additional URL
https://doi.org/10.1109/ICSME52107.2021.00044