Language Modelling for Source Code with Transformer-XL

07/31/2020
by   Thomas Dowdell, et al.
0

It has been found that software, like natural language texts, exhibits "naturalness", which can be captured by statistical language models. In recent years, neural language models have been proposed to represent the naturalness of software through deep learning. In this paper, we conduct an experimental evaluation of state-of-the-art neural language models for source code, including RNN-based models and Transformer-XL based models. Through experiments on a large-scale Python code corpus, we find that the Transformer-XL model outperforms RNN-based models (including LSTM and GRU models) in capturing the naturalness of software, with far less computational cost.

READ FULL TEXT
research
06/22/2020

Exploring Software Naturalness through Neural Language Models

The Software Naturalness hypothesis argues that programming languages ca...
research
01/26/2022

An Assessment of the Impact of OCR Noise on Language Models

Neural language models are the backbone of modern-day natural language p...
research
07/17/2023

A Lightweight Framework for High-Quality Code Generation

In recent years, the use of automated source code generation utilizing t...
research
06/26/2023

Exploring the Robustness of Large Language Models for Solving Programming Problems

Using large language models (LLMs) for source code has recently gained a...
research
06/28/2023

An Efficient Sparse Inference Software Accelerator for Transformer-based Language Models on CPUs

In recent years, Transformer-based language models have become the stand...
research
09/05/2023

Language Models for Novelty Detection in System Call Traces

Due to the complexity of modern computer systems, novel and unexpected b...
research
06/08/2023

Extensive Evaluation of Transformer-based Architectures for Adverse Drug Events Extraction

Adverse Event (ADE) extraction is one of the core tasks in digital pharm...

Please sign up or login with your details

Forgot password? Click here to reset