Towards Understanding the Impacts of Textual Dissimilarity on Duplicate Bug Report Detection
- 论文下载地址: 下载链接
- 作者: Sigma Jahan, Mohammad Masudur Rahman
- 会议: 2023 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)
- 会议等级: CCF B类会议
- Affiliation: 达尔豪西大学计算机科学系
- 发表年份: 2023年
- 关键词: Duplicate Bug Report Detection, Textual Dissimilarity, Software Maintenance, Open-source Systems, Machine Learning Models
摘要
这篇文章的摘要提到,大约40%的软件缺陷报告是重复的,这给软件维护带来了巨大的负担。传统的技术通常侧重于检测文本相似的重复报告,但实际上,许多重复报告可能在文本上并不相似。因此,文章进行了大规模的实证研究,以更好地了解文本不相似对于重复报告检测的影响。研究采集了来自三个开源系统的92,854份缺陷报告,并构建了包含文本相似和文本不相似重复报告的两个数据集。作者评估了三种现有技术在检测重复报告时的性能,并发现它们在不同系统上表现不同。此外,文章还使用嵌入可视化来展示文本不相似的重复报告与相似报告之间的差异。最后,文章总结了相关工作和研究领域的多样性,以解决重复报告检测问题。
创新点与借鉴点
-
文本不相似性的研究:研究文本不相似的重复缺陷报告,这是之前研究很少涉及的领域。传统方法主要关注文本相似的报告,而这篇文章深入探讨了文本不相似性对重复报告检测的影响。
-
大规模经验研究:作者收集了来自三个开源系统的大量缺陷报告,构建了包含不同类型的重复报告的数据集。这种大规模的实验有助于更全面地理解问题。
-
综合性能评估:文章评估了不同的现有技术,包括BM25、LDA+GloVe和Siamese CNN模型,以了解它们在不同系统上的性能。这有助于开发者和研究人员选择合适的技术。
-
方法可迁移性:其他领域的研究人员可以借鉴本文中使用的方法来解决文本不相似性的问题,不仅局限于重复缺陷报告检测。
-
文本嵌入可视化:作者使用嵌入可视化来分析文本不相似性的影响,这种方法也可以在其他文本分析领域中应用,以帮助理解文本数据的结构。
实验
-
数据收集与预处理: 从三个开源系统中收集了92,854份缺陷报告,并进行了预处理,包括去除停用词、标点符号、非字母数字字符、数字、HTML标签和网址,将文本转换为小写,并进行词形还原。同时,丢弃了字符少于50个的报告,以及限制了长描述文本的长度。
-
构建数据集: 将数据分为文本相似和文本不相似的两个类别,构建了包含这两类重复报告的数据集。每个类别被标记为正样本(b+)和负样本(b-),构成了三元组用于模型评估。
-
现有技术的性能评估: 使用现有技术,包括BM25、LDA+GloVe模型和Siamese CNN模型,评估了这些模型在检测重复报告时的性能。使用Recall-rate@K作为性能指标,并分析了在不同系统上的性能差异。
总结
-
(1): 本文研究背景是重复缺陷报告的检测,这是在软件维护中的一个重要问题。大约40%的软件缺陷报告是重复的,给软件维护带来了不小的负担。
-
(2): 过去的方法主要集中在检测文本相似的重复缺陷报告,但在实际应用中,很多重复报告可能在文本上不相似,传统方法难以处理。本文提出的方法旨在深入了解文本不相似性对重复缺陷报告检测的影响。
-
(3): 本文采用了大规模的经验研究方法,首先收集了来自三个开源系统的92,854个缺陷报告,并构建了包含文本相似和文本不相似重复报告的数据集。然后,作者使用现有技术,包括BM25和LDA+GloVe等,以及Siamese CNN模型来评估这些报告的检测性能。
-
(4): 本文的研究任务是检测重复缺陷报告,作者使用Recall-rate@K评估性能,并分析了不同系统的结果。通过嵌入可视化和实验证明,文本不相似的重复报告在嵌入空间中分布不同。该研究有助于改进现有的重复缺陷报告检测方法,以更好地应对软件维护中的挑战。