首页> 中文期刊>软件学报 >编程现场上下文深度感知的代码行推荐

编程现场上下文深度感知的代码行推荐

     

摘要

在软件开发的编程现场,有大量与当前开发任务相关的信息,比如代码上下文信息、用户开发意图等.如果能够根据已有的编程现场上下文给开发人员推荐当前代码行,不仅能够帮助开发人员更好地完成开发任务,还能提高软件开发的效率.而已有的一些方法通常是进行代码修复或者补全,又或者只是基于关键词匹配的搜索方法,很难达到推荐完整代码行的要求.针对上述问题,一种可行的解决方案是基于已有的海量源码数据,利用深度学习析取代码行的相关上下文因子,挖掘隐含的上下文信息,为精准推荐提供基础.因此,提出了 一种基于深度学习的编程现场上下文深度感知的代码行推荐方法,能够在已有的大规模代码数据集中学习上下文之间潜在的关联关系,利用编程现场已有的源码数据和任务数据得到当前可能的代码行,并推荐Top-N给编程人员.代码行深度感知使用RNN Encoder-Decoder,该框架能够将编程现场已有的若干行上文代码行进行编码,得到一个包含已有代码行上下文信息的向量,然后根据该向量进行解码,得到预测的Top-N代码行输出.利用在开源平台上收集的大规模代码行数据集,对方法进行实验并测试,结果显示,该方法能够根据已有的上下文推荐相关的代码行给开发人员,Top-10的推荐准确率有60%左右,并且MRR值在0.3左右,表示用户满意的推荐项排在N个推荐结果中比较靠前的位置.

著录项

  • 来源
    《软件学报》|2021年第11期|3351-3371|共21页
  • 作者单位

    南京航空航天大学计算机科学与技术学院 江苏南京 211106;

    高安全系统的软件开发与验证技术工信部重点实验室(南京航空航天大学) 江苏南京 211106;

    计算机软件新技术国家重点实验室(南京大学) 江苏南京 210023;

    南京航空航天大学计算机科学与技术学院 江苏南京 211106;

    南京航空航天大学计算机科学与技术学院 江苏南京 211106;

    高安全系统的软件开发与验证技术工信部重点实验室(南京航空航天大学) 江苏南京 211106;

    南京航空航天大学计算机科学与技术学院 江苏南京 211106;

    高安全系统的软件开发与验证技术工信部重点实验室(南京航空航天大学) 江苏南京 211106;

    南京航空航天大学计算机科学与技术学院 江苏南京 211106;

    高安全系统的软件开发与验证技术工信部重点实验室(南京航空航天大学) 江苏南京 211106;

  • 原文格式 PDF
  • 正文语种 chi
  • 中图分类 程序设计、软件工程;
  • 关键词

    编程现场; 代码上下文; 代码行; 深度学习; RNN Encoder-Decoder;

  • 入库时间 2023-07-25 13:18:38

相似文献

  • 中文文献
  • 外文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号