论文部分内容阅读
研究表明处理大量的重复缺陷会对人力造成极大的浪费,特别对于大型的项目来说尤其明显。为了减轻人工检测重复报告的工作量,缩减人工管理缺陷的时间,开展缺陷报告自动重复检测方法的研究是具有价值的。本文系统的分析了重复缺陷报告产生的原因,发展现状及其意义,并对国内外的重复缺陷研究方法及深度学习在文本相似度上的方法进行了综述。最终基于循环神经网络(Recurrent Neural Networks,简称RNN)与Attention机制的理论及技术,将LSTM(Long Short-Term Memory)模型,BI-LSTM(Bi-directional Long Short-Term Memory)模型,双层BI-LSTM模型及使用Attention机制的双层BI-LSTM模型,应用于重复缺陷报告领域,用于计算两个缺陷报告间的相似度。并以开源项目Eclipse产生的缺陷报告作为数据集,对比前人经验筛选出数据源对上述模型进行实验,之后对各模型结果进行了对比与分析,并进行了一定程度的调优。整体思路是将缺陷报告分为相似与不相似两类,当两个缺陷报告计算出的结果大于某个阈值时,即判定为两文本相似。并在各个模型中对不同的参数如学习速度,训练轮次,数据长度等进行调整,使模型得到最优的结果。最终使用Attention机制的双层BI-LSTM模型,在本文的实验中能达到最高的准确率91.21%。其余,LSTM模型的最高准确率为87.42%,BI-LSTM模型的最高准确率为88.94%,双向BI-LSTM模型的最高准确率为90.75%。为了有效体现重复缺陷报告检测模型的功能,本文实现了以重复检测为功能核心的缺陷管理系统。本系统采用SSM框架和MySQL数据库,实现管理缺陷的基本功能,并将模型以定时任务的方式应用于缺陷管理系统中,最终会在缺陷报告详情页面展示与该缺陷报告最相似的5个缺陷报告。