[发明专利]一种基于文本混乱度的软件问题报告分类方法有效
申请号: | 201710484890.1 | 申请日: | 2017-06-23 |
公开(公告)号: | CN107273295B | 公开(公告)日: | 2020-03-20 |
发明(设计)人: | 余跃;王怀民;范强;尹刚;王涛;李志星;杨程 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06K9/62;G06N20/00 |
代理公司: | 北京中济纬天专利代理有限公司 11429 | 代理人: | 陆薇薇 |
地址: | 410073 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 文本 混乱 软件 问题 报告 分类 方法 | ||
1.一种基于文本混乱度的软件问题报告分类方法,其特征在于,该分类方法具体包括以下步骤:
步骤1:对GitHub平台进行数据采集,所采集的数据包括大众提交的问题报告以及该报告的相关信息;
步骤2:数据集标注,通过对问题报告的标签进行人工的抽样分析,从而实现对数据集的标注;
所述步骤2包括:
步骤2.1:将具有额外信息的问题报告的标签进行拆分,形成二维向量形式<C,name>,其中C表示这个标签属于的具体类别是什么,name则表示这个标签中的具体信息,将同属于一个类别C下的所有标签进行聚合形成一个标签组(Group),完成问题报告标签的初步聚合;
步骤2.2:通过计算不同类型标签的相似度,将相似度较高的类型进行聚合,其中相似度的计算方法为:
similarity=Group1∩Group2/min(Group1,Group2)
当两个不同的标签组(Group1,Group2)的相似度计算超过相似度阈值时,将该两个不同类型标签组进行合并形成一个组,从而进一步的将分散的类型标签进行聚合;
步骤2.3:将人工分析能够表示问题报告类型的标签分为缺陷以及非缺陷,进而将具有这些标签的问题报告标注为响应的类型;
步骤3:对数据集进行预处理,包括对文本信息进行预处理,去除不需要的信息,并通过文本信息数字化,将文本信息转化为可以进行计算处理的数字形式;
步骤4:分类模型构建,利用已有的机器学习方法,构建一个两层的自动化问题报告分类器;
其中,第一层利用问题报告的文本信息进行构建,并收集文本信息中的混乱度信息;第二层利用第一层的输出结果以及问题报告的结构化信息进行构建,并最终对问题报告进行自动化分类;
所述文本混乱度信息包括:
缺陷概率:问题报告预测为缺陷的概率;
句子数量:通过句子划分将问题报告划分为至少一个句子,并统计该问题报告中的句子数量;
最大缺陷概率:最像缺陷的句子预测为缺陷的概率;
最小缺陷概率:最不像缺陷的句子预测为缺陷概率;
非缺陷位置:最不像缺陷的句子在所有语句中的位置;
缺陷句子数量:预测为缺陷的句子数量;
非缺陷句子数量:预测为非缺陷的句子数量;
语义转变次数:不同句子的语义信息从缺陷转变为非缺陷的次数。
2.根据权利要求1所述的一种基于文本混乱度的软件问题报告分类方法,其特征在于,所述步骤1包括:利用GitHub提供的API,通过脚本从GitHub中爬取软件项目与问题报告的全面信息,抽取出报告中相关的数据;并通过所需的目标字段信息获取结构化的数据,构建token以实现持续爬取所需的数据信息。
3.根据权利要求1所述的一种基于文本混乱度的软件问题报告分类方法,其特征在于,所述步骤3包括,
步骤3.1:对报告中的所有文本进行字母大小写转换,全部改成小写;
步骤3.2:去除文本中的停用词,并进行词性转换;
步骤3.3:利用空间向量模型将问题报告数字化,通过将问题报告进行分词处理,将每个问题报告转化为单词的向量形式,并通过TF-IDF算法计算每个词在向量中的权重。
4.根据权利要求1所述的一种基于文本混乱度的软件问题报告分类方法,其特征在于,所述步骤4包括,
步骤4.1:利用SVM模型,通过文本信息构建第一层分类器,选择概率输出,并收集文本混乱度信息;
步骤4.2:收集问题报告的报告者信息,并与第一层中获取的文本混乱度信息综合作为第二层的输入,并以此使用线性回归方法构建分类模型。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710484890.1/1.html,转载请声明来源钻瓜专利网。