[发明专利]一种软件配置代码制品的层次分类方法有效
申请号: | 201611121525.6 | 申请日: | 2016-12-08 |
公开(公告)号: | CN106775694B | 公开(公告)日: | 2019-10-25 |
发明(设计)人: | 陈伟;魏峻;窦文生;吴国全;高楚舒;徐培兴 | 申请(专利权)人: | 中国科学院软件研究所 |
主分类号: | G06F8/20 | 分类号: | G06F8/20 |
代理公司: | 北京科迪生专利代理有限责任公司 11251 | 代理人: | 杨学明;顾炜 |
地址: | 100190 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 软件 配置 代码 制品 层次 分类 方法 | ||
1.一种软件配置代码制品的层次分类方法,其特征在于包括以下步骤:
(1)构建软件配置代码制品的层次分类体系,从多个CMT代码库爬取CMT代码制品标签,经过标签过滤和处理得到CMT代码制品标签集合作为CMT配置代码制品的类别集合,然后通过挖掘CMT标签集合之间的隶属关系来构建层次分类Ctree;所述CMT表示配置管理工具;
(2)使用CMT软件代码库中的部分CMT代码制品为训练数据集,爬取训练数据集中每个CMT代码制品的名称和描述信息构成相应CMT代码制品的描述文档,采用TF-IDF(termfrequency&inversed document frequency,词频和逆向文件频率)模型实现CMT代码制品的文本特征向量抽取;对训练数据集进行标注,将其中每个CMT代码制品划分到层次分类Ctree中对应的类别;最后基于二元分类器的自上而下(Top-down)分类方法,采用支持向量机算法SVM得到一组分类器,每个分类器实现对层次分类Ctree相应类别的CMT代码制品的划分;
(3)对于给定的待分类CMT制品m,采用逐步求精的方法,使用步骤(2)得到的分类器,对当前CMT代码制品m进行自动化的层次分类,最终将m划分到层次分类Ctree中某个类别。
2.根据权利要求1所述的一种软件配置代码制品的层次分类方法,其特征在:所述步骤(1)具体实现如下:
(11)Tinitial={t1,t2,...,tm}表示爬取获得的CMT代码制品初始标签集合,对于任意标签ti∈Tinitial,1≤i≤m,ti表示集合中的某个CMT代码制品标签,ti=<name,occur>,其中name表示标签名称,occur表示该标签在所有爬取的CMT代码制品样本中出现的次数;
(12)对Tinitial中的标签进行过滤,确保得到的为常用标签,当ti.occur≥30,保留ti,否则从Tinitial中删除ti,过滤后得到常用标签集合Tfilter={t1,t2,...,tn}n≤m,即常用标签集合包含的标签数小于等于上一步骤中得到的CMT代码制品标签集合中的标签数;遍历Tfilter,对其中的标签进行同义词合并,假定tj,tk为Tfilter中的两个标签,即tj,tk∈Tfilter,且tj·name与tk.name为同义词,将tj,tk合并为新的标签tl,且tl.name=tj.name或tk.name,tl.occur=tj.occur+tk·occur,将tl加入常用标签集合Tfilter,并从中删除tj,tk,经过同义词处理后得到CMT代码制品标签集合Tfinal={t1,t2,...,tq},q≤n,即CMT代码制品标签集合包含的标签数量小于或等于常用标签集合包含的标签数量;
(13)根据Tfinal中标签共同出现的情况推断两两标签之间是否存在隶属关系,对于任意两个标签tA,tB∈Tfinal,如果tA是tB的子类,即tB包含tA,则必须满足:(1)被tA标注的CMT代码制品存在很大的概率被tB标注,并且,(2)tA·occur<tB·occur,即标签tA出现的次数少于标签tB;经过上述步骤(12)和(13)的标签过滤和隶属关系处理,得到所有CMT制品Tpair={<t1,t2>,...,<tx,ty>}(tx,ty∈Tfinal);
(14)遍历标签对集合Tpair,根据其中所有CMT制品之间的隶属关系创建层次分类Ctree。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院软件研究所,未经中国科学院软件研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611121525.6/1.html,转载请声明来源钻瓜专利网。