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...

Full description

Bibliographic Details
Main Authors: Yasir Hussain, Zhiqiu Huang, Yu Zhou
Format: Article
Language:English
Published: Wiley 2021-06-01
Series:IET Software
Online Access:https://doi.org/10.1049/sfw2.12017
id doaj-1a808b1f198741af8aad9845021ad6a9
record_format Article
spelling doaj-1a808b1f198741af8aad9845021ad6a92021-08-02T08:25:51ZengWileyIET 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.12017
collection DOAJ
language English
format Article
sources DOAJ
author Yasir Hussain
Zhiqiu Huang
Yu Zhou
spellingShingle Yasir Hussain
Zhiqiu Huang
Yu Zhou
Improving source code suggestion with code embedding and enhanced convolutional long short‐term memory
IET Software
author_facet Yasir Hussain
Zhiqiu Huang
Yu Zhou
author_sort Yasir Hussain
title 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_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_sort improving source code suggestion with code embedding and enhanced convolutional long short‐term memory
publisher Wiley
series IET Software
issn 1751-8806
1751-8814
publishDate 2021-06-01
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.
url https://doi.org/10.1049/sfw2.12017
work_keys_str_mv AT yasirhussain improvingsourcecodesuggestionwithcodeembeddingandenhancedconvolutionallongshorttermmemory
AT zhiqiuhuang improvingsourcecodesuggestionwithcodeembeddingandenhancedconvolutionallongshorttermmemory
AT yuzhou improvingsourcecodesuggestionwithcodeembeddingandenhancedconvolutionallongshorttermmemory
_version_ 1721238234767294464