引用本文:胡星,李戈,刘芳,金芝.基于深度学习的程序生成与补全技术研究进展.软件学报,2019,30(5):1206-1223
【打印本页】   【下载PDF全文】   查看/发表评论  【EndNote】   【RefMan】   【BibTex】
←前一篇|后一篇→ 过刊浏览    高级检索
本文已被:浏览 5753次   下载 11704 本文二维码信息
码上扫一扫!
分享到: 微信 更多
基于深度学习的程序生成与补全技术研究进展
胡星1,2, 李戈1,2, 刘芳1,2, 金芝1,2
1.北京大学 信息科学技术学院, 北京 100871;2.高可信软件技术教育部重点实验室(北京大学), 北京 100871
摘要:
自动化软件开发一直是软件工程领域的研究热点.目前,互联网技术促进了开源软件和开源社区的发展,这些大规模的代码和数据成为自动化软件开发的机遇.与此同时,深度学习也在软件工程领域开始得到应用.如何将深度学习技术用于大规模代码的学习,并实现机器自动编写程序,是人工智能与软件工程领域的共同期望.机器自动编写程序,辅助甚至在一定程度上代替程序员开发程序,极大地减轻了程序员的开发负担,提高了软件开发的效率和质量.目前,基于深度学习方法自动编写程序主要从两个方面实现:程序生成和代码补全.对这两个方面的应用以及主要涉及的深度学习模型进行了介绍.
关键词:  程序生成  代码补全  深度学习
DOI:10.13328/j.cnki.jos.005717
分类号:
基金项目:国家重点基础研究发展计划(973)(2015CB352201);国家自然科学基金(61620106007,61751210)
Program Generation and Code Completion Techniques Based on Deep Learning: Literature Review
HU Xing1,2, LI Ge1,2, LIU Fang1,2, JIN Zhi1,2
1.School of Electronics Engineering and Computer Science, Peking University, Beijing 100871, China;2.Key Laboratory of High Confidence Software Technologies(Peking University), Ministry of Education, Beijing 100871, China
Abstract:
Automatic software development has always been a research hotspot in the field of software engineering. Currently, Internet technology has promoted the development of open source software and open source communities. These large-scale code and data are opportunities for automatic software development. At the same time, deep learning is beginning to be applied in various software engineering tasks. How to use deep learning technology for large-scale code learning and realize automatic programming of machines is a common expectation in the field of artificial intelligence and software engineering. The machine automatically writes program to assist or even replace the programmer to develop the program to a certain extent, which greatly reduces the development burden of the programmer and improves the efficiency and quality of the software development. At present, automatic programming based on deep learning methods is mainly implemented from two aspects, program generation and code completion. This study introduces these two aspects and the deep learning models.
Key words:  program generation  code completion  deep learning

引用本文:
【打印本页】   【下载PDF全文】   查看/发表评论  【EndNote】   【RefMan】   【BibTex】
←前一篇|后一篇→ 过刊浏览    高级检索
本文已被:浏览次   下载  
分享到: 微信 更多
摘要:
关键词:  
DOI:
分类号:
基金项目:
Abstract:
Key words: