-
题名基于双重信息检索的Bash代码注释生成方法
被引量:3
- 1
-
-
作者
陈翔
于池
杨光
濮雪莲
崔展齐
-
机构
南通大学信息科学技术学院
信息安全国家重点实验室(中国科学院信息工程研究所)
南通大学经济与管理学院
北京信息科技大学计算机学院
-
出处
《软件学报》
EI
CSCD
北大核心
2023年第3期1310-1329,共20页
-
基金
国家自然科学基金(61872263,61702041,61202006)
信息安全国家重点实验室开放课题(2020-MS-07)
+1 种基金
江苏省前沿引领技术基础研究专项(BK20202001)
江苏省重点产业专利导航项目(DH20200072-10)。
-
文摘
Bash是Linux默认的shell命令语言.它在Linux系统的开发和维护中起到重要作用.对不熟悉Bash语言的开发人员来说,理解Bash代码的目的和功能具有一定的挑战性.针对Bash代码注释自动生成问题提出了一种基于双重信息检索的方法 ExplainBash.该方法基于语义相似度和词法相似度进行双重检索,从而生成高质量代码注释.其中,语义相似度基于CodeBERT和BERT-whitening操作训练出代码语义表示,并基于欧式距离来实现;词法相似度基于代码词元构成的集合,并基于编辑距离来实现.以NL2Bash研究中共享的语料库为基础,进一步合并NLC2CMD竞赛共享的数据以构造高质量语料库.随后,选择了来自代码注释自动生成领域的9种基准方法,这些基准方法覆盖了基于信息检索的方法和基于深度学习的方法.实证研究和人本研究的结果验证了ExplainBash方法的有效性.然后设计了消融实验,对ExplainBash方法内设定(例如检索策略、BERT-whitening操作等)的合理性进行了分析.最后,基于所提方法开发出一个浏览器插件,以方便用户对Bash代码的理解.
-
关键词
程序理解
Bash代码
代码注释生成
信息检索
代码语义
代码词法
-
Keywords
program comprehension
Bash code
code comment generation
information retrieval
code semantic
code lexical
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-