models for programming languages - focusing on two tasks: prediction [7, 8, 9] and code retrieval from natural language queries [10] Ben Trevett is Pre- training models to be used for transfer learning requires [19] introduced CodeBERT,
Previous PDF | Next PDF |
[PDF] A Pre-Trained Model for Programming and Natural Languages
16 nov 2020 · CodeBERT is the first large NL-PL pre- trained model for multiple programming lan- guages Empirical results show that CodeBERT is ef- fective in both code search and code-to-text generation tasks
[PDF] Learning and Evaluating Contextual Embedding of Source Code
language pre-training by using a de-noising autoencoder Instead of learning a language model, CodeBERT (Feng et al , 2020) targets paired natural- language (NL) and bert: A pre-trained model for programming and natural languages
[PDF] Joint Embeddings of Programming and Natural Language
programming language and natural language into the same vector space, The RoBERTa model in this project was pre-trained, as described in [1] in more detail how BERT was trained, the CodeBERT model in [1] was trained to optimize
[PDF] The Effectiveness of Pre-Trained Code Embeddings - ResearchGate
models for programming languages - focusing on two tasks: prediction [7, 8, 9] and code retrieval from natural language queries [10] Ben Trevett is Pre- training models to be used for transfer learning requires [19] introduced CodeBERT,
[PDF] The Effectiveness of Pre-Trained Code Embeddings - Heriot Watt
models for programming languages - focusing on two tasks: prediction [7, 8, 9] and code retrieval from natural language queries [10] Ben Trevett is Pre- training models to be used for transfer learning requires [19] introduced CodeBERT,
pdf CodeBERT: A Pre-Trained Model for Programming and Natural
Abstract We present CodeBERT a bimodal pre-trained model for programming language (PL) and natural language (NL) CodeBERT learns general-purpose representations that support downstream NL-PL applications such as nat- ural language code search code documen- tation generation etc
Searches related to codebert a pre trained model for programming and natural languages
In this work we present CodeBERT a bimodal pre-trained model for natural language (NL) and programming lan-guage (PL) like Python Java JavaScript etc CodeBERT captures the semantic connection between natural language and programming language and produces general-purpose representations that can broadly support NL-PL understand-
[PDF] cohabitation laws in germany
[PDF] cohesive devices pdf download
[PDF] cold war summary pdf
[PDF] colinéarité vecteurs exercices corrigés
[PDF] collection myriade mathématique 3eme correction
[PDF] collection myriade mathématique 4eme correction
[PDF] collection myriade mathématique 5eme correction
[PDF] college in france vs us
[PDF] colligative properties depend on
[PDF] coloriage exercices petite section maternelle pdf
[PDF] com/2018/237 final
[PDF] combien d'heure de cours en fac de droit
[PDF] combien d'heure de vol paris new york
[PDF] combien de decalage horaire france canada
The Effectiveness of Pre-Trained Code Embeddings
Ben Trevett
Heriot-Watt University
Edinburgh, United Kingdom
bbt1@hw.ac.ukDonald ReayHeriot-Watt University
Edinburgh, United Kingdom
d.s.reay@hw.ac.ukN. K. TaylorHeriot-Watt University
Edinburgh, United Kingdom
n.k.taylor@hw.ac.uk Abstract-Few machine learning applications applied to the domain of programming languages make use of transfer learning. It has been shown that in other domains, such as natural lan- guage processing, that transfer learning improves performance on various tasks and leads to faster convergence. This paper investigates the use of transfer learning on machine learning models for programming languages - focusing on two tasks: method name prediction and code retrieval. We find that, for these tasks, transfer learning provides improved performance, as it does to natural languages. We also find that these models can be pre-trained on programming languages that are different from the downstream task language and that even pre-training models on English language data is sufficient to provide similar performance as pre-training on programming languages. We believe this is because these models ignore syntax and instead look for semantic similarity between the named variables in source code. Index Terms-machine learning, neural networks, clustering, transfer learningI. INTRODUCTION
The aim of transfer learning is to improve the performance on taskTiby using a model that has been first trained on taskTj, i.e. the model has beenpre-trainedon taskTj. For example, a model that is first trained to predict a missing word within a sentence is then trained to predict the sentiment of a sentence. Pre-training and using pre-trained machine learning models is commonly used in natural language processing (NLP). Traditionally transfer learning in NLP only pre-trained theembedding layers, those that transformed words into vectors, using methods such as word2vec [1, 2], GloVe [3] or a language model. Recently the NLP field has moved on to pre-training all layers within a model and using a task specific "head" that contains the only parameters that which not pre-trained. Ex- amples of this approach are: ULMFiT [4], ELMo [5] and BERT [6]. The use of these pre-trained models have been shown to achieve state-of-the-art results in NLP tasks such as text classification, question answering and natural language inference. There have been advances in applying machine learning to modelling programming languages, specifically deep learning using neural networks. Common tasks include method name prediction [7, 8, 9] and code retrieval from natural language queries [10]. Ben Trevett is funded by an Engineering and Physical Sciences ResearchCouncil (EPSRC) grant and the ARM University Program.Pre-training models to be used for transfer learning requires
a substantial amount of training data. For example, BERT [6] was trained on a dataset containing billions of words. There is similar data available for programming languages, e.g. open source repositories on websites such asGitHub, which can be used to take advantage of pre-training and transfer learning techniques. However, there has been little effort in this domain. In this paper, we explore transfer learning on programming languages. We test the transfer learning capabilities in two common tasks in the programming language domain: code retrieval and method name prediction. We pre-train our models on datasets with different characteristics: one that is made solely of the downstream task language, one that contains data in the downstream task language and other program- ming languages, a dataset of programming languages that does not contain the downstream task language and also, a dataset that does not containing any programming languages at all. We show that transfer learning provides performance improvements on tasks in programming languages. Our results using models pre-trained on the different datasets suggest that semantic similarity between the variables and method names are more important than the source code syntax for these tasks. Our contributions are: 1) We propose a method for perform- ing transfer learning in the domain of programming languages.