一种基于图书目录的知识图谱的构建方法

文档序号:6520402阅读:503来源:国知局
一种基于图书目录的知识图谱的构建方法
【专利摘要】本发明公开了一种基于图书目录的知识图谱的构建方法。它抽取数字化图书中的目录页,区分目录中条目长度,将长条目用自然语言处理工具进行词性标注得到词性数组,利用连词、标点和词性规则提取出候选节点,然后与短条目一起,去百度百科、互动百科中鉴定并利用目录结构形成上下级关系和并列关系,作为知识图谱的骨架,同时区分出强弱并列关系,分别作为增量补充进上下级关系,并根据以后缀为基础的挖掘噪声数据的算法,从未通过百科鉴定的条目中选取出节点补充进知识图谱,最后,对补充完的知识图谱中的关系,算其权重再进行排序,从而筛选掉噪声。本发明比目前已有的知识图谱有更丰富的节点,更好的可扩展性,及更高的准确率。
【专利说明】一种基于图书目录的知识图谱的构建方法
【技术领域】
[0001]本发明涉及利用计算机人工智能、数据挖掘等方法进行知识图谱的生成,尤其涉及一种基于图书目录的知识图谱的构建方法。
【背景技术】
[0002]计算机快速发展和普及的今天,为了更方便地、更清晰地获取信息、学习知识,以及分析挖掘知识间的联系演化过程,越来越需要一个内容、层次丰富,准确性高,并且易于扩展的知识图谱,而如何构建这一知识图谱则自然地成为了当前研究的热点。
[0003]目前的中文的知识图谱有HowNet、互动百科知识树、CNKI分类,但是它们各自存在局限性以及各种问题。
[0004]HowNet是有中国科学院董振东先生开发的,以汉语和英语的词语所代表的概念为描述对象,以揭示概念与概念之间以及概念所具有的属性之间的关系为基本内容的常识知识库。具体来说,Hownet中节点大部分为通俗的词汇,层次并不能做深,相对而言节点数量少、关系少,且需要由人工生成。
[0005]互动百科知识树是按传统的百科分类方式,将百科大全分为人物、历史、文化、艺术、自然、地理、科学、经济、生活、社会、体育、技术12大客观分类,每个客观分类下又逐级划分为不同的二级分类、三级分类等子类。互动百科知识树中结构固定,层次相对不深,且是人工生成,不利于扩展。
[0006]CNKI 即中国知识基础设施工程(China National Knowledge Infrastructure)。CNKI工程是以实现全社会知识资源传播共享与增值利用为目标的信息化建设项目,由清华大学、清华同方发起,始建于1999年6月。CNKI分类以学科分类为基础,将数据库中的文献分为十个专辑,每个专辑下分为若干个专题,共计168个专题。不足之处是层次相对少、节点间关系相对稀疏、结构相对固定扩展性不好,且是人工生成。

【发明内容】

[0007]本发明的目的是为克服现有技术的不足,提供一种基于图书目录的自动生成知识图谱的方法。
[0008]基于图书目录的知识图谱的构建方法包括以下步骤:
[0009]I)选择一本书,将其目录页进行光学字符识别实现数字化,并在数字化的目录结构上,按照目录中条目的长度,区分出长条目和短条目两类条目;
[0010]2)对短条目直接作为一批候选节点,同时将长条目利用开源的自然语言处理工具FudanNLP进行词性标注得到词性数组,然后利用连词、标点和词性规则提取出另外一批候选节点;
[0011]3)对两批候选节点,首先进行严格过滤,去百度百科、互动百科中鉴定该词条存在与否,通过百度百科、互动百科鉴定的部分利用目录的上下级结构形成上下级关系,利用目录的同级结构形成并列关系,以这两部分作为知识图谱的骨架;[0012]4)区分出强弱并列关系,从两种并列关系中分别选取出节点,进行增量补充进上下级关系,丰富上一步得到的知识图谱的骨架;
[0013]5)根据提出的以后缀为基础的挖掘噪声数据中有用部分的方法,从未通过百度百科、互动百科鉴定的条目中选取出一部分节点补充进知识图谱中;
[0014]6)对补充完的知识图谱中的每一条关系,算其权重再进行排序,从而筛选掉一部分噪声,实现排序筛选。
[0015]所述的步骤2)如下:
[0016]对句子利用自然语言处理工具去切词并标注词性,按照顿号和词性为连词的并列连接词去对句子分裂,一个句子分裂出的一个字符串数组,
[0017]首先对每一个分裂成的字符串数组A中的每一个子字符串A[i],形成对每一个A[i]这样的子字符串的一个〈单词,词性〉的词性数组,
[0018]接下来对词性数组中相邻的元素进行合并,在合并的过程中对字符串数组A中不同位置的字符串采用不同的合并顺序,即对字符串数组A中的第一个子字符串A[0]的词性数组处理时采用由后往前把连续的形容词、名词合并成一个单词,同时,以A[0]的词性数组中最后一个单词的词性为基准词性 ,利用基准词性提高对字符串数组A中接下来的字符串,在合并词性数组时的准确率,
[0019]对第二个子字符串A[l]及以后的每一个子字符串的词性数组处理时,采用如下方法:
[0020]2.1)若基准词性为名词,则对A[l]及以后的每一个字符串各自的词性数组中都由前向后匹配到最后一个词性为名词的为止,形成一个单词,否则不返回结果;
[0021]2.2)电影、书名知识节点会加上《》或“ ”符号,则若基准词性为标定符号,即书名号、引号时,则对A[l]及以后的每一个字符串各自的词性数组中都由前向后匹配到最后一个标定符号为止,形成一个单词,否则不返回结果;
[0022]若基准词性不为名词或者标定符号,则对A[l]及以后的每一个字符串各自的词性数组中,当第一个词性与基准词性匹配,则形成一个单词,否则不返回结果;
[0023]对百度百科、互动百科上未收录的词,利用归一化谷歌距离(Normalized GoogleDistance)计算下两者在一起的凝结度,在值为O到一个阈值之间的两节点被认为是一组能被合并吸纳的合理的词,当未通过词性鉴定,为利用词性规则合并出来的单词时,则对其词性数组,利用归一化谷歌距离算出值决定是否收录,

