基于语义等级的关系抽取方法、装置
文献发布时间:2023-06-19 13:49:36
技术领域
本发明涉及自然语言处理技术领域,尤其涉及一种基于语义等级的关系抽取方法、装置。
背景技术
现如今,互联网上的数据量呈爆炸性增长,但大部分都是非结构化数据,对于使用者而言难以从中快速的获取有效信息。因此,将非结构化数据转换为结构化数据,实现有效信息的快速抽取成为现在重要的研究课题之一。
现有技术中通常采用的技术方案涉及命名实体识别和关系抽取,其中,命名实体识别(Named Entity Recognition,NER)作为知识图谱构建过程中的关键技术,主要完成从非结构化数据中识别实体词汇,并归类于预先定义的命名实体类型,关系抽取(RelationExtraction)的目的是判断自然语言文本中两个实体词汇之间的潜在语义关系,比如从句子“[华盛顿]是[美国]的首都”中,可以从 [华盛顿]和[美国]这两个实体词汇中抽取得到特定关系,获得关系三元组<华盛顿,首都,美国>。
现有技术中大部分的技术方案都是基于英文语料开展,但是中文与英文在语言学上具有较大的差异性,中文的表达方式更加多样化,并且存在大量表达相同含义的不同词汇,因此传统的关系抽取方案在中文上的效果欠佳,不能准确的从文本中识别实体词汇,不能将实体词汇归类于正确的命名实体,因而难以从文本中获取有效信息,进而在关系抽取上存在误差问题,同时关系三元组远远不能完整表达中文文本的整体含义。
发明内容
发明目的:本发明提供一种基于语义等级的关系抽取方法、装置,旨在通过建立与文本数据的领域相关联的词典,并且建立该词典的实体词汇补充机制和实体词汇归类于命名实体的判断标准,实现对于文本数据中实体词汇的有效识别,基于文本中实体词汇的语义等级和语义等级的调整方式,进行关系抽取,实现抽取结果可以完整准确的表达中文文本的整体含义。
技术方案:本发明提供一种基于语义等级的关系抽取方法,包括:建立与数据集领域关联的命名实体词典;所述命名实体词典包括命名实体和对应的实体词汇,命名实体的语义等级,以及语义等级中的命名实体匹配关系;所述数据集包括训练集;使用训练完成的关系抽取模型对待识别文本进行实体词汇关系抽取,得到实体词汇的关系语句;所述关系抽取模型的训练过程包括:根据命名实体词典对训练集内的实体词汇进行标注;使用训练集对关系抽取模型进行实体词汇识别训练,训练关系抽取模型识别训练集文本中的实体词汇与命名实体之间的关系;使用训练集对关系抽取模型进行实体词汇关系训练,训练关系抽取模型按照语义等级的顺序组成实体词汇的关系语句,在同一语义等级中,以出现概率最低的命名实体对应的实体词汇作为关系语句的开始,查询得到同一语义等级中匹配的命名实体对应的实体词汇,按照顺序组成关系语句,同一语义等级中的实体词汇查询完毕或没有同一语义等级中匹配的实体词汇,从上一语义等级中查询实体词汇,继续按照顺序组成关系语句。
具体的,使用实体词汇识别训练完成的关系抽取模型,对测试集进行实体词汇识别测试,若得到测试集文本中词语属于正确的命名实体的概率,比属于错误的命名实体的概率高百分之15及以上,则认定实体词汇识别训练通过;所述数据集包括测试集。
具体的,所述关系抽取模型基于序列标注算法、双向长短期记忆神经网络建立,关系抽取模型使用双向长短期记忆神经网络识别实体词汇,使用序列标注算法识别实体词汇之间的关联关系。
具体的,对测试集进行实体词汇识别测试,之后查询测试结果中没有纳入命名实体词典的实体词汇,将其中被正确识别的实体词汇扩充至命名实体词典;使用实体词典重新对训练集内的实体词汇进行标注,再使用训练集对关系抽取模型进行实体词汇识别训练,直到测试结果中没有纳入命名实体词典的实体词汇,占比低于命名实体词典中的实体词汇的百分之2。
具体的,当同一语义等级内存在多个匹配的实体词汇时,优先抽取同一分句内距离最近的实体词汇。
具体的,在实体词汇距离相同的情况下,优先抽取出现概率最高的实体词汇。
具体的,若特定实体词汇在文本中的出现次数,比同一语义等级中相同命名实体对应的实体词汇的平均值高预设数值,则调高特定实体词汇的语义等级。
具体的,在完成对实体词汇的语义等级的调整后,在同一语义等级中的同一命名实体对应的实体词汇中,保留出现概率最高的实体词汇。
具体的,使用训练完成的关系抽取模型对待识别文本进行实体词汇关系抽取,之前使用分词算法对待识别文本进行语义分词。
本发明还提供一种基于语义等级的关系抽取装置,包括:词典建立单元和关系抽取单元,其中:
所述词典建立单元,用于建立与数据集领域关联的命名实体词典;所述命名实体词典包括命名实体和对应的实体词汇,命名实体的语义等级,以及语义等级中的命名实体匹配关系;所述数据集包括训练集;
所述关系抽取单元,用于使用训练完成的关系抽取模型对待识别文本进行实体词汇关系抽取,得到实体词汇的关系语句;所述关系抽取模型的训练过程包括:根据命名实体词典对训练集内的实体词汇进行标注;使用训练集对关系抽取模型进行实体词汇识别训练,训练关系抽取模型识别训练集文本中的实体词汇与命名实体之间的关系;使用训练集对关系抽取模型进行实体词汇关系训练,训练关系抽取模型按照语义等级的顺序组成实体词汇的关系语句,在同一语义等级中,以出现概率最低的命名实体对应的实体词汇作为关系语句的开始,查询得到同一语义等级中匹配的命名实体对应的实体词汇,按照顺序组成关系语句,同一语义等级中的实体词汇查询完毕或没有同一语义等级中匹配的实体词汇,从上一语义等级中查询实体词汇,继续按照顺序组成关系语句。
有益效果:与现有技术相比,本发明具有如下显著优点:对于文本数据中实体词汇的有效识别,抽取结果可以完整准确的表达中文文本的整体含义。
附图说明
图1为本发明提供的基于语义等级的关系抽取方法的流程示意图;
图2为本发明提供的关系抽取模型的训练过程示意图。
具体实施方式
下面结合附图对本发明的技术方案作进一步说明。
参阅图1,其为本发明提供的基于语义等级的关系抽取方法的流程示意图。
步骤1,建立与数据集领域关联的命名实体词典。
本发明实施例中,所述命名实体词典包括命名实体和对应的实体词汇,命名实体的语义等级,以及语义等级中的命名实体匹配关系;所述数据集包括训练集。
在具体实施中,由于中文中存在大量表达相同含义的不同词汇,因此,建立的命名实体词典的领域,需要与待识别文本的领域相关联,可以尽可能的将在该领域中的所有词汇涵盖在内,在文本中使用多种不同词汇表达相同含义的情况下,关系抽取模型可以准确地将这些词汇识别,并且确定这些词汇所要表达的含义。因此,无论是在词汇识别还是在词汇关系建立,均可以产生较好的效果,对于最终的关系抽取结果,有着不可替代的作用。
在具体实施中,某些词汇在不同领域所表达的含义很有可能是不同的,如果建立的词典是包括多个领域的,往往会出现对于某些实体词汇的错误识别或归类于错误的命名实体,导致最终的关系抽取结果的不准确,因此,词典的领域限定是必要的。
在具体实施中,命名实体是指实体词汇的语义类型,例如地点、时间、姓名、事件和行为动作等等。实体词汇是指可以被归类于某种命名实体的词汇,例如南京、北京等可以被归类于地点,周三、星期天等可以被归类于时间等。
在具体实施中,本发明中语义等级是指命名实体的词汇基础程度和具体程度,语义等级低表示相应的命名实体的词汇更加基础、更加概况,例如,地点和事件的语义等级可以低于时间和姓名,相对而言,对于事物的描述,地点和事件更加基础和概括,因为人们通常在了解了事件和地点后即可大致了解文本所要表达的含义,并且判断是否需要进一步对文本进行了解,如决定进一步对文本进行了解,可以继续了解时间和姓名信息,完成对于整个文本所要表达的含义的有效获取。在不同等级的语义等级中,有相应的命名实体匹配关系,例如地点和事件是相匹配的,而时间和姓名不是匹配的。
在具体实施中,语义等级的设置,对于实体词汇之间关系的确定有些非常重要的意义。现有技术中关于词汇关系的确定通常是完全依赖于语义识别算法,但计算机的识别是难以完全理解表达方式变化多样的中文文本,因此在语义等级和语义等级中命名实体匹配关系的规则下,可以将词汇关系的建立限定在一定范围和一定规律之中,进而在词汇关系建立阶段无需算法进行语义识别和关系建立,只需要在确定的范围中按照确定的规律进行即可,算法仅需要执行实体词汇识别和归类,由此可以实现最终关系抽取结果的高准确度和完整的意思表达。
在具体实施中,初始的语义等级和匹配关系,可以由用户根据实际应用场景进行相应的设定。
步骤2,使用训练完成的关系抽取模型对待识别文本进行实体词汇关系抽取,得到实体词汇的关系语句。
参阅图2,本发明实施例中,所述关系抽取模型的训练过程包括:
根据命名实体词典对训练集内的实体词汇进行标注;
使用训练集对关系抽取模型进行实体词汇识别训练,训练关系抽取模型识别训练集文本中的实体词汇与命名实体之间的关系;
使用训练集对关系抽取模型进行实体词汇关系训练,训练关系抽取模型按照语义等级的顺序组成实体词汇的关系语句,在同一语义等级中,以出现概率最低的命名实体对应的实体词汇作为关系语句的开始,查询得到同一语义等级中匹配的命名实体对应的实体词汇,按照顺序组成关系语句,同一语义等级中的实体词汇查询完毕或没有同一语义等级中匹配的实体词汇,从上一语义等级中查询实体词汇,继续按照顺序组成关系语句。
在具体实施中,根据命名实体词典对训练集内的实体词汇进行标注,指对训练集文本中的实体词汇进行标注,并确定实体词汇归属的命名实体。
在具体实施中,在关系语句的确定过程中,以低语义等级中,出现概率最低的命名实体对应的实体词汇作为关系语句的开始,原因在于,低语义等级词汇更加基础和概率,可以更大程度描述和表达文本含义,同时出现概率最低的实体词汇通常对文本具有更强的统领概括力,而出现概率较高的实体词汇,由于其在多个词语、语句中出现,通常是表达更为具体的含义。
在具体实施中,某一语义等级的实体词汇在匹配查询完毕后,从高一等级的语义等级中查询实体词汇,并且也是按照匹配关系进行查询。在某些情况下,由于没有匹配关系,存在某些实体词汇不会被查询纳入关系语句,表明这些实体词汇通常对于文本含义的表达不起关键性作用,或者对关系语句的逻辑存在影响,因此排除在外,可以将这些实体词汇集合,作为文本含义表达的辅助词汇。
本发明实施例中,所述使用训练集对关系抽取模型进行实体词汇识别训练,包括:
使用实体词汇识别训练完成的关系抽取模型,对测试集进行实体词汇识别测试,若得到测试集文本中词语属于正确的命名实体的概率,比属于错误的命名实体的概率高百分之15及以上,则认定实体词汇识别训练通过;所述数据集包括测试集。
在具体实施中,将实体词汇归属于正确的命名实体的判断概率设定为,正确概率比错误概率高于百分之15及以上,原因在于,更低的判断概率容易出现实体词汇的错误归类,而更高的判断概率会限制模型的训练效率,同时限制模型偏向于识别训练集中存在的实体词汇,而难以识别出新的实体词汇,进而降低对于实体词汇本身的识别准确度,因此百分之15是一个较为平衡的数值。
本发明实施例中,所述关系抽取模型基于序列标注算法((sequence labelingalgorithm)、双向长短期记忆神经网络(Bi-directional Long Short-Term Memory)建立,关系抽取模型使用双向长短期记忆神经网络识别实体词汇,使用序列标注算法识别实体词汇之间的关联关系。
在具体实施中,使用BiLSTM可以训练得到字词与命名实体类别之间的关系,预测每个字词属于不同命名实体类别的概率,但BiLSTM预测类别时并不考虑上下文之间类别间的前后连续关系,所以在采取在BiLSTM之上增加一层CRF,用于考虑文本中命名实体类别序列前后之间的联系,从而提升命名实体的识别效果。
本发明实施例中,对测试集进行实体词汇识别测试之后包括:查询测试结果中没有纳入命名实体词典的实体词汇,将其中被正确识别的实体词汇扩充至命名实体词典;
使用实体词典重新对训练集内的实体词汇进行标注,再使用训练集对关系抽取模型进行实体词汇识别训练,直到测试结果中没有纳入命名实体词典的实体词汇,占比低于命名实体词典中的实体词汇的百分之2。
在具体实施中,将被正确识别的实体词汇扩充至命名实体词典之中,可以利于之后的训练集标注,提升模型对于实体词汇的识别和归类。
在具体实施中,设定没有纳入词典的实体词汇占词典中实体词汇的百分之2,原因在于,词典难以涵盖所有的实体词汇,因此不能要求所有的实体词汇都能在词典之中找到,但同时,由于实体词汇对于文本含义的表达和关系语句的抽取有着至关重要的作用,因此需要实体词汇的识别达到相当的准确度,在未识别的实体词汇的占有率为百分之2时,通常模型可以基本识别出文本中所有的实体词汇,百分之2是较为平衡的数值。
本发明实施例中,所述查询得到同一语义等级中匹配的命名实体对应的实体词汇,包括:当同一语义等级内存在多个匹配的实体词汇时,优先抽取同一分句内距离最近的实体词汇。
在具体实施中,分句可以标点符号作为分割标志。
在具体实施中,同一分句内距离最近的实体词汇,与关系语句中的实体词汇在语义上的关系更加紧密。
本发明实施例中,所述查询得到同一语义等级中匹配的命名实体对应的实体词汇,包括:在实体词汇距离相同的情况下,优先抽取出现概率最高的实体词汇。
在具体实施中,不同于之前的关系抽取逻辑,实体词汇距离相同的情况下,优先抽取出现概率最高的实体词汇,原因在于,在语义关系紧密程度相同的情况下,出现概率更高表明该实体词汇在文本中的重要程度更高,因此其所表达的含义也更为重要,因此将该实体词汇作为优先顺序纳入关系语句之中,使得关系语句对于文本含义的表达更为准确和完整。
本发明实施例中,所述使用训练集对关系抽取模型进行实体词汇关系训练,包括:
若特定实体词汇在文本中的出现次数,比同一语义等级中相同命名实体对应的实体词汇的平均值高预设数值,则调高特定实体词汇的语义等级。
在具体实施中,如之前所述,在实体词汇出现概率较高的情况下,表明词汇所表达的含义更加详细具体,往往是文本中更为基础、概况词汇的下位概念,因此,将该词汇的语义等级调高,在低语义等级的词汇匹配查询完毕后再对其进行匹配查询。抽取得到的关系语句在逻辑上较为顺畅,对于文本含义的表达也更为完整和准确。
本发明实施例中,在完成对实体词汇的语义等级的调整后,在同一语义等级中的同一命名实体对应的实体词汇中,保留出现概率最高的实体词汇。
在具体实施中,为了使得关系语句更为精简,避免多余的实体词汇对于关系语句的干扰和影响,在同一语义等级中的同一命名实体对应的实体词汇中,保留出现概率最高的实体词汇,避免多个实体词汇实质上表达同一含义,但都被纳入关系语句中的情况。
本发明实施例中,所述使用训练完成的关系抽取模型对待识别文本进行实体词汇关系抽取,之前使用分词算法对待识别文本进行语义分词。
在具体实施中,分词算法可以是ltp(语言技术平台,Language TechnologyPlatform,LTP))的语义角色分析模块,也可以是其他分词算法。
在具体实施中,为了更为准确的实体词汇识别和归类,在模型进行关系抽取之前,可以预先适用分词算法对文本进行语义上的划分,划分之后,文本的语义结构可以更为清晰,模型的实体词汇识别、归类和关系抽取结果可以更加准确。
本发明还提供一种基于语义等级的关系抽取装置,包括:词典建立单元和关系抽取单元,其中:
所述词典建立单元,用于建立与数据集领域关联的命名实体词典;所述命名实体词典包括命名实体和对应的实体词汇,命名实体的语义等级,以及语义等级中的命名实体匹配关系;所述数据集包括训练集;
所述关系抽取单元,用于使用训练完成的关系抽取模型对待识别文本进行实体词汇关系抽取,得到实体词汇的关系语句;所述关系抽取模型的训练过程包括:
根据命名实体词典对训练集内的实体词汇进行标注;
使用训练集对关系抽取模型进行实体词汇识别训练,训练关系抽取模型识别训练集文本中的实体词汇与命名实体之间的关系;
使用训练集对关系抽取模型进行实体词汇关系训练,训练关系抽取模型按照语义等级的顺序组成实体词汇的关系语句,在同一语义等级中,以出现概率最低的命名实体对应的实体词汇作为关系语句的开始,查询得到同一语义等级中匹配的命名实体对应的实体词汇,按照顺序组成关系语句,同一语义等级中的实体词汇查询完毕或没有同一语义等级中匹配的实体词汇,从上一语义等级中查询实体词汇,继续按照顺序组成关系语句。
本发明实施例中,所述关系抽取单元,用于使用实体词汇识别训练完成的关系抽取模型,对测试集进行实体词汇识别测试,若得到测试集文本中词语属于正确的命名实体的概率,比属于错误的命名实体的概率高百分之15及以上,则认定实体词汇识别训练通过;所述数据集包括测试集。
本发明实施例中,所述关系抽取模型基于序列标注算法、双向长短期记忆神经网络建立,关系抽取模型使用双向长短期记忆神经网络识别实体词汇,使用序列标注算法识别实体词汇之间的关联关系。
本发明实施例中,所述词典建立单元,用于查询测试结果中没有纳入命名实体词典的实体词汇,将其中被正确识别的实体词汇扩充至命名实体词典;
使用实体词典重新对训练集内的实体词汇进行标注,再使用训练集对关系抽取模型进行实体词汇识别训练,直到测试结果中没有纳入命名实体词典的实体词汇,占比低于命名实体词典中的实体词汇的百分之2。
本发明实施例中,所述关系抽取单元,用于当同一语义等级内存在多个匹配的实体词汇时,优先抽取同一分句内距离最近的实体词汇。
本发明实施例中,所述关系抽取单元,用于在实体词汇距离相同的情况下,优先抽取出现概率最高的实体词汇。
本发明实施例中,所述关系抽取单元,用于若特定实体词汇在文本中的出现次数,比同一语义等级中相同命名实体对应的实体词汇的平均值高预设数值,则调高特定实体词汇的语义等级。
本发明实施例中,所述关系抽取单元,用于在完成对实体词汇的语义等级的调整后,在同一语义等级中的同一命名实体对应的实体词汇中,保留出现概率最高的实体词汇。
本发明实施例中,所述关系抽取单元,用于使用训练完成的关系抽取模型对待识别文本进行实体词汇关系抽取,之前使用分词算法对待识别文本进行语义分词。
- 基于语义等级的关系抽取方法、装置
- 基于语义相似度的实体关系抽取方法、装置、设备及介质