Projects per year
Abstract
Context: Code readability classification (which refers to classification of a piece of source code as either readable or unreadable) has attracted increasing concern in academia and industry. To construct accurate classification models, previous studies depended mainly upon handcrafted features. However, the manual feature engineering process is usually labor-intensive and can capture only partial information about the source code, which is likely to limit the model performance.
Objective: To improve code readability classification, we propose the use of Convolutional Neural Networks (ConvNets).
Method: We first introduce a representation strategy (with different granularities) to transform source codes into integer matrices as the input to ConvNets. We then propose DeepCRM, a deep learning-based model for code readability classification. DeepCRM consists of three separate ConvNets with identical architectures that are trained on data preprocessed in different ways. We evaluate our approach against five state-of-the-art code readability models.
Results: The experimental results show that DeepCRM can outperform previous approaches. The improvement in accuracy ranges from 2.4% to 17.2%.
Conclusions: By eliminating the need for manual feature engineering, DeepCRM provides a relatively improved performance, confirming the efficacy of deep learning techniques in the task of code readability classification.
Objective: To improve code readability classification, we propose the use of Convolutional Neural Networks (ConvNets).
Method: We first introduce a representation strategy (with different granularities) to transform source codes into integer matrices as the input to ConvNets. We then propose DeepCRM, a deep learning-based model for code readability classification. DeepCRM consists of three separate ConvNets with identical architectures that are trained on data preprocessed in different ways. We evaluate our approach against five state-of-the-art code readability models.
Results: The experimental results show that DeepCRM can outperform previous approaches. The improvement in accuracy ranges from 2.4% to 17.2%.
Conclusions: By eliminating the need for manual feature engineering, DeepCRM provides a relatively improved performance, confirming the efficacy of deep learning techniques in the task of code readability classification.
| Original language | English |
|---|---|
| Pages (from-to) | 60-71 |
| Journal | Information and Software Technology |
| Volume | 104 |
| Online published | 10 Jul 2018 |
| DOIs | |
| Publication status | Published - Dec 2018 |
Research Keywords
- Code readability
- Convolutional Neural Network
- Deep learning
- Empirical software engineering
- Open source software
- Program comprehension
Fingerprint
Dive into the research topics of 'Improving Code Readability Classification using Convolutional Neural Networks'. Together they form a unique fingerprint.Projects
- 1 Finished
-
GRF: A Software Analytics Framework using Deep Learning on Generalized Data Representations
Keung, J. W. (Principal Investigator / Project Coordinator)
1/09/17 → 25/02/21
Project: Research