[0024]
【权利要求】
1.一种基于图书目录的知识图谱的构建方法,其特征在于包括以下步骤: 1)选择一本书,将其目录页进行光学字符识别实现数字化,并在数字化的目录结构上,按照目录中条目的长度,区分出长条目和短条目两类条目; 2)对短条目直接作为一批候选节点,同时将长条目利用开源的自然语言处理工具FudanNLP进行词性标注得到词性数组,然后利用连词、标点和词性规则提取出另外一批候选节点; 3)对两批候选节点,首先进行严格过滤,去百度百科、互动百科中鉴定该词条存在与否,通过百度百科、互动百科鉴定的部分利用目录的上下级结构形成上下级关系,利用目录的同级结构形成并列关系,以这两部分作为知识图谱的骨架; 4)区分出强弱并列关系,从两种并列关系中分别选取出节点,进行增量补充进上下级关系,丰富上一步得到的知识图谱的骨架; 5)根据提出的以后缀为基础的挖掘噪声数据中有用部分的方法,从未通过百度百科、互动百科鉴定的条目中选取出一部分节点补充进知识图谱中; 6)对补充完的知识图谱中的每一条关系,算其权重再进行排序,从而筛选掉一部分噪声,实现排序筛选。
2.根据权利要求1所述的 一种基于图书目录的知识图谱的构建方法,其特征在于:所述的步骤2)如下: 对句子利用自然语言处理工具去切词并标注词性,按照顿号和词性为连词的并列连接词去对句子分裂,一个句子分裂出的一个字符串数组, 首先对每一个分裂成的字符串数组A中的每一个子字符串A[i],形成对每一个A[i]这样的子字符串的一个〈单词,词性 > 的词性数组, 接下来对词性数组中相邻的元素进行合并,在合并的过程中对字符串数组A中不同位置的字符串采用不同的合并顺序,即对字符串数组A中的第一个子字符串A[0]的词性数组处理时采用由后往前把连续的形容词、名词合并成一个单词,同时,以A[0]的词性数组中最后一个单词的词性为基准词性,利用基准词性提高对字符串数组A中接下来的字符串,在合并词性数组时的准确率, 对第二个子字符串A[l]及以后的每一个子字符串的词性数组处理时,采用如下方法: 2.1)若基准词性为名词,则对A[l]及以后的每一个字符串各自的词性数组中都由前向后匹配到最后一个词性为名词的为止,形成一个单词,否则不返回结果; 2.2)电影、书名知识节点会加上《》或“ ”符号,则若基准词性为标定符号,即书名号、弓丨号时,则对A[l]及以后的每一个字符串各自的词性数组中都由前向后匹配到最后一个标定符号为止,形成一个单词,否则不返回结果; 若基准词性不为名词或者标定符号,则对A[l]及以后的每一个字符串各自的词性数组中,当第一个词性与基准词性匹配,则形成一个单词,否则不返回结果; 对百度百科、互动百科上未收录的词,利用归一化谷歌距离(Normalized GoogleDistance)计算下两者在一起的凝结度,在值为O到一个阈值之间的两节点被认为是一组能被合并吸纳的合理的词,当未通过词性鉴定,为利用词性规则合并出来的单词时,则对其词性数组,利用归一化谷歌距离算出值决定是否收录,
3.根据权利要求1所述的一种基于图书目录的知识图谱的构建方法,其特征在于:所述的步骤3)包括: 3.1)对于每一本书的光学字符识别处理出的图书目录页中的习题、实验、实例这样的图书结构化信息,通常会在同一本书中的同一层次的目录中重复出现多次,这样通过对每一层次的目录建立一个存有〈目录条目,计数〉的哈希表就可以统计并筛选出; 3.2)对于目录条目的长度进行限制,只取9个中文字符及以下长度的目录条目;利用百度百科、互动百科上的词条,建立出索引,然后在处理目录中的每一个节点时,进行百度百科、互动百科鉴定,百度百科、互动百科鉴定通过的被收录; 在处理每一个目录中的节点时,利用开源自然语言处理软件FudanNLP进行词法分析,当词性标记为动词时,则不去收录; 3.3)对于目录条目的长度在9个中文字符以上长度的目录条目,若处理的条目类型为“名词+连词+名词”的类型,采用步骤2.1)、步骤2.2)中对句子中抽取并列关系的做法即可,然后再和“名词+连词+名词”的上级节点形成上下级关系,同时将上下级关系和并列关系所在的图书编号保存下来; 同时,处理时需要保存好每本书的目录子结构,即需要保存两张表,一张表保存通过上面方法得到的知识节点及其出现在的图书编号、页码编号,以及知识节点间上下级关系和并列关系出现在的图书编号,但即便暂时被丢弃的条目也可能是合格的节点,需要建另一张表将通过的以及未通过的所有的目录节点所在的图书编号、页码编号也保存下来,同时将对所有条目形成的每一个上下级关系和并列关系所在的图书编号也保存进来,接下来通过计算节点间相关性和通过图书结构进行统计后,从被丢弃的条目中找出合理有用的知识节点,作为增量补充进知识图谱中,同时保存的每个词条的位置信息可以用于接下来的定义的抽取。
4.根据权利要求1所述的一种基于图书目录的知识图谱的构建方法,其特征在于:所述的步骤4)包括: 4.1)强弱并列关系的区分 对并列关系出现的次数进行统计,根据并列关系出现的绝对频率进行排序,将绝对频率大于阈值的并列关系二元组选择出来作为强并列关系,绝对频率小于阈值的并列关系二元组作为弱并列关系; 4.2)知识节点间相关度 知识节点间往往具有二义性,在一个由上下级关系和并列关系构成的数据集中,对于节点间存在的多个上级节点指向同一个下级节点的问题,根据与知识节点相关的其他节点来帮助解决,具体过程如下: .4.2.1)对每一个A — B,利用上下级关系找到A的一组下级节点SubA,对这组下级节点中的每一个节点EI eOfSubA,利用强并列关系找到一组并列节点ParaOfEI eOfSubA,对所有ParaOfEleOfSubA合并形成一个集合Setl ; .4.2.2)对B利用弱并列关系找到一组并列节点ParaB,对ParaB中每一个节点C,依次利用强并列关系找到一组并列节点ParaOfParaB,每一个ParaOfParaB作为一个集合Set2 ; .4.2.3)对集合 Setl、集合 Set2,
相关度 Relevancy=SameElementCount+ (ffeightI +Weight2) *10...SameElementCou nt
5.根据权利要求1所述的一种基于图书目录的知识图谱的构建方法,其特征在于:所述的步骤5)包括: 当同一级目录下的数据中有通过百度百科、互动百科鉴定的条目时,根据步骤I)保存的目录子结构和词条所在的图书编号、页码编号去书中重新把未通过百度百科、互动百科鉴定的数据补充进去, 当一个子目录中有数据通过百度百科、互动百科鉴定后,以后缀为基础去目录子结构中挖掘出有用部分,对知识图谱进行补充, 具体方法如下: 通过百度百科、互动百科鉴定的上下级关系中元素的集合为SetX,对上下级中的每一个A — B,找到出现A — B的所有的图书编号的列表, 针对每一个图书编号找到A在该书目录中的下级节点的集合SetY, 对SetY与SetX交集中的每一个节点Node,Node为通过百度百科、互动百科鉴定的部分,在SetY中找出与Node有相同后缀但未通过百度百科、互动百科鉴定的词条的集合SetZ,如果
percentage=[(|SetX Π SetY )+ SetZ ]/ SetY|>level 则收录SetY中Node以外余下的所有未通过百度百科、互动百科鉴定的条目,否则,仅收录SetY中与Node有相同后缀的条目,其中level为设定的阈值。
6.根据权利要求1所述的一种基于图书目录的知识图谱的构建方法,其特征在于:所述的步骤6)包括: 6.1)上下级关系中清洗 上下级关系中存在:类型1、冗余关系,即A — A,类型2、长关系A — BC被切碎出的短关系A — B,类型3、循环的无意义的关系A — B — A,所以将补充后的上下级关系重新读入,并将类型1、类型3筛选掉,将类型2中的短关系A — B合并归入到长关系A — BC中; 6.2、上下级关系排序 对清洗完的上下级关系,需要对每一个关系算出权重,来表示该关系的可信度; 将步骤I)至步骤5)产生的上下级关系按照如下公式算其权重W' (T — L),然后进行排序;丨
【文档编号】G06F17/27GK103729402SQ201310601668
【公开日】2014年4月16日 申请日期:2013年11月22日 优先权日:2013年11月22日
【发明者】鲁伟明, 张萌, 魏宝刚, 庄越挺 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1