[发明专利]基于半监督学习的软件工程知识库的自动化构建实现方法有效
| 申请号: | 201710120880.X | 申请日: | 2017-03-02 |
| 公开(公告)号: | CN106875014B | 公开(公告)日: | 2021-06-15 |
| 发明(设计)人: | 董翔;沈备军;陈凯 | 申请(专利权)人: | 上海交通大学 |
| 主分类号: | G06N5/02 | 分类号: | G06N5/02;G06F16/21 |
| 代理公司: | 上海交达专利事务所 31201 | 代理人: | 王毓理;王锡麟 |
| 地址: | 200240 *** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 监督 学习 软件工程 知识库 自动化 构建 实现 方法 | ||
1.一种基于半监督学习的软件工程知识库的自动化构建实现系统,其特征在于,包括:用于解析维基百科的概念数据和StackOverflow的标签数据的数据解析模块、领域数据扩充模块、数据标注模块、关系扩充模块以及RDF格式化模块,其中:数据解析模块与领域数据扩充模块相连并传输解析后的维基百科概念集合以及StackOverflow标签数据集合的信息,领域数据扩充模块基于StackOverflow标签在维基百科概念集合中扩充软件工程领域知识集合,与数据标注模块和关系扩充模块相连并传输软件工程领域知识集合的信息,数据标注模块标注机器学习需要用到的标注数据包括正例、反例数据,该模块与关系扩充模块相连并传输标注数据信息,关系扩充模块采用机器学习的方法构建上下位关系的机器学习特征,并采用软件工程知识集合提取软件工程领域上下位关系的集合后输出至RDF格式化模块,RDF格式化模块将软件工程领域上下位关系的集合进行RDF化,完成软件工程领域知识库的最终构建;
所述的自动化构建,包括以下步骤:
步骤一、以StackOverflow上提供的软件工程领域标签作为种子词汇,并获得维基百科提供的概念数据集,通过种子词汇标签迭代传播,扩充维基百科上全部软件工程领域概念并得到包含维基结构的软件工程领域知识集合;
步骤二、结合语义及概念在维基百科中的结构特征,对软件工程领域概念构建上下位关系的机器学习特征,即将步骤一得到的软件工程领域知识集合中每一个概念与当前概念在维基百科页面中所有锚链接的软件工程领域概念进行上下位关系的判别;
步骤三、根据机器学习特征,分别采用模版匹配和规则匹配的方法对软件工程领域知识集合中的正例数据和反例数据进行标注,得到基于模板匹配和规则匹配的数据标注;
步骤四、采用半监督的学习方法从包含维基结构的软件工程领域知识集合中进行迭代的关系抽取工作,并建立迭代结果的评估规则以进行优化,具体为:首次迭代采用步骤三得到的基于模板匹配和规则匹配的数据标注进行学习,随后每次迭代均以上次迭代的学习结果为输入,进行新一轮迭代的学习;对于每一次迭代结果,通过优化规则进行迭代结果的判断与过滤,从而通过半监督学习的方式逐渐提高关系抽取结果,即构建的知识库的准确度;
步骤五、对构建得到的知识库进行RDF标准化,完成最终大规模软件工程领域知识库的构建;
所述的概念数据集是指:基于原始的StackOverflow标签和维基百科概念均以XML数据源的形式存在,具体为:以JAVA为编程语言,通过采用SAX工具分别解析XML文件得到软件工程领域种子词汇和维基百科概念数据集;
所述的上下位关系的机器学习特征包括:词干共现度、非对称的公共字串相似度、基于维基结构的锚链接共现度、基于维基结构的结构体信息相似度和基于KL散度的主题分布相似度,其中:
所述的词干共现度是指:对于概念的词义进行相关性计算,通过采用StandfordParser工具提取概念的词干,即中心词,并计算词干的共现度其中:HA,HB为概念A、B的词干,LCA(HA,HB)计算词干HA和HB的最小公共祖先,depth(HA)计算词干HA在WordNet中的深度;
所述的非对称的公共字串相似度是指:由于上下位是一种非对称的关系,因此该特征可以有效避免概念间存在关系密切但不为上下位关系的干扰,即计算概念间公共字串的相似值其中:LCS(A,B)计算概念A,B的最长公共子串长度,Len(A)计算概念A的名称长度;
所述的基于维基结构的锚链接共现度是指:由于每一个概念均与维基百科的某一页面相对应,因此,维基百科页面中的结构及结构中的文本信息可以良好地反映概念指代的信息与含义;通过采用NGD分别对概念的维基百科页面的各个结构进行共现相似度的分析;
所述的共现相似度其中:N为常量,指代维基百科锚链接的总数目;IA和IB分别指代概念A、B的维基百科页面中某一特定结构中锚链接的集合;由于维基百科页面中的引文、正文、属类中的锚链接集合均能良好反映概念的含义,因此分别基于上述三种结构进行NGD的计算,得到三个不同的特征值,其中:f(A)、f(B)分别指代概念A、B页面中的锚链接数目,f(A,B)指代概念A、B在维基百科页面中共同出现的锚链接的数目,当关联关系的NGD值达到限定标准,则将其关系判定为关联关系;
由于属类结构能明确表示上下位的关系,当概念A包含在概念B的属类的锚链接集合中或概念B包含在概念A的属类锚链接的集合中,则为计算的属类结构NGD值等于当前计算结果加附加系数V,根据NGD的取值范围,设定附加系数V=0.05;
所述的基于维基结构的结构体信息相似度是指:维基百科为每个概念提供了大纲和信息框两个维基结构,上述两个结构体都通过关键字来体现概念的主要信息,其中大纲主要描述当前概念维基页面主要从哪几个方面进行描述,而信息框主要描述当前概念所具有的特性和属性;而关联密切的软件工程领域概念往往具有较为相近的大纲和信息框结构,因此通过如下Jaccard对结构所描述信息的相似度进行计算,其中:KA和KB表示概念A、B分别在结构体,即大纲或信息框中的关键字集合,根据大纲和信息框两种结构,分别进行两次结构体信息相似度的计算;
所述的基于KL散度的主题分布相似度是指:对于存在上下位关系的软件工程领域概念,部分概念不具备完整的维基结构;为了挖掘结构不完整的软件工程领域概念的上下位关系,通过KL散度进行概念之间关联度的计算;首先采用LDA对软件工程领域概念进行主题分布的建模;在判断任意两个概念之间的关系时,首先根据主题分布计算概念分布在不同主题内的概率分布;随后采用KL散度计算两个概念之间的主题分布相似性其中:PwA(n)和PwB(n)分别指代概念A、B分布在第n个主题内的概率;
所述的标签迭代传播是指:从构建的软件工程领域种子词汇出发,分多次迭代进行传播,每次迭代仅传播至与当前概念相邻步数为1,即当前概念的页面包含目标概念的锚链接,并且满足任一传播关系的概念,当迭代收敛,即当前迭代没有新的概念被标记时标签传播结束,得到扩充完成的软件领域知识集合;
所述的传播关系包括:同义关系、上下位关系、关联关系,满足任一关系即可获得被传播的标签,其中:
所述的同义关系,其判定方法具体为:当待定概念在当前概念中的Redirect结构中出现,或当前概念在待定概念的Redirect结构中出现,则判定为同义概念;上下位关系判定方法:当待定概念在当前概念的Category结构中出现,或当前概念在待定概念的Category中出现,则判定为上下位概念;
所述的关联关系,其判定具体通过归一化Google距离NGD进行判断;
所述的标注数据是指:给定概念间的关系,标注当前关系是否为上下位关系;
所述的正例数据是指:给定的概念间关系,标注当前关系是上下位关系;
所述的反例数据是指:给定的概念间关系,标注当前关系为非上下位关系;
对于正例数据的标注,采用以下模版,以维基百科文本为数据源,抽取部分上下位关系标注为正例:
NP1{,}“such as”NPList2;
NP1{,}“and other”NP2;
NP1{,}“including”NPList2;
NP1“is a”NP2;
NP1“is the”NP2“of”NP3;
当匹配任一上述模版时,即确定概念之间存在上下位关系,抽取正例的上下位关系后进行特征值的计算以投入到步骤四的工作中;
对于反例数据的标注,随机抽取部分概念组成概念对(A,B),判断概念对(A,B)是否是上下位关系,即概念A是否为B的上位词,首先为概念对(A,B)计算步骤二所述的特征值;然后构造如下规则,判定概念对(X,Y)标注为反例数据当且仅当满足下述任一规则:
WUP(A,B)M;
Len(A)Len(B);
Jaccard info=0;
Jaccard gdl=0;
|KL(A,B)-KL(B,A)|N;
其中:WUP(A,B)计算概念A,B的词干相似度,Len(A)计算概念A的名称长度,Jaccardinfo计算概念A,B之间信息框的结构相似度,Jaccardgdl计算概念A,B之间大纲的结构相似度,KL(A,B)和KL(A,B)分别计算KL散度,M,N为常量;
所述的优化规则包括:环状冲突、关系传递冗余和自闭环冲突,满足冲突条件的关系将从迭代结果中删除;
所述的环状冲突具体是指:上下位关系作为非对称关系,不能出现概念之间的关系环路;
所述的自闭环冲突具体是指:根据概念不能成为自己的上位词或下位词,进行符合本规则关系的移除;
所述的RDF标准化是指:将概念和概念间存在的关系分别采用RDF语言进行描述。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710120880.X/1.html,转载请声明来源钻瓜专利网。





