[发明专利]一种基于稀疏代价矩阵的软件BUG分类方法在审
申请号: | 202010538383.3 | 申请日: | 2020-06-12 |
公开(公告)号: | CN111723010A | 公开(公告)日: | 2020-09-29 |
发明(设计)人: | 李辉;杨溪;张天伦;李阳;陈荣;李博 | 申请(专利权)人: | 大连海事大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F16/906;G06N3/04;G06N3/08 |
代理公司: | 大连东方专利代理有限责任公司 21212 | 代理人: | 姜玉蓉;李洪福 |
地址: | 116026 辽*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 稀疏 代价 矩阵 软件 bug 分类 方法 | ||
本发明公开了一种基于稀疏代价矩阵的软件BUG分类方法,包括以下步骤:S1:获取软件BUG报告;S2:对软件BUG报告数据进行编码操作,S3:初始化稀疏代价矩阵;S4:使用编码后的数据训练加权极限学习机、使其输出正确的报告分类结果;S5:使用训练好的加权极限学习机求出该加权极限学习机的局部泛化误差;S6:使用差分进化算法中的交叉变异策略产生新的软件BUG稀疏权重矩阵;S7:使用新的稀疏权重矩阵在相同不平衡数据集上训练新的加权极限学习机、S8:直至无法得到更低的局部泛化误差;S9:使用能够得到最低的局部泛化误差的加权极限学习机预测未知的软件BUG报告、得到其相应的报告分类结果。
技术领域
本发明涉及软件BUG分类、进化算法、机器学习以及局部泛化误差,尤其涉及用于软件BUG分类的一种基于稀疏代价矩阵的软件BUG分类方法。
背景技术
尽管软件BUG分类领域有许多的进步,但是当受到形式不平衡的复杂数据集的影响时,现有的工作将无法取得有利的表现。而不平衡数据问题在很多场景下非常常见。偏差的类别分布通常会导致分类学习无法获得少数类样本的特征。然而,包括大多数极限学习机工作在内的标准分类学习假定了两个假设,即平等的错误分类成本和平衡的类别分布,在实践中往往不成立。为了解决这个问题,已经针对不平衡数据提出了代价敏感和加权的极限学习机,在这些解决不平衡分类的极限学习机中,需要手动指定了不同分类错误的各种代价。值得注意的是,为不同的类样本设置合理的代价值至关重要,但是,经验法则并不适用于所有情况,在该领域中迫切需要一种估算这些代价的自适应方法。
发明内容
根据现有技术存在的问题,本发明公开了一种基于稀疏代价矩阵的软件BUG分类方法,包括以下步骤:
S1:获取软件BUG报告,并对报告进行分类操作(如:严重、不严重),得到类别数C。
S2:对软件BUG报告数据进行编码操作,将每条软件BUG报告处理为一个相同长度的向量,将软件BUG报告的类别编码为one-hot格式。
S3:初始化稀疏代价矩阵,矩阵规模与软件BUG类别C有关。
S4:使用编码后的数据训练加权极限学习机,使其可以输出正确的报告分类结果,加权极限学习机中使用的权值为S3中获得的。
S5:使用S4中训练好的加权极限学习机求出该加权极限学习机的局部泛化误差。
S6:使用差分进化算法中的交叉变异策略产生新的软件BUG稀疏权重矩阵。
S7:使用S6中产生的新的稀疏权重矩阵在相同不平衡数据集上训练新的加权极限学习机,并计算加权极限学习机的局部泛化误差。
S8:重复S6-S7操作,直至无法得到更低的局部泛化误差。
S9:使用能够得到最低的局部泛化误差的加权极限学习机,预测未知的软件BUG报告,得到其相应的报告分类结果。
进一步的,S1中具体采用如下方式:
S11:从Stack Overflow等软件BUG报告网站,收集一定量的数据,主要保存其BUG描述,并将其分为C类(在这里C=2,表示严重与不严重)。
S2中具体采用如下方式:
S21:对软件BUG报告进行编码操作,即,将不同长度的软件BUG报告使用相同的长度的编码结果表示。在这里我们使用Sentence2vector方法得到编码后的BUG报告,其形式为一个相同长度的向量。在这里我们假设编码后的软件BUG报告数据可以被表示为D={d1,d2,…,dN},其中di是一个长度确定的向量。
进一步的,S3中具体采用如下方式:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大连海事大学,未经大连海事大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010538383.3/2.html,转载请声明来源钻瓜专利网。