一种面向领域的概念抽取方法、终端设备及存储介质
技术领域
本发明涉及大数据技术领域,尤其涉及一种面向领域的概念抽取方法、终端设备及存储介质。
背景技术
随着互联网技术的飞速发展,数据量在不断递增,从海量数据中挖掘有效信息变得越来越重要。在这个过程中知识图谱,特别是领域知识图谱发挥了重要的作用,成为互联网知识驱动智能应用的基础设施。对于领域知识图谱的构建,首先应该构建领域知识图谱的数据模式。由于领域数据的庞大性,且大部分是非结构化文本,因而自动构建领域知识图谱的数据模式成为该领域研究的重点。
但是,目前国内外的概念抽取方法主要分为人工识别和自动识别两大类,人工识别主要是依靠专家知识进行概念抽取,或者同时依靠专家知识和从百科等其它来源所收集的相关信息来进行概念抽取;而自动识别则主要将统计和规则的方法进行概念抽取。虽然已经研究出许多的领域概念抽取方法,但是在实际的应用中,存在着实用性不足的问题。
发明内容
有鉴于此,本发明提出一种面向领域的概念抽取方法、终端设备及存储介质,能够充分利用语义信息,发现领域术语之间的关联,从而提高概念抽取的准确率和实用性。
为实现上述目的,本发明的一个实施例提供一种面向领域的概念抽取方法,包括:
获取目标领域的语料,并对所述语料进行预处理,作为词向量训练的输入文件;所述预处理包括分词和去停用词;
采用规则和统计相结合的方法,从预处理后的语料中抽取出若干个领域术语;
将所述输入文件输入Word2vec工具进行所述词向量训练,得到与若干个词语一一对应的词向量;
对所述抽取的领域术语,根据所述词向量并采用余弦相似度公式计算两两领域术语之间的相似度;根据设定的相似度阈值筛选有关联的领域术语对,进行语义图的构建;
根据所述语义图,采用社区发现算法进行概念抽取,得到概念集。
进一步地,所述词向量训练,具体为:
将所述输入文件输入至Word2vec工具;
设置窗口阈值和向量维度,对小于所述窗口阈值的数据进行剪枝处理;
根据Skip-gram模型对剪枝处理后的输入文件进行词向量训练,得到与若干个词语一一对应的词向量。
进一步地,所述余弦相似度公式为
其中,Sim(term1,term2)为两个领域术语间的相似度,t1和t2为两个领域术语的向量,n为向量的维度。
进一步地,所述语义图的形式为SG=(V,E,W)
其中,V为所述领域术语的集合,V={v1,v2,…,vn},n为所述领域术语的总量,为所述领域术语之间的边缘,W为所述领域术语之间的相似度。
进一步地,所述语义图的构建,具体为:
将所述领域术语作为所述语义图的节点;
在判断两两领域术语之间的相似度大于设定的相似度阈值时,则在该两两领域术语之间构建一条无向的边。
进一步地,所述社区发现算法包括GN算法、CNM算法、Louvain算法以及CFM算法。
进一步地,所述根据所述语义图,采用社区发现算法进行概念抽取,得到概念集,具体为:
采用所述社区发现算法对所述语义图中的节点进行聚类;
采用第一集合表示所述语义图中的概念总数量;
采用第二集合表示所述语义图中的每个概念的领域术语数量。
进一步地,所述第一集合为
C={C1,C2,…,Cn},
其中,C为所述概念的集合,n为概念的总数量;
所述第二集合为
Ci={ti1,ti2,…,tim},
其中,Ci表示某个概念的术语集合,m为某一个概念包含的术语数;tik表示概念中的某一个术语。
本发明的另一个实施例提供的一种面向领域的概念抽取的终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-8所述的面向领域的概念抽取方法。
本发明的又一个实施例提供的一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如权利要求1-8所述的面向领域的概念抽取方法。
实施本发明实施例,具有如下有益效果:
本发明实施例提供的一种面向领域的概念抽取方法、终端设备及存储介质,所述方法包括获取目标领域的语料,并对所述语料进行预处理,作为词向量训练的输入文件;所述预处理包括分词和去停用词;采用规则和统计相结合的方法,从预处理后的语料中抽取出若干个领域术语;将所述输入文件输入Word2vec工具进行所述词向量训练,得到与若干个词语一一对应的词向量;对所述抽取的领域术语,根据所述词向量并采用余弦相似度公式计算两两领域术语之间的相似度;根据设定的相似度阈值筛选有关联的领域术语对,进行语义图的构建;根据所述语义图,采用社区发现算法进行概念抽取,得到概念集。本发明能够通过构建和分析语义图,发现大数据中各个领域术语之间的关联,从而提高概念抽取的准确率和实用性。
附图说明
图1是本发明的一个实施例提供的面向领域的概念抽取方法的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1。
如图1所示,本实施例提供的一种面向领域的概念抽取方法,包括:
S101、获取目标领域的语料,并对所述语料进行预处理,作为词向量训练的输入文件;所述预处理包括分词和去停用词;
S102、采用规则和统计相结合的方法,从预处理后的语料中抽取出若干个领域术语;
具体的,对于步骤S101和步骤S102,可以举例说明,例如在面向法律领域的概念抽取时,收集与法律领域相关的裁判文书,作为法律领域概念抽取的语料,对所述语料进行分词和去停用词等,采用基于规则和统计相结合的方法抽取法律领域术语。
S103、将所述输入文件输入Word2vec工具进行所述词向量训练,得到与若干个词语一一对应的词向量;
具体的,对于步骤S103,所述领域术语相似度计算结果是领域术语与领域术语之间的相似性信息,两个领域术语之间相似度较高,则认为两个领域术语之间有较大的关联。因此,使用Word2vec工具的Skip-gram模型进行词向量训练,训练得到与若干个词语一一对应的词向量。
S104、对所述抽取的领域术语,根据所述词向量并采用余弦相似度公式计算两两领域术语之间的相似度;根据设定的相似度阈值筛选有关联的领域术语对,进行语义图的构建;
具体的,对于步骤S104,在训练得到词向量后,使用余弦相似度计算领域术语对之间的相似度。每个边缘eu,v∈E表示两个节点(u,v)之间存在语义关系,相似度为wu,v表示领域术语之间的权重大小,threshold为构建语义图的阈值。构建语义图的条件为:如果两个领域术语(u,v)之间的相似度wu,v大于设定的阈值threshold,即wu,v>threshold,那么则认为两个术语之间具有较高的关联程度,为两个领域术语之间构建一条边,即u→v,该条边是无向的,从而构建领域术语的语义图结构。
S105、根据所述语义图,采用社区发现算法进行概念抽取,得到概念集。
具体的,对于步骤S105,社区发现算法是用来分析图中的社区结构,同时也是可以看作是一种聚类算法,通俗来说,社区发现就是发现图中的节点进行聚类。本实施例使用四种社区发现算法分析所构建的语义图结构,分别是GN算法、CNM算法、Louvain算法以及CFM算法,从而得到社区划分的结果,即概念抽取的结果。把每一个社区作为一个概念,每一个概念由多个包含相同语义信息的领域术语构成。在同一个社区内的领域术语的连接较为紧密,不同社区之间的连接则较为稀疏。
在优选的实施例中,所述词向量训练,具体为:
将所述输入文件输入至Word2vec工具;
设置窗口阈值和向量维度,对小于所述窗口阈值的数据进行剪枝处理;
根据Skip-gram模型对剪枝处理后的输入文件进行词向量训练,得到与若干个词语一一对应的词向量。
具体的,使用Word2vec工具的Skip-gram模型进行词向量训练。首先法律领域数据集进行分词和去停用词等预处理,将处理完的数据作为Word2Vec的输入文件。窗口大小设置为5,向量维度设置为400维,默认对出现次数小于5的低频词进行剪枝。训练得到的词向量蕴含了词与词之间隐含的语义关系。得到的词向量格式为:-1.529389 -1.108952 -0.254616 -0.310757 0.776726 1.012756-0.769363 -0.004331 0.912915 0.928380 -0.028415 -0.881639 0.103782 -0.138037-0.942903 0.471312 1.204439 0.859895 -1.245894 -1.167602 -0.364856 0.6097040.143012 -0.229113 0.737695 1.196043 -1.427943 2.033649 -0.346337 1.0398930.513136 1.137966 -1.700058 -0.1656180.121247 1.256100 -2.435338 1.610471-0.283864 -0.304868 1.179419 -1.150149 -1.663993 -1.771338 -0.826010 -0.9453000.418155……最后训练得到每一所述领域术语对应的词向量。
在优选的实施例中,所述余弦相似度公式为
其中,Sim(term1,term2)为两个领域术语间的相似度,t1和t2为两个领域术语的向量,n为向量的维度。
在优选的实施例中,所述语义图的形式为SG=(V,E,W)
其中,V为所述领域术语的集合,V={v1,v2,…,vn},n为所述领域术语的总量,为所述领域术语之间的边缘,W为所述领域术语之间的相似度。
在优选的实施例中,所述构建语义图,具体为:
将所述领域术语作为所述语义图的节点;
在判断两两领域术语之间的相似度大于设定的相似度阈值时,则在该两两领域术语之间构建一条无向的边。
具体的,语义图是一个无向图,即没有方向指向,语义图中包含节点以及边,领域术语作为节点,领域术语间的连接作为边。语义图是依据领域术语间的相似度而构建的,因而领域术语之间的相似度是判断节点之间是否存在关联的重要条件。下面给出语义图的基本符号和定义,假设语义图SG=(V,E,W),其中,V表示节点的集合,即领域术语的集合,V={v1,v2,…,vn},n表示总共有多少个领域术语,表示领域术语之间的边缘,W表示领域术语之间的权重集合,即术语间相似度。每个边缘eu,v∈E表示两个节点(u,v)之间存在语义关系,相似度为wu,v表示领域术语之间的权重大小,threshold为构建语义图的阈值。构建语义图的条件为:如果两个领域术语(u,v)之间的相似度wu,v大于设定的阈值threshold,即wu,v>threshold,那么则认为两个术语之间具有较高的关联程度,为两个领域术语之间构建一条边,即u→v,该条边是无向的。
在优选的实施例中,所述社区发现算法包括GN算法、CNM算法、Louvain算法以及CFM算法。
在优选的实施例中,所述根据所述语义图,采用社区发现算法进行概念抽取,得到概念集,具体为:
采用所述社区发现算法对所述语义图中的节点进行聚类;
采用第一集合表示所述语义图中的概念总数量;
采用第二集合表示所述语义图中的每个概念的领域术语数量。
在优选的实施例中,所述第一集合为
C={C1,C2,…,Cn},
其中,C为所述概念的集合,n为概念的总数量;
所述第二集合为
Ci={ti1,ti2,…,tim},
其中,Ci表示某个概念的术语集合,m为某一个概念包含的术语数;tik表示概念中的某一个术语。
具体的,社区发现算法是用来分析图中的社区结构,同时也是可以看作是一种聚类算法,通俗来说,社区发现就是发现图中的节点进行聚类。本文使用四种社区发现算法分析所构建的语义图结构,分别是GN算法、CNM算法、Louvain算法以及CFM算法,从而得到社区划分的结果,即概念抽取的结果。把每一个社区作为一个概念,每一个概念由多个包含相同语义信息的领域术语构成。在同一个社区内的领域术语的连接较为紧密,不同社区之间的连接则较为稀疏。
而对于语义图SG=(V,E,W),社区发现算法可以在语义图SG中确定n(≥1)个社区,即C={C1,C2,…,Cn},Ci表示其中的某一个社区,即表示一个概念,每一个社区中包含m(≥1)个节点,即Ci={ti1,ti2,…,tim},tik表示社区中的某一个节点,即表示某一个领域术语,每个概念包含多个领域术语。
本实施例提供的一种面向领域的概念抽取方法、终端设备及存储介质,所述方法包括获取目标领域的语料,并对所述语料进行预处理,作为词向量训练的输入文件;所述预处理包括分词和去停用词;采用规则和统计相结合的方法,从预处理后的语料中抽取出若干个领域术语;将所述输入文件输入Word2vec工具进行所述词向量训练,得到与若干个词语一一对应的词向量;对所述抽取的领域术语,根据所述词向量并采用余弦相似度公式计算两两领域术语之间的相似度;根据设定的相似度阈值筛选有关联的领域术语对,进行语义图的构建;根据所述语义图,采用社区发现算法进行概念抽取,得到概念集。本发明能够通过构建和分析语义图,发现大数据中各个领域术语之间的关联,从而提高概念抽取的准确率和实用性。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和变形,这些改进和变形也视为本发明的保护范围。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。