Improving source code suggestion with code embedding and enhanced convolutional long short‐term memory
Abstract Source code suggestion is the utmost helpful feature in the integrated development environments that helps to quicken software development by suggesting the next possible source code tokens. The source code contains useful semantic information but is ignored or not utilised to its full pote...
Saved in:
Main Authors: | , , |
---|---|
Format: | Article |
Language: | English |
Published: |
Wiley
2021-06-01
|
Series: | IET Software |
Subjects: | |
Online Access: | https://doi.org/10.1049/sfw2.12017 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
_version_ | 1832546646828777472 |
---|---|
author | Yasir Hussain Zhiqiu Huang Yu Zhou |
author_facet | Yasir Hussain Zhiqiu Huang Yu Zhou |
author_sort | Yasir Hussain |
collection | DOAJ |
description | Abstract Source code suggestion is the utmost helpful feature in the integrated development environments that helps to quicken software development by suggesting the next possible source code tokens. The source code contains useful semantic information but is ignored or not utilised to its full potential by existing approaches. To improve the performance of source code suggestion, the authors propose a deep semantic net (DeepSN) that makes use of semantic information of the source code. First, DeepSN uses an enhanced hierarchical convolutional neural network combined with code‐embedding to automatically extract the top‐notch features of the source code and to learn useful semantic information. Next, the source code's long and short‐term context dependencies are captured by using long short‐term memory. We extensively evaluated the proposed approach with three baselines on ten real‐world projects and the results are suggesting that the proposed approach surpasses state‐of‐the‐art approaches. On average, DeepSN achieves 7.6% higher accuracy than the best baseline. |
format | Article |
id | doaj-art-1a808b1f198741af8aad9845021ad6a9 |
institution | Kabale University |
issn | 1751-8806 1751-8814 |
language | English |
publishDate | 2021-06-01 |
publisher | Wiley |
record_format | Article |
series | IET Software |
spelling | doaj-art-1a808b1f198741af8aad9845021ad6a92025-02-03T06:47:35ZengWileyIET Software1751-88061751-88142021-06-0115319921310.1049/sfw2.12017Improving source code suggestion with code embedding and enhanced convolutional long short‐term memoryYasir Hussain0Zhiqiu Huang1Yu Zhou2College of Computer Science and Technology Nanjing University of Aeronautics and Astronautics (NUAA) Nanjing ChinaCollege of Computer Science and Technology Nanjing University of Aeronautics and Astronautics (NUAA) Nanjing ChinaCollege of Computer Science and Technology Nanjing University of Aeronautics and Astronautics (NUAA) Nanjing ChinaAbstract Source code suggestion is the utmost helpful feature in the integrated development environments that helps to quicken software development by suggesting the next possible source code tokens. The source code contains useful semantic information but is ignored or not utilised to its full potential by existing approaches. To improve the performance of source code suggestion, the authors propose a deep semantic net (DeepSN) that makes use of semantic information of the source code. First, DeepSN uses an enhanced hierarchical convolutional neural network combined with code‐embedding to automatically extract the top‐notch features of the source code and to learn useful semantic information. Next, the source code's long and short‐term context dependencies are captured by using long short‐term memory. We extensively evaluated the proposed approach with three baselines on ten real‐world projects and the results are suggesting that the proposed approach surpasses state‐of‐the‐art approaches. On average, DeepSN achieves 7.6% higher accuracy than the best baseline.https://doi.org/10.1049/sfw2.12017feature extractionrecurrent neural netssemantic networkssoftware engineeringsource code (software)convolutional neural nets |
spellingShingle | Yasir Hussain Zhiqiu Huang Yu Zhou Improving source code suggestion with code embedding and enhanced convolutional long short‐term memory IET Software feature extraction recurrent neural nets semantic networks software engineering source code (software) convolutional neural nets |
title | Improving source code suggestion with code embedding and enhanced convolutional long short‐term memory |
title_full | Improving source code suggestion with code embedding and enhanced convolutional long short‐term memory |
title_fullStr | Improving source code suggestion with code embedding and enhanced convolutional long short‐term memory |
title_full_unstemmed | Improving source code suggestion with code embedding and enhanced convolutional long short‐term memory |
title_short | Improving source code suggestion with code embedding and enhanced convolutional long short‐term memory |
title_sort | improving source code suggestion with code embedding and enhanced convolutional long short term memory |
topic | feature extraction recurrent neural nets semantic networks software engineering source code (software) convolutional neural nets |
url | https://doi.org/10.1049/sfw2.12017 |
work_keys_str_mv | AT yasirhussain improvingsourcecodesuggestionwithcodeembeddingandenhancedconvolutionallongshorttermmemory AT zhiqiuhuang improvingsourcecodesuggestionwithcodeembeddingandenhancedconvolutionallongshorttermmemory AT yuzhou improvingsourcecodesuggestionwithcodeembeddingandenhancedconvolutionallongshorttermmemory |