在当前的软件开发环境中,海量的低质量、无意义的代码知识为开发人员进行代码复用造成了阻碍,大大降低了软件开发效率。为了快速准确地为开发人员推荐高质量的代码知识,提出了基于SBERT(sentence-BERT)模型的代码片段推荐方法CSRSB(code...在当前的软件开发环境中,海量的低质量、无意义的代码知识为开发人员进行代码复用造成了阻碍,大大降低了软件开发效率。为了快速准确地为开发人员推荐高质量的代码知识,提出了基于SBERT(sentence-BERT)模型的代码片段推荐方法CSRSB(code snippets recommendation based on sentence-BERT)。该方法首先获取海量的高质量数据来构建代码语料库,并基于深度学习模型SBERT为代码片段对应的自然语言描述和用户输入的自然语言查询生成具有丰富语义的句向量,通过比较点积相似度来实现代码片段的推荐。使用命中率、平均倒数排名和平均准确率这三个常用推荐评估指标与现有相关研究中的方法进行对比来验证该方法的有效性。实验结果表明,CSRSB在有效提高代码片段推荐准确度的同时也能够做到快速推荐。展开更多
在开源软件和开源平台中,开发人员可以通过提交issue来记录所发现的软件错误或提出新功能需求.由于缺乏经验、专业水平有限等原因,用户可能无法对issue内容进行准确有效地总结,导致issue标题质量较低,进而降低issue的解决效率.此外,现有...在开源软件和开源平台中,开发人员可以通过提交issue来记录所发现的软件错误或提出新功能需求.由于缺乏经验、专业水平有限等原因,用户可能无法对issue内容进行准确有效地总结,导致issue标题质量较低,进而降低issue的解决效率.此外,现有的issue标题自动生成方法主要面向GitHub等英文开源平台,当应用在Gitee等国产开源平台时表现不佳.同时,现有方法主要使用issue主体描述作为输入,忽略了issue中的代码片段等重要信息.为此,本文提出一种面向Gitee平台的issue标题自动生成方法GITG(Gitee Issue Title Generation),针对包含中文和英文文本的issue,使用构建的Gitee issue数据集对支持中文的预训练模型Chinese BART(Bidirectional and Auto-Regressive Transformers)进行微调,利用issue主体描述和代码片段的双模态信息来自动生成issue标题.为验证GITG的有效性,构建了包含18242个Gitee issue样本的数据集.实验结果表明,GITG在ROUGE-1、ROUGE-2和ROUGE-L指标上相较于iTAPE和iTiger分别至少提升了13.09%、10.18%和12.84%,在BLEU和METEOR指标上同样取得了性能提升.人工评价结果表明,GITG生成标题的平均得分在整体分数、流畅性、信息性和简洁性4个评价指标上相较iTAPE和iTiger分别至少提升了26.7%、20.8%、24.2%和20.0%.展开更多
文摘在当前的软件开发环境中,海量的低质量、无意义的代码知识为开发人员进行代码复用造成了阻碍,大大降低了软件开发效率。为了快速准确地为开发人员推荐高质量的代码知识,提出了基于SBERT(sentence-BERT)模型的代码片段推荐方法CSRSB(code snippets recommendation based on sentence-BERT)。该方法首先获取海量的高质量数据来构建代码语料库,并基于深度学习模型SBERT为代码片段对应的自然语言描述和用户输入的自然语言查询生成具有丰富语义的句向量,通过比较点积相似度来实现代码片段的推荐。使用命中率、平均倒数排名和平均准确率这三个常用推荐评估指标与现有相关研究中的方法进行对比来验证该方法的有效性。实验结果表明,CSRSB在有效提高代码片段推荐准确度的同时也能够做到快速推荐。
文摘在开源软件和开源平台中,开发人员可以通过提交issue来记录所发现的软件错误或提出新功能需求.由于缺乏经验、专业水平有限等原因,用户可能无法对issue内容进行准确有效地总结,导致issue标题质量较低,进而降低issue的解决效率.此外,现有的issue标题自动生成方法主要面向GitHub等英文开源平台,当应用在Gitee等国产开源平台时表现不佳.同时,现有方法主要使用issue主体描述作为输入,忽略了issue中的代码片段等重要信息.为此,本文提出一种面向Gitee平台的issue标题自动生成方法GITG(Gitee Issue Title Generation),针对包含中文和英文文本的issue,使用构建的Gitee issue数据集对支持中文的预训练模型Chinese BART(Bidirectional and Auto-Regressive Transformers)进行微调,利用issue主体描述和代码片段的双模态信息来自动生成issue标题.为验证GITG的有效性,构建了包含18242个Gitee issue样本的数据集.实验结果表明,GITG在ROUGE-1、ROUGE-2和ROUGE-L指标上相较于iTAPE和iTiger分别至少提升了13.09%、10.18%和12.84%,在BLEU和METEOR指标上同样取得了性能提升.人工评价结果表明,GITG生成标题的平均得分在整体分数、流畅性、信息性和简洁性4个评价指标上相较iTAPE和iTiger分别至少提升了26.7%、20.8%、24.2%和20.0%.