CN114021572A - 一种自然语言处理方法、装置、设备及可读存储介质 - Google Patents
一种自然语言处理方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN114021572A CN114021572A CN202210002872.6A CN202210002872A CN114021572A CN 114021572 A CN114021572 A CN 114021572A CN 202210002872 A CN202210002872 A CN 202210002872A CN 114021572 A CN114021572 A CN 114021572A
- Authority
- CN
- China
- Prior art keywords
- entity
- entities
- sentence
- relationship
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000003058 natural language processing Methods 0.000 title claims abstract description 59
- 238000012545 processing Methods 0.000 claims abstract description 26
- 239000013598 vector Substances 0.000 claims description 57
- 239000011159 matrix material Substances 0.000 claims description 44
- 230000003190 augmentative effect Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 10
- 230000003416 augmentation Effects 0.000 claims description 5
- 238000011478 gradient descent method Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 abstract description 11
- 230000000875 corresponding effect Effects 0.000 description 43
- 238000000354 decomposition reaction Methods 0.000 description 5
- 238000012549 training Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000003780 insertion Methods 0.000 description 4
- 230000037431 insertion Effects 0.000 description 4
- 239000000047 product Substances 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000002411 adverse Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Animal Behavior & Ethology (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Machine Translation (AREA)
Abstract
本申请公开了一种自然语言处理方法、装置、设备及可读存储介质。本申请能够为目标语句中的各实体添加扩充信息,从而可为作为BERT模型输入数据的目标语句扩充有效信息,同时,在所述BERT模型执行自然语言处理任务的过程中,将所述目标语句中的任一实体的扩充信息与所述目标语句中的其他实体的注意力得分调整为零,使得:所加入信息与原句中无关信息的注意力得分为零,这样可屏蔽无关信息之间的相互影响,从而有效降低扩充信息对原输入数据的消极影响,使BERT模型提升自然语言处理任务的处理精度,提高BERT模型的处理效率和处理效果。相应地,本申请提供的一种自然语言处理装置、设备及可读存储介质,也同样具有上述技术效果。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种自然语言处理方法、装置、设备及可读存储介质。
背景技术
目前可以为BERT模型的输入数据扩充相关信息,但扩充的信息会影响模型对输入数据的判别,导致处理结果精度下降。当前以各种策略来提高扩充信息的选择精度,但这样仍不能有效降低扩充信息对原输入数据的消极影响。
因此,如何有效降低扩充信息对原输入数据的消极影响,是本领域技术人员需要解决的问题。
发明内容
有鉴于此,本申请的目的在于提供一种自然语言处理方法、装置、设备及可读存储介质,以有效降低扩充信息对原输入数据的消极影响。其具体方案如下:
第一方面,本申请提供了一种自然语言处理方法,包括:
获取待处理的目标语句,并确定所述目标语句中的各实体;
针对所述目标语句中的每个实体,若该实体存在于预设实体集中,则为该实体确定扩充信息,并将所确定的扩充信息添加至该实体在所述目标语句中所处位置之后,得到更新后的目标语句;
将所述更新后的目标语句输入BERT模型,以使所述BERT模型执行自然语言处理任务;
其中,在所述BERT模型执行自然语言处理任务的过程中,将所述目标语句中的任一实体的扩充信息与所述目标语句中的其他实体的注意力得分调整为零。
优选地,所述为该实体确定扩充信息,包括:
将该实体作为目标对象,并在所述预设实体集中确定与所述目标对象存在关系的实体组;
在所述实体组中选择关系概率值大于第一阈值的实体,并基于所选择的实体生成所述目标对象的扩充信息。
优选地,所述在所述预设实体集中确定与所述目标对象存在关系的实体组,包括:
生成用于表示所述预设实体集中各实体间关系及关系概率值的N×N×M维张量;N为所述预设实体集包括的实体个数,M为所述预设实体集中不同实体间的关系个数;
基于所述N×N×M维张量生成知识图谱,并在所述知识图谱中查询与所述目标对象存在关系的实体组。
优选地,所述生成用于表示所述预设实体集中各实体间关系及关系概率值的N×N×M维张量,包括:
生成由N×N×M维全0构成的初始张量;
获取用于生成所述预设实体集的语句库,并遍历所述语句库中的每个句子,将遍历到的句子作为待识别句子;
将所述待识别句子中相邻的两个实体作为实体组,得到多个实体组;
利用关系识别模型识别每个实体组中的两个实体间的关系,得到多个M维关系向量;
针对每个M维关系向量,若任一M维关系向量中的最大数值大于第二阈值,则将所述最大数值在所述初始张量中对应位置的元素由0更新为1,以更新所述初始张量;
遍历所述语句库中的下一个句子,并继续更新当前张量,直至所述语句库中的每个句子均已被遍历,则输出并优化当前得到的张量,以得到所述N×N×M维张量。
优选地,所述利用关系识别模型识别每个实体组中的两个实体间的关系,得到多个M维关系向量,包括:
针对任一实体组中的两个实体,将所述待识别句子中的这两个实体用不同标识符进行替换,将替换得到的新句子输入所述关系识别模型,以使所述关系识别模型输出这两个实体对应的M维关系向量。
优选地,所述优化当前得到的张量,以得到所述N×N×M维张量,包括:
将当前得到的张量作为初始三维矩阵,将所述初始三维矩阵分解为M个N×N维的矩阵Xi;i=1,2,……,M;
将初始化得到的d×d×M维张量O分解为M个d×d维的矩阵Oi;d为可调超参数;
初始化得到N×d维的矩阵A,并基于Xi=AOiAT和梯度下降法求解得到最优A’和M个最优Oi ’;
基于所述最优A’和所述M个最优Oi ’得到新三维矩阵;
基于max函数逐位对比所述初始三维矩阵和所述新三维矩阵,并保留各位置的最大值,得到所述N×N×M维张量。
优选地,所述为该实体确定扩充信息,包括:
将该实体作为目标对象,并在所述预设实体集中确定与所述目标对象具有最大关联的对象实体;所述对象实体为所述预设实体集中除该实体外的其他实体;
基于与所述目标对象具有最大关联的对象实体生成所述目标对象的扩充信息。
优选地,所述在所述预设实体集中确定与所述目标对象具有最大关联的对象实体,包括:
确定所述目标对象与每个对象实体的最大关系概率值,得到N-1个最大关系概率值;N-1为对象实体的个数,N为所述预设实体集包括的实体个数;
确定每个对象实体与所述目标语句的相关性,得到N-1个相关性;
针对每个对象实体,计算该对象实体对应的相关性和该对象实体对应的最大关系概率值的乘积,得到该对象实体对应的关联得分,得到N-1个关联得分;
将所述N-1个关联得分中的最大关联得分对应的对象实体,作为与所述目标对象具有最大关联的对象实体。
优选地,所述确定每个对象实体与所述目标语句的相关性,包括:
针对每个对象实体,将所述目标语句中的每个实体与该对象实体的相关程度之和,确定为该对象实体与所述目标语句的相关性。
优选地,所述目标语句中的任一个实体与任一个对象实体的相关程度为:所述目标语句中的任一个实体与该对象实体的最大关系概率值加上该对象实体与该实体的最大关系概率值。
优选地,还包括:
在所述BERT模型执行自然语言处理任务的过程中,将所述目标语句中的任一实体的扩充信息与该实体的注意力得分调整为目标值;所述目标值为该扩充信息与该实体的注意力得分与lnY之和;Y为N×N×M维张量中相应位置的数值;所述N×N×M维张量用于表示所述预设实体集中各实体间关系及关系概率值。
第二方面,本申请提供了一种自然语言处理装置,包括:
获取模块,用于获取待处理的目标语句,并确定所述目标语句中的各实体;
扩充模块,用于针对所述目标语句中的每个实体,若该实体存在于预设实体集中,则为该实体确定扩充信息,并将所确定的扩充信息添加至该实体在所述目标语句中所处位置之后,得到更新后的目标语句;
处理模块,用于将所述更新后的目标语句输入BERT模型,以使所述BERT模型执行自然语言处理任务;其中,在所述BERT模型执行自然语言处理任务的过程中,将所述目标语句中的任一实体的扩充信息与所述目标语句中的其他实体的注意力得分调整为零。
第三方面,本申请提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的自然语言处理方法。
第四方面,本申请提供了一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的自然语言处理方法。
通过以上方案可知,本申请提供了一种自然语言处理方法,包括:获取待处理的目标语句,并确定所述目标语句中的各实体;针对所述目标语句中的每个实体,若该实体存在于预设实体集中,则为该实体确定扩充信息,并将所确定的扩充信息添加至该实体在所述目标语句中所处位置之后,得到更新后的目标语句;将所述更新后的目标语句输入BERT模型,以使所述BERT模型执行自然语言处理任务;其中,在所述BERT模型执行自然语言处理任务的过程中,将所述目标语句中的任一实体的扩充信息与所述目标语句中的其他实体的注意力得分调整为零。
可见,本申请能够为目标语句中的各实体添加扩充信息,从而可为作为BERT模型输入数据的目标语句扩充有效信息,同时,在所述BERT模型执行自然语言处理任务的过程中,将所述目标语句中的任一实体的扩充信息与所述目标语句中的其他实体的注意力得分调整为零,使得:所加入信息与原句中无关信息的注意力得分为零,这样可屏蔽无关信息之间的相互影响,从而有效降低扩充信息对原输入数据的消极影响,使BERT模型提升自然语言处理任务的处理精度,提高BERT模型的处理效率和处理效果。
例如:原目标语句为“小明创立A公司”,更新后的目标语句为:“小明是中国人创立A公司经营服装业务”,其中的“是中国人”是“小明”的扩充信息,其与原句中的“创立A公司”无关,因此将“是中国人”中每个字与“创立A公司”中每个字的注意力得分调整为零,如此可降低“是中国人”对原句中“创立A公司”的消极影响。相应地,“经营服装业务”是“A公司”的扩充信息,其与原句中的“小明”无关,因此将“经营服装业务”中每个字与“小明”中每个字的注意力得分调整为零,如此可降低“经营服装业务”对原句中“小明”的消极影响。
相应地,本申请提供的一种自然语言处理装置、设备及可读存储介质,也同样具有上述技术效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种自然语言处理方法流程图;
图2为本申请公开的一种关系识别模型示意图;
图3为本申请公开的一种实体识别模型示意图;
图4为本申请公开的一种自然语言处理装置示意图;
图5为本申请公开的一种电子设备示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,可以通过在输入中引入额外知识来实现增强BERT模型的目的。知识图谱因其存储的信息具有结构性,是提取知识的最佳来源。
知识图谱是将人类知识结构化形成的知识系统,包含基本事实、通用规则和其他有关结构化信息,可用于信息检索、推理决策等智能任务。知识图谱所蕴含的丰富信息可协助BERT模型更好的进行自然语言处理任务。通过构建知识图谱,并将知识图谱中的信息添加到BERT模型的输入中作为额外信息,可以辅助BERT进行自然语言处理任务。
但是,现有的知识图谱仅关注了文本的表面关系,而忽视了可能存在的潜在关系,且利用将知识图谱给BERT模型的输入添加信息,容易引入过多噪声(相关度低信息),影响效率和效果。
虽然目前可以为BERT模型的输入数据扩充相关信息,但扩充的信息会影响模型对输入数据的判别,导致处理结果精度下降。当前以各种策略来提高扩充信息的选择精度,但这样仍不能有效降低扩充信息对原输入数据的消极影响。为此,本申请提供了一种自然语言处理方案,能够有效降低扩充信息对原输入数据的消极影响。
参见图1所示,本申请实施例公开了一种自然语言处理方法,包括:
S101、获取待处理的目标语句,并确定目标语句中的各实体。
其中,本实施例将目标语句中的名词称为实体,目标语句中至少包括一个实体。例如:“小明管理的A公司经营着服装业务”这一语句中,包括3个实体:小明、A公司、服装业务。
S102、针对目标语句中的每个实体,若该实体存在于预设实体集中,则为该实体确定扩充信息,并将所确定的扩充信息添加至该实体在目标语句中所处位置之后,得到更新后的目标语句。
需要说明的是,预设实体集也就是众多实体的集合。若目标语句中的实体存在于预设实体集中,说明可以从预设实体集中找出与该实体有关联的其他实体,那么可据此为该实体确定扩充信息,并将所确定的扩充信息添加至该实体在目标语句中所处位置之后,从而为该实体添加扩充信息。据此,为目标语句中的、且存在于预设实体集中的每个实体都可以添加扩充信息,从而可得到更新后的目标语句。其中,目标语句中的、不存在于预设实体集中的实体则不添加扩充信息。
假设目标语句为:“小明创立A公司”;为“小明”这一实体添加的扩充信息为:“是中国人”,其中的“中国人”为预设实体集中的实体;为“A公司”这一实体添加的扩充信息为:“经营服装业务”,其中的“服装业务”为预设实体集中的实体;那么最终得到的更新后的目标语句为:“小明是中国人创立A公司经营服装业务”。其中,“是”为:连接“小明”和“中国人”的关系词汇,“经营”为:连接“A公司”和“服装业务”的关系词汇,此类关系词汇可基于语言惯用语确定。
S103、将更新后的目标语句输入BERT模型,以使BERT模型执行自然语言处理任务;其中,在BERT模型执行自然语言处理任务的过程中,将目标语句中的任一实体的扩充信息与目标语句中的其他实体的注意力得分调整为零。
需要说明的是,BERT模型包括自注意力层,该自注意力层会计算句子中不同字之间的注意力得分,本实施例将某一实体的扩充信息与目标语句中的其他实体的注意力得分调整为零,可避免无关信息之间的注意力得分为后续处理过程提供错误信息,因此可降低扩充信息对原输入数据的消极影响。
在本实施例中,将更新后的目标语句作为BERT模型的输入数据,可使BERT模型在执行自然语言处理任务时,能够尽可能获得更多信息,从而可提升处理精度和效果。假设BERT模型处理问答任务,那么当BERT模型获得一个问句后,便可以按照本实施例为该问句中的各实体添加扩充信息,以更新该问句。更新得到新问句后,对新问句进行处理,以为新问句确定最为优选的答案。
并且,本实施例能够为目标语句中的各实体添加扩充信息,从而可为作为BERT模型输入数据的目标语句扩充有效信息,同时,在所述BERT模型执行自然语言处理任务的过程中,将所述目标语句中的任一实体的扩充信息与所述目标语句中的其他实体的注意力得分调整为零,使得:所加入信息与原句中无关信息的注意力得分为零,这样可屏蔽无关信息之间的相互影响,从而有效降低扩充信息对原输入数据的消极影响,使BERT模型提升自然语言处理任务的处理精度,提高BERT模型的处理效率和处理效果。
例如:原目标语句为“小明创立A公司”,更新后的目标语句为:“小明是中国人创立A公司经营服装业务”,其中的“是中国人”是“小明”的扩充信息,其与原句中的“创立A公司”无关,因此将“是中国人”中每个字与“创立A公司”中每个字的注意力得分调整为零,如此可降低“是中国人”对原句中“创立A公司”的消极影响。相应地,“经营服装业务”是“A公司”的扩充信息,其与原句中的“小明”无关,因此将“经营服装业务”中每个字与“小明”中每个字的注意力得分调整为零,如此可降低“经营服装业务”对原句中“小明”的消极影响。
在一种具体实施方式中,为该实体确定扩充信息,包括:将该实体作为目标对象,并在预设实体集中确定与目标对象存在关系的实体组;在实体组中选择关系概率值大于第一阈值的实体,并基于所选择的实体生成目标对象的扩充信息。
在一种具体实施方式中,在预设实体集中确定与目标对象存在关系的实体组,包括:生成用于表示预设实体集中各实体间关系及关系概率值的N×N×M维张量;N为预设实体集包括的实体个数,M为预设实体集中不同实体间的关系个数;基于N×N×M维张量生成知识图谱,并在知识图谱中查询与目标对象存在关系的实体组。其中,N×N×M维张量等价于知识图谱,因此基于N×N×M维张量生成知识图谱只是将张量中的相关信息以知识图谱的方式进行表示。
可见,在知识图谱中可查询得到与目标对象存在关系的实体组。
在一种具体实施方式中,生成用于表示预设实体集中各实体间关系及关系概率值的N×N×M维张量,包括:生成由N×N×M维全0构成的初始张量;获取用于生成预设实体集的语句库,并遍历语句库中的每个句子,将遍历到的句子作为待识别句子;将待识别句子中相邻的两个实体作为实体组,得到多个实体组;利用关系识别模型识别每个实体组中的两个实体间的关系,得到多个M维关系向量;针对每个M维关系向量,若任一M维关系向量中的最大数值大于第二阈值,则将最大数值在初始张量中对应位置的元素由0更新为1,以更新初始张量;遍历语句库中的下一个句子,并继续更新当前张量,直至语句库中的每个句子均已被遍历,则全0的初始张量中的有些位置的元素会变更为1,而有些位置的元素则仍然保留为0,从而得到由0和1构成的张量,同时优化当前得到的、由0和1构成的张量,以得到N×N×M维张量。
在一种具体实施方式中,利用关系识别模型识别每个实体组中的两个实体间的关系,得到多个M维关系向量,包括:针对任一实体组中的两个实体,将待识别句子中的这两个实体用不同标识符进行替换,将替换得到的新句子输入关系识别模型,以使关系识别模型输出这两个实体对应的M维关系向量。
其中,关系识别模型可参照图2,包括一个Transformer结构的子模型和一个关系分类神经网络;Transformer结构的子模型包括12个多头注意力模块。当然,关系识别模型也可以是其他结构。
任一个新句子先输入Transformer结构的子模型,得到两个特征向量:mα和mβ,然后mα和mβ输入关系分类神经网络,即可得到α和β之间的M个关系及M个关系概率值,这M个关系及M个关系概率值用M维关系向量表示,向量中的每个元素即一个关系概率值。其中,α和β即:替换相邻两个实体的不同标识符,故α和β之间的M个关系及M个关系概率值也就是:被替换的相邻两个实体之间的M个关系及M个关系概率值。
具体的,用α和β替换相邻实体可参照如下示例。假设待识别句子为:小明管理的A公司经营着服装业务。据此可确定两个实体组:“小明+A公司”、“A公司+服装业务”,那么可得到2个新句子:①α管理的β经营着服装业务网;②小明管理的α经营着β。
需要说明的是,针对新句子①求得的M维关系向量表示:“小明”与“A公司”间存在的关系。如果基于语句“A公司有小明”确定得到子句:α有β。那么针对子句“α有β”求得的M维关系向量表示:“A公司”与“小明”间存在的关系。可见,相邻两个实体的位置互换后,需要使用关系识别模型再次进行关系识别。
需要说明的是,当两个实体间的关系在张量中呈现为0时,可能存在如下两种情况:(1)这两个实体没有关系;(1)这两个实体有关系但关系缺失。为确定此类情况,本申请在得到由0和1构成的张量后,还对当前得到的、由0和1构成的张量进行了优化。
在一种具体实施方式中,优化当前得到的张量,以得到N×N×M维张量,包括:将当前得到的张量作为初始三维矩阵,将初始三维矩阵分解为M个N×N维的矩阵Xi;i=1,2,……,M;将初始化得到的d×d×M维张量O分解为M个d×d维的矩阵Oi;d为可调超参数;初始化得到N×d维的矩阵A,并基于Xi=AOiAT和梯度下降法求解得到最优A’和M个最优Oi ’;基于最优A’和M个最优Oi ’得到新三维矩阵;基于max函数逐位对比初始三维矩阵和新三维矩阵,并保留各位置的最大值,得到N×N×M维张量。
一般地,采用矩阵分解方法可以对矩阵进行变换。由于本申请中的张量是N×N×M的三维矩阵,因此需要先将N×N×M维张量分解为M个N×N维的二维矩阵:X1……Xi……XM,同时将初始化得到的d×d×M维张量O分解为M个d×d维的矩阵:O1……Oi……OM。这样,就可以把每一个Xi分解为AOiAT,即:X1=AO1AT,X2=AO2AT……XM=AOMAT。如此基于梯度下降法可求解得到最优A’和M个最优Oi ’,也就是:分别计算上述M个等式中的最优A’和最优Oi ’。之后,再计算X’1=A’O1A’T,X’2=A’O2A’T……X’M=A’OMA’T,得到M个计算结果:X’1……X’i……X’M。拼接M个计算结果即可得到新三维矩阵。A’T为A’的转置矩阵。当然,若得到M个最优Oi ’:O’ 1……O’ i……O’ M,可拼接O’ 1……O’ i……O’ M得到新的d×d×M维张量O,那么基于X=AOAT即可得到新三维矩阵。
之后,逐位对比初始三维矩阵和新三维矩阵中的各个元素,并保留各位置的最大值,从而得到N×N×M维张量。例如:某一位置在初始三维矩阵中的元素为0,而在新三维矩阵中的元素为0.02,那么X’’该位置的元素记为0.02。又如:某一位置在初始三维矩阵中的元素为1,而在新三维矩阵中的元素为0.99,那么X’’该位置的元素记为1。
在一种具体实施方式中,为该实体确定扩充信息,包括:将该实体作为目标对象,并在预设实体集中确定与目标对象具有最大关联的对象实体;对象实体为预设实体集中除该实体外的其他实体;基于与目标对象具有最大关联的对象实体生成目标对象的扩充信息。
在一种具体实施方式中,在预设实体集中确定与目标对象具有最大关联的对象实体,包括:确定目标对象与每个对象实体的最大关系概率值,得到N-1个最大关系概率值;N-1为对象实体的个数,N为预设实体集包括的实体个数;确定每个对象实体与目标语句的相关性,得到N-1个相关性;针对每个对象实体,计算该对象实体对应的相关性和该对象实体对应的最大关系概率值的乘积,得到该对象实体对应的关联得分,得到N-1个关联得分;将N-1个关联得分中的最大关联得分对应的对象实体,作为与目标对象具有最大关联的对象实体。
假设预设实体集中包括N个实体,N为正整数,那么在目标语句中任一个实体W存在于预设实体集的情况下,该实体W与预设实体集中剩下的N-1个实体都能确定出一个最大关系概率值,从而得到N-1个最大关系概率值。
由于不同实体之间的关系用M维向量表示,故M维向量中有M个关系概率值,而本实施例将其中的最大值确定为目标语句中任一个实体W与预设实体集中剩下的其他实体之间的最大关系概率值。
同时,预设实体集中除实体W外的N-1个实体都可以与目标语句求得一个相关性,从而得到N-1个相关性。
那么,站在N-1个实体中的任一个实体的角度,其对应有一个相关性和一个最大关系概率值,故计算该相关性与该最大关系概率值的乘积,可得到一个关联得分。由于有N-1个实体,故可得N-1个关联得分。这N-1个关联得分中的最大关联得分对应的实体即为:既与实体W关系最大、又与目标语句相关性最大的实体,因此将其作为与实体W具有最大关联的实体。基于实体W的最大关联实体生成的扩充信息可认为是:实体W的有效且准确的扩充信息,因此可以提升信息扩充精度和准确度,避免扩充无效而不准确的信息。
在一种具体实施方式中,确定每个对象实体与目标语句的相关性,包括:针对每个对象实体,将目标语句中的每个实体与该对象实体的相关程度之和,确定为该对象实体与目标语句的相关性。
其中,目标语句中的任一个实体与任一个对象实体的相关程度为:目标语句中的任一个实体与该对象实体的最大关系概率值加上该对象实体与该实体的最大关系概率值。
假设目标语句中包括3个实体:A、B、C,那么该目标语句与任一个对象实体F的相关性为:A与F的相关程度+B与F的相关程度+C与F的相关程度,求得的和需要进行归一化处理。而A与F的相关程度为:A与F的最大关系概率值加上F与A的最大关系概率值。而B与F的最大关系概率值加上F与B的最大关系概率值。而C与F的相关程度为:C与F的最大关系概率值加上F与C的最大关系概率值。可见,计算任意两个实体间的相关程度,需要在张量中找到与这两个实体有关的两个最大关系概率值,然后对这两个最大关系概率值求和并进行归一化。
其中,M维关系向量中每一维度上数值介于0-1之间,各数值表示具备相应关系的概率,所有维度的数值之和为1。
对于某个即将输入至BERT模型进行自然语言处理任务的句子T,将知识图谱中某些信息插入至句子T中。那么,如何从知识图谱中选择需要插入的信息呢,通过计算实体间相关程度、待插入信息中的实体与句子间相关性,来评估待插入信息对句子的价值,并选择最大价值的信息进行插入。
(1)计算实体表E中任意两实体间的相关程度。
知识图谱(张量X’’)表示实体表E中任意两实体间存在关系表G中某种关系的可能性,我们用两实体间存在关系表G中最大关系的可能性之和衡量两实体间相关程度,并通过softmax归一化得到关联程度得分。例如:对于实体表E中第i实体ei和第j个实体ej,两实体的相关程度得分为:
我们认为两实体间存在的关系数越多,两实体的相关性就越高。其中,Xjik对应实体表E中第j个实体ej和第i个实体ei,存在关系表G中第k个关系rk的概率值。
(2)计算待插入信息中的实体与句子间的相关性得分。
我们认为一个句子中所有实体与实体表中某个实体间相关程度越高,则句子与那个实体间相关性就越高,故使用上面得到的实体间相关程度得分计算句子与实体间的相关性得分。
假设句子T与实体表E共有p个实体相交:et1、……etp。此时,句子T与实体表E中某一个实体ei的相关性由实体et1、……etp与实体ei间相关程度之和的归一化结果衡量,即:T与ei间相关性得分为:
其中,N为实体表E包含的实体数,p为实体表E和句子T共同包含的实体数。
(3)下面利用相关性得分函数Y和知识图谱(张量X’’)选择插入至句子T的信息(实体间关系)。其中,信息表示两实体间存在某一种关系这一知识,例如:“实体ei与实体ej间存在关系rk”为一个信息。信息对于某一句子的价值与该信息存在的可能性、该信息与句子的相关性正相关。
逐字遍历句子T,找到全部同时存在于句子T和实体表E的实体et1、……etp,共p个,对应实体表E中第t1个、……、第tp个实体。接着根据相关性得分函数Y,计算句子T与实体表中每一个实体间的相关性得分Y(1,T)、……、Y(N,T)。
随后针对句子T中的实体et1、……etp,为每个实体选择补充信息,补充信息的选择方法如下:对et1、……etp中某个实体eq(q∈{t1,……,tp}),从张量X’’中得到实体eq与实体表E中任意一个其他实体ei(i≠q)间存在关系表G的全部M种关系中每一种的概率Xqi1、……XqiM,对于实体eq和实体ei(i≠q)之间的M种关系概率,求取最大值,得eq与ei的最大关系概率。
对实体表E中所有与eq不同的N-1个实体做上述相同操作,可以得到eq的N-1个最大关系概率。
假设这N-1个关系概率为:eq与eji间存在关系表G中第k1种关系rk1、eq与ej2间存在关系表G中第k2种关系rk2、……、eq与ejN-1间存在关系表G中第N-1种关系rkN-1。eji、……、ejN-1为实体表E中除eq外的其他实体。那么,N-1个最大关系概率为:。
接着,将N-1个最大关系概率与T和ei的相关性得分相乘,得到N-1个信息评估值,选择这N-1个信息评估值中的最大值对应实体及信息(实体间关系),在eq后进行信息插入。具体的,通过实体表E、关系表G、字表W将所确定的实体及信息转化为字,并插入到实体eq在句子T中所在位置的后面。
逐个遍历T中实体et1、……etp,按照上述步骤为每个实体插入信息,最终得到信息扩充后的句子。BERT模型处理信息扩充后的句子可以获得更好的处理效果。
本实施例在从知识图谱中选择插入信息(实体间关系)时,充分考虑到插入信息对于句子的价值(体现为该信息与句子的相关度和该信息的可信度),确保了插入信息的质量,减少了噪声的引入。
在一种具体实施方式中,确定目标对象与每个对象实体的最大关系概率值,包括:生成用于表示预设实体集中各个实体间关系及关系概率值的N×N×M维张量;M为预设实体集中不同实体间的关系向量的维数;基于N×N×M维张量生成知识图谱,并在知识图谱中查询目标对象与每个对象实体的最大关系概率值。可见,在知识图谱中可查询得到每个实体的与每个对象实体的最大关系概率值。而知识图谱基于N×N×M维张量生成,N×N×M维张量的生成过程可参照上文相关介绍。
在一种具体实施方式中,在BERT模型执行自然语言处理任务的过程中,将目标语句中的任一实体的扩充信息与该实体的注意力得分调整为目标值;目标值为该扩充信息与该实体的注意力得分与lnY之和,从而根据知识图谱中的关系概率值调整加入信息对原句的影响;Y为N×N×M维张量中相应位置的数值;N×N×M维张量用于表示预设实体集中各实体间关系及关系概率值。
在一种具体实施方式中,确定目标语句中的各实体,包括:将目标语句中的每个字转换为1024维向量,得到向量集合;将向量集合输入实体识别模型,以使实体识别模型识别目标语句中的各实体。
其中,实体识别模型可参见图3。图3所示的实体识别模型基于Transformer实现,其中包括6个多头自注意力模块。当然,实体识别模型也可以基于其他结构实现。图2和图3中的“位置编码”用于记录:句子中的各个字在句子中的位置。
针对“北京是中国的首都”这一语句,实体识别模型输出的识别结果可以是:北京是中国的首都(AABAABBB)。其中,A表示实体,B表示非实体。
下述实施例按照数据准备、实体识别、关系识别、构建知识图谱、信息嵌入、注意力得分调整几个步骤,将知识图谱中的专业知识添加到BERT模型的输入数据中,并调整注意力得分,使BERT模型提升自然语言处理任务的精度。
1、数据准备。
构建包括众多语句的语句库,对语句库中的全部文本,构建包含全部字的字表W。此外,字表W中还包含2个特殊标记符号α和β。该字表W可用于确定两个实体间的关系词汇。
2、实体识别。
构建可对文本进行实体识别的模型,得到实体识别模型,具体的实体识别模型可如图3所示。从语句库中随机抽取句子进行人工标注,可得到训练文本,用有标注的文本对模型进行训练,即可得到实体识别模型,具体的训练过程可参照现有相关技术,在此不再赘述。
将字表W包含的每个字转换为一个Z维的one-hot向量,然后通过矩阵J∈R1024×Z将Z维one-hot向量映射为1024维向量。R为预设实数集合。这样,每个字都可以用一个1024维向量表示。
针对语句库中的某一句子,将句子中的各个字都用1024维向量表示,那么可得1024维向量的集合。将该集合输入实体识别的模型,皆可识别出该句中的各个实体。
3、关系识别。
利用实体识别模型可识别出语句库中每个句子中的实体。那么针对每个句子,可进一步识别其中实体的关系。
首先构建包含所有我们感兴趣的关系的关系表G,关系表G中有M种不同的关系,其中一种关系被定义为无关系,表示两实体间不存在关系。关系表G根据需求自定义,其中每种关系对应一个M维one-hot向量。规定:M维one-hot向量中第k种关系为记为rk,对应向量的第k维。
其次对一句话中的两个相邻实体用α和β进行替换。一种对句子的实体进行替换的方法包括:对于一个句子,确定其中的所有实体后,依次顺序替换句子中相邻2个实体。
具体的,首先逐字遍历该句子,将句子中的第一个实体对应的全部字替换为α,将句中第二个实体对应的全部字替换为β,得到一个子句(即一个新句子);从句中第二个实体开始,将句中第二个实体对应的全部字替换为α,将第三个实体对应的全部字替换为β,得到第二个子句……如此重复,直至句中所有实体均被替换。假设句子为:小明管理的A公司经营着服装业务。据此可确定两个实体组:“小明+A公司”、“A公司+服装业务”,那么可得到2个子句:①α管理的β经营着服装业务网;②小明管理的α经营着β。
构建关系识别模型。从语句库中随机抽取一小部分句子构成训练集,将每个句子进行实体替换,对于包含q个实体的句子,替换后可得q-1个子句;对每个子句,根据句意判断α、β间关系,在关系表G中找到对应进行人工标注,每个子句对应的标签为表示α、β间关系的M维one-hot向量。利用adam算法最小化logits回归损失函数训练模型,即可得到关系识别模型,具体的关系识别模型可如图2所示。关系识别模型的具体训练过程可参照现有相关技术,在此不再赘述。
由于针对一个句子,可得到至少一个子句,将各个子句分别输入关系识别模型,可输出该句子中各组相邻实体之间的关系,每两个相邻实体之间的关系用M维向量表示。
具体的,实体替换后得到的子句被输入至图2所示的关系识别模型,从Transformer可输出与α、β对应的两向量mα、mβ,将这两个向量拼接得到向量h=<hα|hβ>,此时向量h包含两实体的上下文信息。向量h随后被输入至关系分类神经网络进行关系分类,该网络输出层为softmax归一化层,可输出一个M维向量v=(p1,p2,……,pM),其中每个维度上的值表示输入的子句中α、β间关系为G中对应关系的概率。
例如,若输出向量为(p1,p2,……,pM),那么第1维、第2维、……、第M维分别对应关系r1、r2、……、rM,则可认为输入的子句中α、β间存在关系r1的概率为p1,存在关系r2的概率为p2,……,存在关系rM的概率为pM。又因为实体间关系由句子整体语义决定,与实体本身无关,故α、β间关系等价于原句中被替换的两实体间关系。
4、构建知识图谱。
利用上述实体识别模型识别语句库中的所有实体,并去除重复实体,得到实体表E(即预设实体库)。实体表E共包含N个实体。规定:ei为E中第i个实体,1≤i≤N。
利用关系识别模型识别每句话中相邻两实体之间的关系并构建知识图谱。知识图谱用N×N×M维张量量化表示,从张量中可看出:实体表E所包含的任意两实体间是否存在关系表G中所包含的任意一种关系。N为实体表E包含的实体数,M为关系表G包含的关系数。用Xijk表示张量中的一个位置的元素,其对应实体表E中两个实体和关系表G中的一种关系,对应规则为:Xijk对应实体表E中第i个实体ei和第j个实体ej,以及关系表G中第k个关系rk。
具体的,知识图谱构建过程包括:
(1)构建初始的N×N×M维张量X,此时X中全部值初始化为0。
(2)利用关系识别模型识别语句库中每句话中相邻两实体之间的关系,得到众多M维向量。针对任一个M维向量,找出该向量中数值最大的一维,根据该维度所对应的关系和子句中α、β所替换的实体更新初始的N×N×M维张量X。
例如,假设对于某个子句,输出的M维关系向量为v=(p1,p2,……,pM),其中,第k维对应数值pk最大,该维度对应关系表G中第k个关系rk(1≤k≤M)。又假设该子句中被α、β替换的两实体对应实体表E中第i个实体ei和第j个实体ej(1≤i,j≤N)。那么,当且仅当pk大于预先规定值θ(0<θ<1)时,认为实体ei、ej间存在关系rk,此种情况下将初始X中的Xijk=1;否则,初始X中的Xijk=0。其中,规定值θ即第二阈值。
针对所有M维向量,都据此持续更新X,直至所有M维向量都被处理,那么输出最终得到的X。
(3)基于张量分解对步骤(2)最终得到的X进行优化,以为知识图谱补充潜在信息。
通过步骤(2)获得的X通常是稀疏的,本步骤利用张量分解对X中潜在关系进行推理,挖掘潜在关系,从而补充完善了知识图谱中知识(实体间关系)。
对于步骤(2)获得的X,若X中某一点Xijk=1,则表示实体表E中第i个实体ei与实体表中第j个实体ej存在关系表G中的第k种关系rk;若Xijk=0,则无法确定该关系不存在还是记录该关系的信息缺失。
因此,本步骤利用X中为1的元素推断X中原本为0的位置处的值,即通过已有确定关系推断不确定关系存在的可能。例如,假设我们已知关系:(小明,管理,A公司)、(小马,管理,B公司)、(A公司,经营,服装业务)、(B公司,经营,微信)、(小明,管理,服装业务),可以推理出:(小马,管理,微信)成立的概率较大,据此可补充知识图谱。
下面详细介绍利用张量分解补充X的方法,包括:将张量X分解为X≈AOAT(A为N×d维矩阵,O为d×d×M维张量,其中d为可调超参数,AT为A的转置矩阵),利用梯度下降法更新A、O,待损失函数收敛到足够小之后,根据张量X’=AOAT更新X。
具体实施步骤包括:将张量X拆分为M个N×N维矩阵X1、……、XM,同时构造一个N×d维矩阵A和M个d×d维矩阵O1、……、OM,以将X1、……、XM分解为AO1AT、……、AOMAT。
多次循环损失函数收敛到足够小之后,得到最优A、最优O1、……、OM,将O1、……、OM拼接得到新的张量O。
之后,计算张量X’=AOAT,并将X’与X逐个位置取最大值,即最终的X’’ijk=max(Xijk’,Xijk)。更新后张量X上每一点的值表示与该点对应的实体表E中两个实体间存在与该点对应的关系表G中关系的可能性,或称为两实体存在该关系这一信息的可信度。例如:Xijk对应实体表E中第i个实体ei和第j个实体ej以及关系表G中第k个关系rk,则Xijk=0.8表示实体ei与实体ej间存在关系rk的概率为0.8。
最后,基于最终得到的X’’生成知识图谱。
5、信息嵌入和注意力得分调整。
对于某个即将输入至BERT模型进行自然语言处理任务的句子T,本步骤将知识图谱中的信息插入至句子T中,并通过修改注意力得分改变插入字对句子T中原有字的影响。
(1)利用实体识别模型对输入句子T进行实体识别,得到其中全部实体u1,……,ut,接着针对所有实体依次进行信息扩充。
针对句中某一个实体进行信息扩充的操作如下:
对于句子T中某个实体u,在实体表E中查找。若u不存在于实体表E中,则不对该实体进行信息扩充;若实体u存在于实体表E中(这里假设u为E中第i个实体ei),则在知识图谱中寻找与ei有关信息,即:在优化后的张量X’’中寻找与ei有关的矩阵。
具体的,对优化后的张量X’’进行切片,取其中的N×M维切片矩阵X’’i,此矩阵X’’i表示:实体表E中第i个ei与E中其他任意实体间存在关系表G中任意关系的概率。
在矩阵X’’i中寻找所有值大于ψ的点(0<ψ<1,为规定值,即第一阈值)。
对句中全部实体u1,……,ut逐个进行上述操作,可以得到信息扩充后的句子T’。
然而,将T’直接输入至BERT模型,会有以下两种不利影响:①加入的字与原句T中的部分字之间无关系,如果两无关的字因自注意力机制相互影响,可能影响输出。②加入的信息不一定可靠,如果添加的不可靠信息对原输入句T影响过大,也可能影响结果的准确性。
为解决上述两种不利影响,本实施例按以下步骤修改BERT模型的自注意力层。
在BERT模型的自注意力层之中,在原实体中各字与加入的关于该实体信息各字之间的注意力得分上加上lnY;在加入信息与原句中与该加入信息不相关的字之间的注意力得分上加上负无穷。
例如:假设原始输入句子为:小明创立A公司。按照如上所述操作进行信息扩充后得到句子为:小明是中国人创立A公司经营服装业务。
由张量X’’可知:“小明是中国人”这一信息的关系可信度为1(即X’’中相应位置的元素值),“A公司经营服装业务”的关系可信度为0.98(即X’’中相应位置的元素值),则通过如下操作,修改BERT模型的自注意力层输出的注意力得分:自注意力层会计算句中16个字两两之间的注意力得分,在其计算后,在“小明”与“是中国人”每一对字之间(即:马与是,云与是,马与中,人与中,马与国,人与国,马与人,云与人)的注意力得分上加ln1;在“A公司”与“经营服装业务”每一对字之间的注意力得分上加ln0.98;在“是中国人”与“创立A公司”每一对字之间的注意力得分上加-∞;在“小明是中国人创立”与“经营服装业务”每一对字之间的注意力得分上加-∞。
通过上述修改自注意力层的方法,可以屏蔽无关信息间的相互影响,并根据知识图谱中的关系可信度调整加入信息对原句的影响,降低低关系可信度信息对原输入的影响。关系可信度即:关系概率值。
可见,本实施例可基于实体识别模型识别句子中的实体,并利用关系识别模型识别句子中相邻两实体间的关系,并据此构建并优化知识图谱,得到表示任意两实体间关系的张量。同时,通过修改BERT模型自注意力层改变插入信息对于原输入句的影响,屏蔽无关信息之间的相互影响。
下面对本申请实施例提供的一种自然语言处理装置进行介绍,下文描述的一种自然语言处理装置与上文描述的一种自然语言处理方法可以相互参照。
参见图4所示,本申请实施例公开了一种自然语言处理装置,包括:
获取模块401,用于获取待处理的目标语句,并确定目标语句中的各实体;
扩充模块402,用于针对目标语句中的每个实体,若该实体存在于预设实体集中,则为该实体确定扩充信息,并将所确定的扩充信息添加至该实体在目标语句中所处位置之后,得到更新后的目标语句;
处理模块403,用于将更新后的目标语句输入BERT模型,以使BERT模型执行自然语言处理任务;其中,在BERT模型执行自然语言处理任务的过程中,将目标语句中的任一实体的扩充信息与目标语句中的其他实体的注意力得分调整为零。
在一种具体实施方式中,扩充模块包括:
第一确定单元,用于将该实体作为目标对象,并在预设实体集中确定与目标对象存在关系的实体组;
选择单元,用于在实体组中选择关系概率值大于第一阈值的实体,并基于所选择的实体生成目标对象的扩充信息。
在一种具体实施方式中,第一确定单元包括:
生成子单元,用于生成用于表示预设实体集中各实体间关系及关系概率值的N×N×M维张量;N为预设实体集包括的实体个数,M为预设实体集中不同实体间的关系个数;
查询子单元,用于基于N×N×M维张量生成知识图谱,并在知识图谱中查询与目标对象存在关系的实体组。
在一种具体实施方式中,生成子单元具体用于:
生成由N×N×M维全0构成的初始张量;
获取用于生成预设实体集的语句库,并遍历语句库中的每个句子,将遍历到的句子作为待识别句子;
将待识别句子中相邻的两个实体作为实体组,得到多个实体组;
利用关系识别模型识别每个实体组中的两个实体间的关系,得到多个M维关系向量;
针对每个M维关系向量,若任一M维关系向量中的最大数值大于第二阈值,则将最大数值在初始张量中对应位置的元素由0更新为1,以更新初始张量;
遍历语句库中的下一个句子,并继续更新当前张量,直至语句库中的每个句子均已被遍历,则输出并优化当前得到的张量,以得到N×N×M维张量。
在一种具体实施方式中,生成子单元具体用于:
针对任一实体组中的两个实体,将待识别句子中的这两个实体用不同标识符进行替换,将替换得到的新句子输入关系识别模型,以使关系识别模型输出这两个实体对应的M维关系向量。
在一种具体实施方式中,生成子单元具体用于:
将当前得到的张量作为初始三维矩阵,将初始三维矩阵分解为M个N×N维的矩阵Xi;i=1,2,……,M;
将初始化得到的d×d×M维张量O分解为M个d×d维的矩阵Oi;d为可调超参数;
初始化得到N×d维的矩阵A,并基于Xi=AOiAT和梯度下降法求解得到最优A’和M个最优Oi ’;
基于最优A’和M个最优Oi ’得到新三维矩阵;
基于max函数逐位对比初始三维矩阵和新三维矩阵,并保留各位置的最大值,得到N×N×M维张量。
在一种具体实施方式中,扩充模块包括:
第二确定单元,用于将该实体作为目标对象,并在预设实体集中确定与目标对象具有最大关联的对象实体;对象实体为预设实体集中除该实体外的其他实体;
生成单元,用于基于与目标对象具有最大关联的对象实体生成目标对象的扩充信息。
在一种具体实施方式中,第二确定单元包括:
第一确定子单元,用于确定目标对象与每个对象实体的最大关系概率值,得到N-1个最大关系概率值;N-1为对象实体的个数,N为预设实体集包括的实体个数;
第二确定子单元,用于确定每个对象实体与目标语句的相关性,得到N-1个相关性;
计算子单元,用于针对每个对象实体,计算该对象实体对应的相关性和该对象实体对应的最大关系概率值的乘积,得到该对象实体对应的关联得分,得到N-1个关联得分;
选择子单元,用于将N-1个关联得分中的最大关联得分对应的对象实体,作为与目标对象具有最大关联的对象实体。
在一种具体实施方式中,第二确定子单元具体用于:
针对每个对象实体,将目标语句中的每个实体与该对象实体的相关程度之和,确定为该对象实体与目标语句的相关性。
在一种具体实施方式中,目标语句中的任一个实体与任一个对象实体的相关程度为:目标语句中的任一个实体与该对象实体的最大关系概率值加上该对象实体与该实体的最大关系概率值。
在一种具体实施方式中,在BERT模型执行自然语言处理任务的过程中,将目标语句中的任一实体的扩充信息与该实体的注意力得分调整为目标值;目标值为该扩充信息与该实体的注意力得分与lnY之和;Y为N×N×M维张量中相应位置的数值;N×N×M维张量用于表示预设实体集中各实体间关系及关系概率值。
其中,关于本实施例中各个模块、单元更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本实施例提供了一种自然语言处理装置,可屏蔽无关信息之间的相互影响,从而有效降低扩充信息对原输入数据的消极影响,使BERT模型提升自然语言处理任务的处理精度,提高BERT模型的处理效率和处理效果。
下面对本申请实施例提供的一种电子设备进行介绍,下文描述的一种电子设备与上文描述的一种自然语言处理方法及装置可以相互参照。
参见图5所示,本申请实施例公开了一种电子设备,包括:
存储器501,用于保存计算机程序;
处理器502,用于执行所述计算机程序,以实现上述任意实施例公开的方法。
下面对本申请实施例提供的一种可读存储介质进行介绍,下文描述的一种可读存储介质与上文描述的一种自然语言处理方法、装置及设备可以相互参照。
一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的自然语言处理方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本申请涉及的“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法或设备固有的其它步骤或单元。
需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的可读存储介质中。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (14)
1.一种自然语言处理方法,其特征在于,包括:
获取待处理的目标语句,并确定所述目标语句中的各实体;
针对所述目标语句中的每个实体,若该实体存在于预设实体集中,则为该实体确定扩充信息,并将所确定的扩充信息添加至该实体在所述目标语句中所处位置之后,得到更新后的目标语句;
将所述更新后的目标语句输入BERT模型,以使所述BERT模型执行自然语言处理任务;
其中,在所述BERT模型执行自然语言处理任务的过程中,将所述目标语句中的任一实体的扩充信息与所述目标语句中的其他实体的注意力得分调整为零。
2.根据权利要求1所述的方法,其特征在于,所述为该实体确定扩充信息,包括:
将该实体作为目标对象,并在所述预设实体集中确定与所述目标对象存在关系的实体组;
在所述实体组中选择关系概率值大于第一阈值的实体,并基于所选择的实体生成所述目标对象的扩充信息。
3.根据权利要求2所述的方法,其特征在于,所述在所述预设实体集中确定与所述目标对象存在关系的实体组,包括:
生成用于表示所述预设实体集中各实体间关系及关系概率值的N×N×M维张量;N为所述预设实体集包括的实体个数,M为所述预设实体集中不同实体间的关系个数;
基于所述N×N×M维张量生成知识图谱,并在所述知识图谱中查询与所述目标对象存在关系的实体组。
4.根据权利要求3所述的方法,其特征在于,所述生成用于表示所述预设实体集中各实体间关系及关系概率值的N×N×M维张量,包括:
生成由N×N×M维全0构成的初始张量;
获取用于生成所述预设实体集的语句库,并遍历所述语句库中的每个句子,将遍历到的句子作为待识别句子;
将所述待识别句子中相邻的两个实体作为实体组,得到多个实体组;
利用关系识别模型识别每个实体组中的两个实体间的关系,得到多个M维关系向量;
针对每个M维关系向量,若任一M维关系向量中的最大数值大于第二阈值,则将所述最大数值在所述初始张量中对应位置的元素由0更新为1,以更新所述初始张量;
遍历所述语句库中的下一个句子,并继续更新当前张量,直至所述语句库中的每个句子均已被遍历,则输出并优化当前得到的张量,以得到所述N×N×M维张量。
5.根据权利要求4所述的方法,其特征在于,所述利用关系识别模型识别每个实体组中的两个实体间的关系,得到多个M维关系向量,包括:
针对任一实体组中的两个实体,将所述待识别句子中的这两个实体用不同标识符进行替换,将替换得到的新句子输入所述关系识别模型,以使所述关系识别模型输出这两个实体对应的M维关系向量。
6.根据权利要求4所述的方法,其特征在于,所述优化当前得到的张量,以得到所述N×N×M维张量,包括:
将当前得到的张量作为初始三维矩阵,将所述初始三维矩阵分解为M个N×N维的矩阵Xi;i=1,2,……,M;
将初始化得到的d×d×M维张量O分解为M个d×d维的矩阵Oi;d为可调超参数;
初始化得到N×d维的矩阵A,并基于Xi=AOiAT和梯度下降法求解得到最优A’和M个最优Oi ’;
基于所述最优A’和所述M个最优Oi ’得到新三维矩阵;
基于max函数逐位对比所述初始三维矩阵和所述新三维矩阵,并保留各位置的最大值,得到所述N×N×M维张量。
7.根据权利要求1所述的方法,其特征在于,所述为该实体确定扩充信息,包括:
将该实体作为目标对象,并在所述预设实体集中确定与所述目标对象具有最大关联的对象实体;所述对象实体为所述预设实体集中除该实体外的其他实体;
基于与所述目标对象具有最大关联的对象实体生成所述目标对象的扩充信息。
8.根据权利要求7所述的方法,其特征在于,所述在所述预设实体集中确定与所述目标对象具有最大关联的对象实体,包括:
确定所述目标对象与每个对象实体的最大关系概率值,得到N-1个最大关系概率值;N-1为对象实体的个数,N为所述预设实体集包括的实体个数;
确定每个对象实体与所述目标语句的相关性,得到N-1个相关性;
针对每个对象实体,计算该对象实体对应的相关性和该对象实体对应的最大关系概率值的乘积,得到该对象实体对应的关联得分,得到N-1个关联得分;
将所述N-1个关联得分中的最大关联得分对应的对象实体,作为与所述目标对象具有最大关联的对象实体。
9.根据权利要求8所述的方法,其特征在于,所述确定每个对象实体与所述目标语句的相关性,包括:
针对每个对象实体,将所述目标语句中的每个实体与该对象实体的相关程度之和,确定为该对象实体与所述目标语句的相关性。
10.根据权利要求9所述的方法,其特征在于,所述目标语句中的任一个实体与任一个对象实体的相关程度为:所述目标语句中的任一个实体与该对象实体的最大关系概率值加上该对象实体与该实体的最大关系概率值。
11.根据权利要求1至10任一项所述的方法,其特征在于,还包括:
在所述BERT模型执行自然语言处理任务的过程中,将所述目标语句中的任一实体的扩充信息与该实体的注意力得分调整为目标值;所述目标值为该扩充信息与该实体的注意力得分与lnY之和;Y为N×N×M维张量中相应位置的数值;所述N×N×M维张量用于表示所述预设实体集中各实体间关系及关系概率值。
12.一种自然语言处理装置,其特征在于,包括:
获取模块,用于获取待处理的目标语句,并确定所述目标语句中的各实体;
扩充模块,用于针对所述目标语句中的每个实体,若该实体存在于预设实体集中,则为该实体确定扩充信息,并将所确定的扩充信息添加至该实体在所述目标语句中所处位置之后,得到更新后的目标语句;
处理模块,用于将所述更新后的目标语句输入BERT模型,以使所述BERT模型执行自然语言处理任务;其中,在所述BERT模型执行自然语言处理任务的过程中,将所述目标语句中的任一实体的扩充信息与所述目标语句中的其他实体的注意力得分调整为零。
13.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至11任一项所述的方法。
14.一种可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至11任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210002872.6A CN114021572B (zh) | 2022-01-05 | 2022-01-05 | 一种自然语言处理方法、装置、设备及可读存储介质 |
PCT/CN2022/102862 WO2023130688A1 (zh) | 2022-01-05 | 2022-06-30 | 一种自然语言处理方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210002872.6A CN114021572B (zh) | 2022-01-05 | 2022-01-05 | 一种自然语言处理方法、装置、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114021572A true CN114021572A (zh) | 2022-02-08 |
CN114021572B CN114021572B (zh) | 2022-03-22 |
Family
ID=80069308
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210002872.6A Active CN114021572B (zh) | 2022-01-05 | 2022-01-05 | 一种自然语言处理方法、装置、设备及可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114021572B (zh) |
WO (1) | WO2023130688A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023130688A1 (zh) * | 2022-01-05 | 2023-07-13 | 苏州浪潮智能科技有限公司 | 一种自然语言处理方法、装置、设备及可读存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111274794A (zh) * | 2020-01-19 | 2020-06-12 | 浙江大学 | 一种基于传递的同义词扩展方法 |
CN111813954A (zh) * | 2020-06-28 | 2020-10-23 | 北京邮电大学 | 文本语句中两实体的关系确定方法、装置和电子设备 |
CN112270196A (zh) * | 2020-12-14 | 2021-01-26 | 完美世界(北京)软件科技发展有限公司 | 实体关系的识别方法、装置及电子设备 |
CN112507715A (zh) * | 2020-11-30 | 2021-03-16 | 北京百度网讯科技有限公司 | 确定实体之间关联关系的方法、装置、设备和存储介质 |
CN112989024A (zh) * | 2021-03-29 | 2021-06-18 | 腾讯科技(深圳)有限公司 | 文本内容的关系提取方法、装置、设备及存储介质 |
CN113158653A (zh) * | 2021-04-25 | 2021-07-23 | 北京智源人工智能研究院 | 预训练语言模型的训练方法、应用方法、装置及设备 |
WO2021169745A1 (zh) * | 2020-02-25 | 2021-09-02 | 升智信息科技(南京)有限公司 | 基于语句前后关系预测的用户意图识别方法及装置 |
CN113434699A (zh) * | 2021-06-30 | 2021-09-24 | 平安科技(深圳)有限公司 | Bert模型的预训练方法、计算机装置和存储介质 |
CN113705237A (zh) * | 2021-08-02 | 2021-11-26 | 清华大学 | 融合关系短语知识的关系抽取方法、装置和电子设备 |
CN113779185A (zh) * | 2020-06-10 | 2021-12-10 | 武汉Tcl集团工业研究院有限公司 | 一种自然语言模型的生成方法和计算机设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3429184B2 (ja) * | 1998-03-19 | 2003-07-22 | シャープ株式会社 | テキスト構造解析装置および抄録装置、並びにプログラム記録媒体 |
US11501154B2 (en) * | 2017-05-17 | 2022-11-15 | Samsung Electronics Co., Ltd. | Sensor transformation attention network (STAN) model |
CN109522553B (zh) * | 2018-11-09 | 2020-02-11 | 龙马智芯(珠海横琴)科技有限公司 | 命名实体的识别方法及装置 |
CN111523326B (zh) * | 2020-04-23 | 2023-03-17 | 北京百度网讯科技有限公司 | 实体链指方法、装置、设备以及存储介质 |
CN113627192A (zh) * | 2021-07-29 | 2021-11-09 | 浪潮云信息技术股份公司 | 基于两层卷积神经网络的关系抽取方法和装置 |
CN114021572B (zh) * | 2022-01-05 | 2022-03-22 | 苏州浪潮智能科技有限公司 | 一种自然语言处理方法、装置、设备及可读存储介质 |
-
2022
- 2022-01-05 CN CN202210002872.6A patent/CN114021572B/zh active Active
- 2022-06-30 WO PCT/CN2022/102862 patent/WO2023130688A1/zh unknown
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111274794A (zh) * | 2020-01-19 | 2020-06-12 | 浙江大学 | 一种基于传递的同义词扩展方法 |
WO2021169745A1 (zh) * | 2020-02-25 | 2021-09-02 | 升智信息科技(南京)有限公司 | 基于语句前后关系预测的用户意图识别方法及装置 |
CN113779185A (zh) * | 2020-06-10 | 2021-12-10 | 武汉Tcl集团工业研究院有限公司 | 一种自然语言模型的生成方法和计算机设备 |
CN111813954A (zh) * | 2020-06-28 | 2020-10-23 | 北京邮电大学 | 文本语句中两实体的关系确定方法、装置和电子设备 |
CN112507715A (zh) * | 2020-11-30 | 2021-03-16 | 北京百度网讯科技有限公司 | 确定实体之间关联关系的方法、装置、设备和存储介质 |
CN112270196A (zh) * | 2020-12-14 | 2021-01-26 | 完美世界(北京)软件科技发展有限公司 | 实体关系的识别方法、装置及电子设备 |
CN112989024A (zh) * | 2021-03-29 | 2021-06-18 | 腾讯科技(深圳)有限公司 | 文本内容的关系提取方法、装置、设备及存储介质 |
CN113158653A (zh) * | 2021-04-25 | 2021-07-23 | 北京智源人工智能研究院 | 预训练语言模型的训练方法、应用方法、装置及设备 |
CN113434699A (zh) * | 2021-06-30 | 2021-09-24 | 平安科技(深圳)有限公司 | Bert模型的预训练方法、计算机装置和存储介质 |
CN113705237A (zh) * | 2021-08-02 | 2021-11-26 | 清华大学 | 融合关系短语知识的关系抽取方法、装置和电子设备 |
Non-Patent Citations (3)
Title |
---|
YOUNGBIN RO: "Multi2OIE: Multilingual Open Information Extraction based on Multi-Head Attention with BERT", 《ATARXIV:2009。08128V1[CS.CL]17 SEP 2020》 * |
孙毅 等: "自然语言预训练模型知识增强方法综述", 《中文信息学报》 * |
毛明毅 等: "加入自注意力机制的BERT命名实体识别模型", 《智能系统学报》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023130688A1 (zh) * | 2022-01-05 | 2023-07-13 | 苏州浪潮智能科技有限公司 | 一种自然语言处理方法、装置、设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2023130688A1 (zh) | 2023-07-13 |
CN114021572B (zh) | 2022-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111444320B (zh) | 文本检索方法、装置、计算机设备和存储介质 | |
CN109886294B (zh) | 知识融合方法、装置、计算机设备和存储介质 | |
JP6187877B2 (ja) | 同義語抽出システム、方法および記録媒体 | |
CN113591457B (zh) | 文本纠错方法、装置、设备及存储介质 | |
CN114021573B (zh) | 一种自然语言处理方法、装置、设备及可读存储介质 | |
CN112926327B (zh) | 一种实体识别方法、装置、设备及存储介质 | |
CN110688853B (zh) | 序列标注方法、装置、计算机设备和存储介质 | |
CN113590784B (zh) | 三元组信息抽取方法、装置、电子设备、及存储介质 | |
CN111666427A (zh) | 一种实体关系联合抽取方法、装置、设备及介质 | |
CN112800239B (zh) | 意图识别模型训练方法、意图识别方法及装置 | |
CN113255320A (zh) | 基于句法树和图注意力机制的实体关系抽取方法及装置 | |
CN112800774A (zh) | 基于注意力机制的实体关系抽取方法、装置、介质和设备 | |
CN110968725B (zh) | 图像内容描述信息生成方法、电子设备及存储介质 | |
CN111274829A (zh) | 一种利用跨语言信息的序列标注方法 | |
CN113705196A (zh) | 基于图神经网络的中文开放信息抽取方法和装置 | |
CN112016303A (zh) | 基于图神经网络的文本纠错方法、装置、设备及存储介质 | |
CN116011470A (zh) | 翻译、对抗样本生成、模型鲁棒性增强方法及相关装置 | |
CN114021572B (zh) | 一种自然语言处理方法、装置、设备及可读存储介质 | |
JP5441937B2 (ja) | 言語モデル学習装置、言語モデル学習方法、言語解析装置、及びプログラム | |
US11494431B2 (en) | Generating accurate and natural captions for figures | |
CN113408296B (zh) | 一种文本信息提取方法、装置及设备 | |
JP7121819B2 (ja) | 画像処理方法及び装置、電子機器、コンピュータ可読記憶媒体並びにコンピュータプログラム | |
CN114239555A (zh) | 一种关键词提取模型的训练方法及相关装置 | |
CN111985486A (zh) | 图像信息的识别方法及装置、存储介质、计算机设备 | |
CN111046657A (zh) | 一种实现文本信息标准化的方法、装置及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |