CN113886571A - 实体识别方法、装置、电子设备及计算机可读存储介质 - Google Patents
实体识别方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN113886571A CN113886571A CN202110624434.9A CN202110624434A CN113886571A CN 113886571 A CN113886571 A CN 113886571A CN 202110624434 A CN202110624434 A CN 202110624434A CN 113886571 A CN113886571 A CN 113886571A
- Authority
- CN
- China
- Prior art keywords
- entity
- word
- boundary
- region
- words
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 92
- 239000013598 vector Substances 0.000 claims description 201
- 230000015654 memory Effects 0.000 claims description 25
- 238000012216 screening Methods 0.000 claims description 25
- 239000013604 expression vector Substances 0.000 claims description 20
- 238000012545 processing Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 abstract description 28
- 238000013473 artificial intelligence Methods 0.000 abstract description 9
- 239000011159 matrix material Substances 0.000 description 67
- 230000006870 function Effects 0.000 description 35
- 238000010586 diagram Methods 0.000 description 32
- 230000008569 process Effects 0.000 description 22
- 238000012549 training Methods 0.000 description 22
- 229960004134 propofol Drugs 0.000 description 21
- OLBCVFGFOZPWHH-UHFFFAOYSA-N propofol Chemical compound CC(C)C1=CC=CC(C(C)C)=C1O OLBCVFGFOZPWHH-UHFFFAOYSA-N 0.000 description 19
- 238000001514 detection method Methods 0.000 description 14
- 238000013528 artificial neural network Methods 0.000 description 9
- 238000000605 extraction Methods 0.000 description 9
- 238000013527 convolutional neural network Methods 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000001914 filtration Methods 0.000 description 7
- 238000013459 approach Methods 0.000 description 6
- 230000009466 transformation Effects 0.000 description 6
- 230000002457 bidirectional effect Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 5
- 235000019580 granularity Nutrition 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 4
- 201000010099 disease Diseases 0.000 description 4
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000006403 short-term memory Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 108091008849 TRPN Proteins 0.000 description 1
- 238000000225 bioluminescence resonance energy transfer Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012821 model calculation Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 239000002994 raw material Substances 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/416—Extracting the logical structure, e.g. chapters, sections or page numbers; Identifying elements of the document, e.g. authors
-
- 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/35—Clustering; Classification
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- Multimedia (AREA)
- Character Discrimination (AREA)
- Machine Translation (AREA)
Abstract
本申请提供了一种实体识别方法、装置、电子设备及计算机可读存储介质,其中方法包括:获取待识别文本序列对应的至少一个实体边界词;基于至少一个实体边界词,获取待识别文本序列中的至少一个实体候选区域;基于实体候选区域,获取待识别文本序列的实体识别结果。该方案中的各步骤可以通过人工智能模型执行。相较于现有技术,该方案在不增加实体候选区域数量的前提下,即可提高实体候选区域对待识别文本序列中实体的覆盖率,降低了计算的复杂程度。
Description
技术领域
本申请涉及计算机技术领域,具体而言,本申请涉及一种实体识别方法、装置、电子设备及计算机可读存储介质。
背景技术
实体识别主要目的是从一段待识别文本序列中抽取出可能为实体的所有候选实体,并判断实体类别。
嵌套实体识别,就是待识别文本序列中的实体可能存在嵌套情况,嵌套实体识别要求识别出输入文本序列中所有候选实体,而不是仅仅最外层的候选实体,传统的基于序列标注的方法只能为每个词分配一个标签,因此有必要对传统的实体识别方法进行优化。
发明内容
本申请的目的旨在至少能解决上述的技术缺陷之一,本申请实施例所提供的技术方案如下:
第一方面,本申请实施例提供了一种实体识别方法,包括:
获取待识别文本序列对应的至少一个实体边界词;
基于至少一个实体边界词,获取待识别文本序列中的至少一个实体候选区域;
基于实体候选区域,获取待识别文本序列的实体识别结果。
在本申请的一种可选实施例中,获取待识别文本序列对应的至少一个实体边界词,包括:
将待识别文本序列中所有词分别作为实体边界词;或者,
基于待识别文本序列中词的背景表示向量,获取待识别文本序列中的词作为实体边界词的概率,并基于概率,确定待识别文本序列的实体边界词。
在本申请的一种可选实施例中,基于至少一个实体边界词,获取待识别文本序列中的至少一个实体候选区域,包括:
基于实体边界词,获取待识别文本序列对应的实体建议区域;
基于实体建议区域,获取对应的实体候选区域。
在本申请的一种可选实施例中,基于实体边界词,获取待识别文本序列对应的实体建议区域,包括:
基于至少一个预设宽度,分别以实体边界词为锚点词,获取对应的至少一个预设宽度的实体建议区域。
在本申请的一种可选实施例中,基于实体建议区域,获取对应的实体候选区域,包括:
基于实体建议区域覆盖的词的背景表示向量和对应的锚点词的背景表示向量,获取对应的组合向量;
获取待识别文本序列中实体边界词的背景表示向量与组合向量之间的相似度;
基于相似度,获取对应的实体候选区域。
在本申请的一种可选实施例中,获取待识别文本序列中实体边界词的背景表示向量与组合向量之间的相似度,包括:
在欧式空间或双曲空间中,获取待识别文本序列中实体边界词的背景表示向量与组合向量之间的相似度。
在本申请的一种可选实施例中,基于相似度,获取对应的实体候选区域,包括:
基于相似度,从待识别文本序列中实体建议区域的锚点词、以及位于锚点词左侧的实体边界词中,确定出对应的实体候选区域的起始边界词,从待识别文本序列中实体建议区域的锚点词、以及位于锚点词右侧的实体边界词中,确定出对应的实体候选区域的终止边界词;
基于起始边界词和终止边界词,确定出对应的实体候选区域。
在本申请的一种可选实施例中,基于实体建议区域覆盖的词的背景表示向量和对应的锚点词的背景表示向量,获取对应的组合向量,包括:
将实体建议区域的宽度作为卷积核宽度,对该实体建议区域覆盖的词的背景表示向量进行卷积处理,得到对应的特征向量;
基于实体建议区域覆盖的词所对应的特征向量和对应的锚点词的背景表示向量,获取对应的组合向量。
在本申请的一种可选实施例中,基于实体建议区域,获取对应的实体候选区域,包括:
确定实体建议区域的锚点词的起始边界词候选和终止边界词候选;
在起始边界词候选中确定实体建议区域的起始边界词,在终止边界词候选中确定实体建议区域的终止边界词;
根据得到的起始边界词和终止边界词,确定出对应的实体候选区域。
在本申请的一种可选实施例中,确定实体建议区域的锚点词的起始边界词候选和终止边界词候选,包括
将实体建议区域的锚点词以及位于该锚点词左侧的边界词确定为该锚点词的起始边界词候选;
将实体建议区域的锚点词以及位于该锚点词右侧的边界词确定为该锚点词的终止边界词候选。
在本申请的一种可选实施例中,在起始边界词候选中确定实体建议区域的起始边界词,在终止边界词候选中确定实体建议区域的终止边界词,包括:
确定各起始边界词候选作为实体建议区域的起始边界词的第一概率,以及各终止边界词候选作为实体建议区域的终止边界词的第二概率;
基于第一概率确定实体建议区域的起始边界词,以及根据第二概率确定实体建议区域的终止边界词。
在本申请的一种可选实施例中,基于实体候选区域,获取待识别文本序列的实体识别结果,包括:
对实体候选区域进行筛选,得到筛选后的实体候选区域;
对筛选后的实体候选区域进类别判别,得到待识别文本序列的实体识别结果。
在本申请的一种可选实施例中,对实体候选区域进行筛选,得到筛选后的实体候选区域,包括:
基于实体候选区域覆盖的词的背景表示向量,获取对应的第一分类特征向量;
基于实体候选区域对应的第一分类特征向量,获取实体候选区域属于实体的概率;
基于实体候选区域属于实体的概率,获取筛选后的实体候选区域。
在本申请的一种可选实施例中,对筛选后的实体候选区域进类别判别,得到待识别文本序列的实体识别结果,包括:
基于筛选后的实体候选区域对应的起始边界词和终止边界词的背景表示向量,获取对应的第二分类特征向量;
基于筛选后的实体候选区域对应的第二分类特征向量进行类别判别,得到对应的实体识别结果。
在本申请的一种可选实施例中,基于实体候选区域,获取待识别文本序列的实体识别结果,包括:
基于实体候选区域对应的起始边界词和终止边界词的背景表示向量,获取对应的第三分类特征向量;
基于实体候选区域对应的第三分类特征向量进行类别判别,得到对应的实体识别结果。
在本申请的一种可选实施例中,基于至少一个实体边界词,获取待识别文本序列中的至少一个实体候选区域,包括:
从待识别文本序列中,获取与实体边界词相邻的预设数量的实体边界词;
获取实体边界词的背景表示向量,分别与对应的相邻的预设数量的实体边界词的背景表示向量之间的相似度;
基于相似度,获取对应的实体候选区域。
在本申请的一种可选实施例中,基于相似度,获取对应的实体候选区域,包括:
基于相似度,从待识别文本序列的实体边界词、以及实体边界词的相邻的预设数量的实体边界词中,分别确定出对应的实体候选区域的起始边界词和终止边界词;
基于起始边界词和终止边界词,确定对应的实体候选区域。
第二方面,本申请实施例提供了一种实体识别装置,包括:
实体边界词获取模块,用于获取待识别文本序列对应的至少一个实体边界词;
实体候选区域获取模块,用于基于至少一个实体边界词,获取待识别文本序列中的至少一个实体候选区域;
实体识别结果获取模块,用于基于实体候选区域,获取待识别文本序列的实体识别结果。
第三方面,本申请实施例提供了一种电子设备,包括存储器和处理器;
存储器中存储有计算机程序;
处理器,用于执行计算机程序以实现第一方面实施例或第一方面任一可选实施例中所提供的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,其特征在于,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现第一方面实施例或第一方面任一可选实施例中所提供的方法。
本申请提供的技术方案带来的有益效果是:
通过获取待识别文本序列对应的实体候选区域,再基于实体候选区域,获取待识别文本序列的实体识别结果,相较于现有技术,该方案在不增加实体候选区域数量的前提下,即可提高实体候选区域对待识别文本序列中实体的覆盖率,降低了计算的复杂程度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1a为本申请实施例的一个示例中嵌套实体识别结果示意图;
图1b为本申请实施例的一个示例中文本序列中嵌套实体的示意图;
图2为现有技术中一种获取实体候选区域的示例的示意图;
图3为现有技术中另一种获取实体候选区域的示例的示意图;
图4为本申请实施例提供的一种实体识别方法的流程示意图;
图5为本申请实施例的一个示例中获取实体建议区域的示意图;
图6为本申请实施例提供的一种实通过实体识别网络进行实体识别的示意图;
图7为本申请实施例的一个示例中通过实体识别网络对待识别文本序列进行实体识别的示意图;
图8为本申请实施例提供的一种实体识别网络模型的结构示意图;
图9a为本申请实施例的一个示例中实体识别的示意图;
图9b为本申请实施例的一个示例中获取的实体候选;
图9c为现有技术的一个示例中获取的实体候选;
图10为本申请实施例中实体边界词检测层网络结构示意图;
图11a为本申请实施例的一个示例中实体边界词检测示意图;
图11b为本申请实施例的一个示例中实体边界词检测示意图;
图12a为本申请实施例的一个示例中获取实体建议区域的示意图;
图12b为本申请实施例中实体建议生成层的网络结构示意图;
图13a为本申请实施例中实体候选识别层的网络结构示意图;
图13b为本申请实施例中实体候选识别层的详细网络结构示意图;
图13c本申请实施例中基于边界词掩码的边界注意力计算与普通的边界注意力计算对比图;
图14为本申请实施例中实体候选过滤层的网络结构示意图;
图15为本申请实施例中实体分类器模块的网络结构示意图;
图16为本申请实施例中基于双曲表示的实体识别方案的示意图;
图17为本申请实施例提供的一种实体识别网络模型的结构示意图;
图18a为本申请实施例提的一示例中嵌套实体识别在智慧识屏中的应用示意图;
图18b为本申请实施例提的一示例中嵌套实体识别在新闻阅读增强中的应用示意图;
图18c为本申请实施例提的一示例中嵌套实体识别在菜单阅读增强中的应用示意图;
图18d为本申请实施例提的一示例中嵌套实体识别在图像编辑中的应用示意图;
图18e为本申请实施例提的一示例中嵌套实体识别在知识图谱构建中的应用示意图;
图19为本申请实施例提供的一种实体识别装置的结构框图;
图20为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
命名实体识别(Named Entity Recognition,NER),是一种信息抽取的子任务,目的是非结构化的文本中提到的实体名进行定位,并根据预定义的类别集合判断其所属类别,这里实体类别如PERSON(人名)、ORGNIZATION(组织机构名)、LOCATION(地点名)、TIME(时间)等。命名实体通常是用作物或人的一种专有名词,可以根据实际需求进行定义。
嵌套NER任务是指文本中提及的实体嵌套或重叠的现象。如图1a所示,一个ORGNIZATION(组织机构实体)“Edinburgh University”嵌套在另一个ORGNIZATION(组织机构实体)“Edinburgh University Library”中。但是,嵌套结构使该问题对于常规方法而言效率低下。
嵌套NER方法与非嵌套NER区别:传统的NER方法只能识别句子中的外层实体或最内层实体,识别的所有实体之间没有嵌套/重叠结构,而嵌套实体识别可以识别出多粒度的、嵌套的、具有重叠结构的实体,如表1所示。
表1
在对文本序列进行实体识别时,对于不包含嵌套实体的文本序列,需要识别其中的独立实体(即不存在嵌套情况的实体),例如“Hi,Bixby,北京今天的天气如何?”,其中,‘Bixby’和‘北京’都可以被识别为实体,前者为“产品(Product,PRO)”,后者为“地点(Location,LOC)”,具体识别文本序列中何种类型实体,根据识别任务定义的实体类别集而定。而对于包含嵌套实体的文本序列,则既需要识别其中的独立实体又需要识别其中的嵌套实体(可以理解为包含两个独立实体的实体),如图1b所示,文本序列“美国第三任总统Thomas Jefferson起草了《独立宣言》”,其中,“美国(LOC)”和“Thomas Jefferson(人名,Person,PER)”都为独立实体,而“美国第三任总统Thomas Jefferson(PER)”为嵌套实体,在实体识别过程中,需要对“美国(LOC)”、“Thomas Jefferson(Person,PER)”和“美国第三任总统Thomas Jefferson(PER)”三者都进行识别。传统的基于序列标注的方法,由于仅仅只能为每一个词分配一个标签,因此无法识别嵌套实体。
现有技术中通常采用基于区域的嵌套实体识别方法,该方法是对文本序列的多个实体候选区域分别进行识别来检测是否为候选实体,嵌套实体能够被识别是因为不同嵌套实体分别对应不同的实体候选区域。嵌套实体识别的关键在于如何生成嵌套实体对应的实体候选区域。为了获取实体候选区域,可以采用以下几种方式:1)将句法解析树的节点作为实体候选区域;2)对于一个输入包含N个词的文本序列,生成N(N+1)/2个候选子序列,将这N(N+1)/2个候选子序列作为实体候选区域;3)采用状态转移的方法(Transition basedMethod),通过特殊设计的动作序列来构建候选子序列,将构建的候选子序列作为实体候选区域。但是,这些实体候选区域获取方法几乎获取了文本序列对应的所有文本子序列,其实体候选区域获取过程和后续实体候选区域识别过程计算成本都较高。
另外,现有技术中还有采用基于模式的方法(Schema-based approaches)进行嵌套实体识别,该方法设计表达更好的标记模式来处理嵌套实体,而不是改变标记单元。一种代表性的方向是基于超图的方法,这里超图标签用来确保几次词级别的标签能够恢复嵌套实体候选。也有学者提出基于二分图的方法来处理嵌套实体标签。但是这些模式需要精细化的设计,来防止产生虚假的结构和结构歧义,同时,表达更强的、无歧义的模式将不可避免的会导致更高的训练复杂度和解码的时间复杂度。
在基于区域的嵌套实体识别方法的基础上,现有技术进一步提出了基于锚点-区域网络(Anchor-Region Networks)来获取嵌套实体对应的实体候选区域的方法,该方法可以分为两种实现方式:1)以文本序列中每个词为锚点词,根据多个预设宽度获取多个实体候选区域。例如,文本序列包含6个词,依次为t1、t2、t3、t4、t5、t6,预先设置了6个预设宽度,分别为1-6,6个预设宽度分别对应6种Proposal(候选),分别为Proposal1-Proposal6。对于锚点词t3为,则Proposal1-Proposal6对应的实体候选区域分别如图2所示,其中长方形框内的区域即为实体候选区域,如Proposal2对应的实体候选区域为[t3,t4]。2)以文本序列中某一确定的头实体词为锚点词,并以该头实体词为基准预测实体候选区域的边界,进而得到实体候选区域。例如,如图3所示,对于文本序列“The minister of thedepartment”,通过锚点词预测网络得到头实体词为“minister”(实体类别为“人(Person,PER)”),基于头实体词“minister”进行预测获取到对应的候选实体边界分别为“the”和“department”,进而得到对应的实体候选区域。前一种实现方式中,在文本序列中存在宽度变化较大的嵌套实体,为了使获取到的各实体候选区域尽可能的覆盖文本序列中的所有嵌套实体,则需要增加预设宽度的数量,即需要获取更多实体候选区域,这将增加模型计算的复杂度。后一种实现方式中,许多情况下无法确定文本序列的头实体词,进而无法获取文本序列的实体候选区域。针对上述问题,本申请实施例提供了如下实体识别方法。
图4为本申请实施例提供的一种实体识别方法的流程示意图,如图4所示,该方法可以包括:步骤S401,获取待识别文本序列对应的至少一个实体边界词;步骤S402,基于至少一个实体边界词,获取待识别文本序列中的至少一个实体候选区域;步骤S403,基于实体候选区域,获取待识别文本序列的实体识别结果。
本申请提供的方案,相较于现有技术,在不增加实体候选区域数量的前提下,即可提高实体候选区域对待识别文本序列中实体的覆盖率,降低了计算的复杂程度。
实施例1
在一种可选实施例中,获取待识别文本序列对应的实体候选区域,包括:获取待识别文本序列对应的实体建议区域;基于实体建议区域,获取对应的实体候选区域。其中,获取待识别文本序列对应的实体建议区域,包括:基于至少一个预设宽度,分别以所述待识别文本序列中的词为锚点词,获取对应的至少一个预设宽度的实体建议区域。具体来说,本申请实施例中通过待识别文本中每个词确定实体建议区域,再通过实体建议区域从待识别文本中的各词中确定出实体候选区域的起始边界词和终止边界词。
本申请实施例提供的一种实体识别方法可以包括:获取待识别文本序列对应的至少一个实体建议区域;获取实体建议区域对应的实体候选区域;基于实体候选区域,获取所述待识别文本序列的实体识别结果。
其中,实体建议区域的锚点词可以为待识别文本序列中的任一词,其宽度可以为不大于待识别文本序列宽度的任意宽度。举例来说,某一待识别文本序列,含5个词,依次为t1、t2、t3、t4、t5,首先预定义三种实体建议区域对应的宽度分别为1、3、5,3个预设宽度分别对应3种Proposal(候选),分别为Proposal1-Proposal3。那么,当选取t3为锚点词时,对应的实体建议区域可以如图5所示,其中长方形框内的区域即为实体候选区域,如Proposal2对应的实体建议区域为[t2,t4],需要说明的是,Proposal2对应的实体候选区域还可以是[t3,t5]或[t1,t3],只要保证对应的实体建议区域的锚点词为t3,且宽度为3即可。对于待识别文本序列,其中具有对应关系的实体建议区域的锚点词和实体候选区域的锚点词相同,而边界词不同,那么可以通过调整各实体建议区域的边界得到对应的实体候选区域。
具体地,在通过各实体建议区域调整边界得到对应的实体候选区域的过程中,参考实体建议区域与待识别文本序列中各个词的关联关系,使得调整后的边界更准确,即相较于多个实体建议区域,对应的多个实体候选区域对待识别文本序列中实体的覆盖率更高。由于各实体候选区域既可以覆盖独立实体,又可以覆盖嵌套实体,因此在对各实体候选区域进行分类时,可以对待识别文本序列中的独立实体和嵌套实体进行识别,得到对应的实体识别结果。
本申请实施例提供的方案,通过参考实体建议区域与待识别文本序列中各个词的关联关系,对待识别文本序列中的各实体建议区域调整边界得到对应的实体候选区域,再对各实体候选区域进行识别得到对应的实体识别结果,相较于现有技术,该方案在不增加实体候选区域数量的前提下,即可提高实体候选区域对待识别文本序列中实体的覆盖率,降低了计算的复杂程度。
本申请实施例中,上述实体识别过程可以通过预设的实体识别网络来实现,该实体识别网络可以为如图6所示的结构,其可以包括依次连接的特征提取模块(也可称为语义编码模块或句子编码模块)601、候选区域确定模块(也可称为候选区域生成模块)602以及实体分类模块(也可称为实体类别分类模块)603。具体来说,特征提取模块601用于提取输入的待识别文本序列的特征,得到对应的背景语义编码矩阵,候选区域确定模块602用于接收特征提取模块601输出的背景语义编码矩阵,并输出待处理文本的多个实体候选区域,实体分类模块603用于接收候选区域确定模块602输出的多个实体候选区域,并输出对应的实体识别结果。以下实施例将对文本识别网络进行实体识别过程中各个模块中的处理过程进行进一步描述。
在本申请的一种可选实施例中,获取实体建议区域对应的实体候选区域,包括:
基于待识别文本序列对应的背景语义编码矩阵,通过实体识别网络,获取实体建议区域对应的实体候选区域。
需要说明的是,该方案中背景语义编码矩阵即为背景表示矩阵,背景语义编码向量即为背景表示向量。
其中,通过背景语义编码矩阵可以获取待识别文本序列中各个词的背景语义编码向量,包括基准实体候选区域所覆盖的各个词的背景语义编码向量,将基准实体候选区域所覆盖的各个词的背景语义编码向量和待识别文本序列中各个词的背景语义编码向量之间的关系作为调整边界的依据,得到实体候选区域。该处理过程可以在实体识别网络的候选区域确定模块中进行。
在本申请的一种可选实施例中,基于待识别文本序列对应的背景语义编码矩阵,通过实体识别网络,获取实体建议区域对应的实体候选区域,包括:
基于待识别文本序列对应的背景语义编码矩阵和实体建议区域对应的组合向量,获取待识别文本序列中词的背景语义编码向量与对应的组合向量之间的相似度;
基于相似度,确定出实体建议区域对应的实体候选区域。
其中,基准实体候选区域所覆盖的各个词的背景语义编码向量和待识别文本序列中各个词的背景语义编码向量之间的关系,可以是基准实体候选区域对应的组合向量与待识别文本序列中各个词的背景语义编码向量之间的相似度。
具体地,对于每个实体建议区域,获取待识别文本序列中每个词的背景语义编码向量与该实体建议区域对应的组合向量之间的相似度,即每个词对应一个相似度。根据各个词对应的相似度的大小关系,可以调整对应的实体建议区域的边界,即为该实体建议区域重新确定边界词,进而得到对应的实体候选区域,且该实体候选区域覆盖实体的可能性大于对应的实体建议区域。接下来,在实体分类模块对实体候选区域中的实体进行分类,得到对应的实体识别结果。
在本申请的一种可选实施例中,基于待识别文本序列对应的背景语义编码矩阵和实体建议区域对应的组合向量,获取待识别文本序列中词的背景语义编码向量与对应的组合向量之间的相似度,包括:
基于待识别文本序列对应的背景语义编码矩阵,获取待识别文本序列中词的背景语义编码向量;
基于实体建议区域覆盖的词所对应的特征向量和对应的锚点词的背景语义编码向量,获取对应的组合向量;
基于实体建议区域对应的组合向量与待识别文本序列中词的背景语义编码向量进行多头自注意计算,获取待识别文本序列中词的背景语义编码向量与对应的实体建议区域对应的组合向量之间的相似度。
其中,各实体建议区域对应的组合向量可以是各实体建议区域对应的特征向量与对应的锚点词的背景语义编码向量之和,即组合向量中融入了对应的实体建议区域和锚点词的相关信息。
具体地,利用多头自注意(Multi-head Self-Attention)操作来计算组合向量与各个词之间的相似度,其中,将各基准矩阵对应的组合向量作为多头自注意算法中对应的索引(Query)矩阵,将待识别文本序列的背景语义编码矩阵作为多头自注意算法中对应的键值(Key)矩阵,通过多头自注意算法获取各基准矩阵对应的相似度,那么,这里的相似度也可以称为注意力得分。具体来说,对于待识别文本序列,其中,每个词的背景语义编码向量为ui(i=1,2,3…L),且预先设置了k(k可以取1,2,3等较小的整数)个用于获取实体建议区域的预设宽度,以第i个词为锚点词,根据第k个预设宽度获取该待识别文本区域的一个实体建议区域(后文记做ki对应的实体建议区域),该实体建议区域对应的组合向量与待识别文本序列中各个词的背景语义编码向量的相似度通过如下公式获取:
其中,<·,·>表示内积运算,分别为自注意计算中的查询矩阵和寻址矩阵,其中,h∈{lk,rk}它们都是有带识别文本序列的背景语义编码矩阵U∈RL×D经线性变化而来(首先将U线性变换成Q=F(U)∈RL×D,然后将Q按特征维度划分成2K个头,即2K个部分{Q1,Q2,..,Q2K},其中每个头对应一个查询矩阵,Kh的获取采用类似操作)。为了基于第k个预设宽度对应的实体建议区域回归实体候选区域的边界,可以将各实体建议区域对应的特征向量Pk加入自注意计算的查询矩阵中,即Qlk←Qlk+Pk,Qrk←Qrk+Pk。
在本申请的一种可选实施例中,任一实体建议区域对应的特征向量可以通过以下方式获取:将该实体建议区域的宽度作为卷积核宽度,对该实体建议区域覆盖的词的背景语义编码向量对应的拼接向量进行卷积处理,得到对应的特征向量。
具体地,对于ki对应的实体建议区域,其特征向量通过如下公式获取:
pki=Conv1Dk(ui)=ReLU(WkUi-k+1:i+k-1)
其中,ReLU预设激活函数,ui-k+1:i+k-1为ki对应的实体建议区域覆盖的词的背景语义编码向量对应的拼接向量,Wk和2k-1分别卷积核以及卷积窗的尺寸。所有位置的词ui可以同时处理,该卷积操作可记为Pk=Conv1Dk(U)。
在本申请的一种可选实施例中,通过边界确定子模块,基于相似度,确定出实体建议区域对应的实体候选区域,包括:
将实体建议区域对应的锚点词和待识别文本序列的第一端点词之间的词中对应的相似度最高的词,确定为对应的实体候选区域的起始边界词,将锚点词和待识别文本序列的第二端点词之间的词中对应的相似度最高的词,确定为对应的实体候选区域的终止边界词;
基于第一边界词和第二边界词,确定出对应的实体候选区域。
其中,若将待识别文本序列中各个词看作水平依次排布的序列,则可以认为第一端点词为待识别文本序列中的左侧端点词,其位于锚点词的左侧,那么对应的第一边界词为起始边界词。同理,可以认为第二端点词为待识别文本序列中的右侧端点词,其位于锚点词的右侧,那么对应第二边界词为终止边界词。为了便于理解和描述,后文中将以第一边界词为起始边界词和第二边界词为终止边界词对方案进行说明。
具体地,在通过调整实体建议区域的边界得到对应的实体候选区域过程中,需要分别确定调整后的左边界和右边界,即分别确定实体候选区域的起始边界词和终止边界词。待识别文本中各个词的背景语义编码向量与组合向量的相似度越高,说明该词与锚点词对应的目标实体候选区域的边界的匹配度越高,具体来说,在锚点词和锚点词的左侧的词中找到与组合向量相似度最高的词作为实体候选区域的起始边界词,在锚点词和锚点词的右侧找到与组合相似度最高的词作为实体候选区域的终止边界词,进而得到实体候选区域。
具体来说,从上述锚点词的左侧的各个词对应的相似度的大小,以及锚点词的右侧的各个词的相似度的大小后,可通过如下计算公式获取起始边界词的位置和终止边界词的位置:
其中,Alk[i,j]表示得分矩阵Alk的第i行第j列的位置元素,lki为ki对应的实体建议区域对应的实体候选区域的左边界,rki为ki对应的实体建议区域对应的实体候选区域的右边界,可以理解的是,左边界对应于待识别文本序列中锚点词和锚点词左侧中的一个词,右边界对应于待识别文本序列中锚点词和锚点词左侧中的一个词,那么ki对应的实体建议区域对应的实体候选区域为
在本申请的一种可选实施例中,获取待识别文本序列对应的至少一个实体建议区域,包括:
通过实体识别网络,基于至少一个预设宽度,分别以待识别文本序列中词为锚点词,获取对应的至少一个预设宽度的实体建议区域。
具体地,若待识别文本序列中有L(L≥1)个词(包括标点符号),且有K(K≥1)个预设宽度,那么待识别文本序列中每个词对应的实体建议区域的数量为K,则待识别文本中所有词对应的实体建议区域的总数量为L*K个。可以看出,本申请实施例中实体建议区域与现有技术中基于锚点-区域网络获取实体候选区域的方法的实现方式1)中得到的实体候选区域的实质相同。由前文描述可知,在本申请的方案中还需要对实体建议区域进行边界调整以得到覆盖率更高的实体候选区域。其中,实体建议区域的获取步骤也是在实体候选区域确定模块进行的。
在本申请的一种可选实施例中,基于实体候选区域,获取待识别文本序列的实体识别结果,包括:
基于各实体候选区域覆盖的各个词对应的背景语义编码向量,通过实体识别网络,获取筛选后的实体候选区域;
通过实体识别网络获取筛选后的实体候选区域中实体的类型和位置。
具体地,实体候选区域确定模块输出的各实体候选区域可能有些实体候选区域并不包含实体,因此在进行实体分类前,可以通过实体候选区域筛选模块对各实体候选区域进行筛选,并将筛选后的实体候选区域输入实体分类模块进行实体识别,得到对应的实体类型和位置。
显然,实体候选区域筛选模块位于实体候选区域确定模块和实体分类模块之间。需要说明的是,该实体候选区域筛选模块不是实体识别网络的必要结构,实体识别网络中没有该实体候选区域筛选模块时,实体识别模块对实体候选区域确定模块输出的实体候选区域直接进行分类处理。
在本申请的一种可选实施例中,基于实体候选区域覆盖的各个词对应的背景语义编码向量,通过实体识别网络,获取筛选后的实体候选区域,包括:
基于实体候选区域覆盖的各个词的背景语义编码向量,获取对应的第一分类特征向量;
基于各实体候选区域对应的第一分类特征向量,获取各实体候选区域包含实体的概率;
基于各实体候选区域包含实体的概率,获取筛选后的实体候选区域。
其中,各实体候选区域对应的特征向量可以是对实体候选区域覆盖的各个词对应的背景语义编码矩阵按行取平均得到,举例来说,若某一实体候选区域对应5个词,从待识别文本序列的背景语义编码矩阵中获取这5个词对应的背景语义编码矩阵(D*5维矩阵,D≥1,且为整数),将这个D*5维矩阵按行取平均得到该实体候选区域的第一分类特征向量(D*1列向量)。
具体地,在获取到各实体候选区域的第一分类特征向量后,利用如下分类器对各实体候选区域进行筛选:
pki=Softmax(Whki)
其中,pki为ki对应的实体建议区域对应的实体候选区域包含实体的概率,W∈R2×3D为线性变换参数矩阵(该参数矩阵的维度依赖于hki特征向量维度),hki为ki对应的实体建议区域对应的实体候选区域对应的第一分类特征向量。
在得出各实体候选区域包含实体的概率后,将概率大于或等于第一预设值的实体候选区域作为筛选后的实体候选区域。
在本申请的一种可选实施例中,通过实体识别网络获取筛选后的实体候选区域中实体的类型和位置,包括:
基于筛选后的实体候选区域对应的边界词的背景语义编码向量,获取对应的第二分类特征向量;
基于筛选后的实体候选区域对应的第二分类特征向,获取对应的实体的类型和位置。
其中,各实体候选区域的第二分类特征向量可以是由对应的起始边界词和终止边界词各自对应的背景语义编码向量拼接得到,举例来说,若某一实体候选区域的起始边界词的背景语义编码向量为终止边界词的背景语义编码向量为则该实体候选区域对应的编码向量即为
另外,各实体候选区域的第二分类特征向量还可以是有对应的起始边界词、终止边界词和锚点词各自对应的背景语义编码向量拼接得到。
具体地,在获取到各实体候选区域的第二分类特征向量后,利用如下分类器获取各实体候选区域进行分类:
oki=softmax(W2·ReLU(W1·eki))
其中,oki为ki对应的实体建议区域对应的实体候选区域的实体类型的预测概率向量,W1∈R2D×H和W2∈RC×H都为线性变换参数矩阵,eki为ki对应的实体建议区域对应的实体候选区域对应的第二分类特征向量,C等于实体类别个数,这里C包括不属于实体的类别,用来对实体候选区域做进一步筛选。
需要说明的是,本申请实施例的方法既可以对嵌套实体进行识别,也可以对独立实体进行识别。在识别的待识别文本序列中不含有嵌套实体的情况下,只需要在识别完成后对识别出的实体进行冲突判断即可。这里可以利用非最大抑制(Non-MaximumSuppression,NMS)算法来处理冗余、重叠的实体候选区域,并输出真实的实体。NMS的思想简单而有效:获取实体分类模块对实体候选区域进行分类时,各实体候选区域对应的实体的预测概率,选取最大概率的候选实体,删除与之冲突候选实体,重复前面的处理过程,直到所有候选实体都被处理完毕。最终,可以得到这些非冲突候选实体作为最终的识别结果。
在本申请的一种可选实施例中,在获取实体建议区域对应的实体候选区域之前,该方法还可以包括:
通过实体识别网络获取待识别文本序列对应的背景语义编码矩阵。
具体地,待识别文本序列的背景语义编码矩阵的获取步骤在特征提取网络中进行。
在本申请的一种可选实施例中,通过实体识别网络获取待识别文本序列对应的背景语义编码矩阵,包括:
获取待识别文本序列对应的初始背景语义编码矩阵;
基于初始句子背景语义编码矩阵和待识别文本序列对应的词性嵌入矩阵,获取对应的背景语义编码矩阵。
其中,特征提取模块还进一步包括ELMo(Embeddings from Language Models)子模块和双前向长短期记忆(Bi-directional Long Short-Term Memory,Bi-LSTM)子模块。
具体地,对包含L个词的待识别文本序列x=(t1,t2,…,tL),采用ELMo对输入文本进行编码得到对应的初始背景语义编码矩阵WELMo=ELMo(x)∈RL×E,其中E为词向量的维度。考虑到词性对于实体边界和实体类别识别具有重要影响,假设待识别文本序列对应的词性序列为(p1,p2,…,pL),其对应的词性嵌入矩阵为Wpos∈RL×p,其中p为每个词性嵌入向量的维度。然后将WELMo和Wpos按词拼接输入到双向长短期记忆子模块中,得到待识别文本序列的背景语义编码矩阵其中分别为Bi-LSTM的前向隐向量表示和后向隐向量表示。
句子编码器可以采用其他定义方式,如该特征提取模块可以只包括BERT(Bidirectional Encoder Representations from Transformers)模块,通过该BRET模块获取待识别文本序列对应的背景语义编码矩阵,U=BERT(x)。
在本申请的一种可选实施例中,实体识别网络通过以下方式训练得到:
确定训练损失函数,训练损失函数包括边界损失函数、实体候选区域筛选损失函数以及实体分类损失函数;
获取训练样本集,训练样本集中文本序列样本标注有真实实体的位置标签和类型标签;
基于训练损失函数和训练样本集对实体识别网络进行训练,直至训练损失函数的值满足预设条件时,得到训练好的实体识别网络。
其中,在实体识别网络的训练阶段,采用了三种损失函数进行联合训练,分别为边界损失函数、实体候选区域筛选损失函数以及实体分类损失函数。
具体地,边界损失函数主要是用来优化实体候选区域确定模块,当利用相似度对实体候选区域的左右边界进行优化时,对应的交叉熵损失函数如下:
其中,CE(·,·)表示标准的交叉熵损失函数(cross-entropy loss function),lki和rki分别为ki对应的实体建议区域对应的目标实体候选区域的左边界和右边界位置,Alk[i,:]为ki对应的实体建议区域各词作为左边界的相似度的表示向量,Ark[i,:]ki对应的实体建议区域各词作为右边界的相似度的表示向量。边界损失函数为Lb=Lleft+Lright。
实体候选区域筛选损失函数主要用来优化实体候选区域筛选模块,实体候选区域筛选模块用于判断实体候选区域属于实体的概率,属于二元分类判别,对应的二元交叉熵损失函数如下:
其中,yki为ki对应的实体建议区域对应的实体候选区域是否包含实体的判断结果,pki为ki对应的实体建议区域对应的实体候选区域包含实体的概率。
实体分类损失函数主要用来对实体分类模块进行优化,对应的交叉熵损失函数如下:
其中,yki∈{0,1,..,C}为ki对应的实体建议区域对应的实体候选区域m=[lki,rki]对应的实体类型标签,oki为ki对应的实体建议区域对应的实体候选区域的实体类型的预测概率向量。
在模型训练阶段,本申请实施例采用端到端的优化方法,同时优化边界损失、实体候选区域筛选损失以及实体分类损失,定义整个模型的优化目标损失函数为:
L=Lb+Lr+Lc
此外,在实体候选区域筛选模块的优化过程中,考虑到实体候选区域确定模块获取到的实体候选区域可能存在错误,且获取到的实体候选区域可能缺乏多样性,使得实体候选区域筛选模块难以快速优化。为了避免训练过程中累积误差的产生,在优化实体候选区域筛选模块时,本申请实施例对输入的样本文本序列中词两两组合构成实体候选区域,如果将所有组合的实体候选区域输入到实体候选区域筛选模块中,会带来较高的计算复杂度,同时负样本规模远大于正样本数,不利于模型优化,为了避免该问题,对负样本进行了负采样。
在本申请的一种可选实施例中,任一实体候选区域对应的边界损失函数的损失值通过以下方式获取:
基于该实体候选区域对应的实体建议区域覆盖的词与文本序列样本中真实实体覆盖的词的重合度,获取该实体候选区域的目标实体候选区域;
将该实体候选区域对应的边界的相似度表示向量和目标候选实体的边界的独热表示向量代入边界损失函数,得到对应的损失值。
其中,在训练过程中,获取边界损失函数的值需要获取各实体建议区域对应的目标实体候选区域,目标实体候选区域作为优化实体候选区域确定模块的监督标签。
具体地,对于每个实体建议区域,基于该实体建议区域覆盖的词与文本序列样本中各真实实体覆盖的词集合的重合度,也称为交变比(Intersection-over Union Ratio,IoU Ratio),来确定对应的目标实体候选区域。各重合度的计算公式如下:
其中,Pki为ki对应的实体建议区域覆盖的词集合,Em为文本样本序列中第m(m=1,2,3…)个真实实体覆盖的词集合。在根据重合度确定出各实体建议区域对应的目标实体候选区域后,将该实体候选区域对应的边界的相似度表示向量和目标候选实体的边界的独热表示向量代入边界损失函数,得到左边界损失和右边界损失,进而得到对应的损失值。
进一步地,基于该实体候选区域对应的实体建议区域覆盖的词与文本序列样本中真实实体覆盖的词的重合度,获取该实体候选区域的目标实体候选区域,包括:
若该实体候选区域对应的重合度不小于预设阈值,则将对应的真实实体对应的区域作为对应的目标实体候选区域;
若该实体候选区域对应的重合度小于预设阈值,则将该实体候选区域的锚点词对应的区域作为对应的目标实体候选区域。
具体地,对于每个实体建议区域,若其与某一真实实体覆盖的词集合的重合度不小于预设阈值(该预设阈值可以设置为0.1),则将该真实实体对应的区域确定该实体建议区域对应的目标实体候选区域。若其与某一真实实体覆盖的词集合的重合度小于预设阈值,则将其对应的锚点词作为对应的目标实体候选区域。
另外,在对实体识别网络进行训练的过程中,通过预先设置多种宽度(也可称为尺度),可得到多尺度的基础实体区域,多尺度的基础区域的设置,有助于确定训练时回归哪种真实实体,同时也有助于根据重合度得分回归文本样本序列中的所有真实实体。
下面通过一个示例来对本申请实施例的方案进行进一步说明,采用预训练后的实体识别网络,来对包含嵌套实体的待识别文本序列(The Minister of Foreign Affairsconvened a meeting)进行识别。如图7所示,该示例中的实体识别网络包括句子编码层701、实体建议生成层702、实体候选过滤层703以及实体分类器模块704,其中,句子编码层701又进一步包括依次连接的ELMo子模块和双前向长短期记忆子模块。将待识别文本序列输入该实体识别网络,最终输出实体识别结果。
具体来说,在实体建议生成层702中,预先设置了3个预设宽度用于获取对应的实体建议区域,3个预设宽度分别对应3种不同的Proposal(建议),分别为Proposal1对应预设宽度1,Proposal2对应预设宽度3,Proposal3对应预设宽度5。实体建议生成层702输出不同Proposal对应的27个实体候选区域,如虚线框705中所示,实体候选过滤层703对27个实体候选区域进行筛选,得到3个筛选后的实体候选区域,如虚线框706中所示,实体分类器模块704对3个筛选后的实体候选区域进行分类,得到各筛选后的实体候选区域对应的实体类型,其中筛选后的实体候选区域[7,7]不属于任何实体类型,如虚线框707中所示,最后实体识别网络输出待识别文本序列包含的嵌套实体“The Minister of Foreign Affairs”和对应的实体类型PER,独立实体“Foreign Affairs”和对应的类型为ORG,如虚线框708中所示。
实施例2
在一种可选实施例中,基于至少一个实体边界词,获取待识别文本序列中的至少一个实体候选区域,包括:基于实体边界词,获取待识别文本序列对应的实体建议区域;基于实体建议区域,获取对应的实体候选区域。具体来说,本申请实施例中通过实体边界词确定实体建议区域,再通过实体建议区域从实体边界词中确定出实体候选区域的起始边界词和终止边界词。
如图8所示为本申请实施例的一种用于执行实体识别方法的模型的架构图,该模型可以称为时序区域建议网络模型(Temporal Region Proposal Network,TRPN),如图8所示,其包括两个模块:实体候选检测器模块和实体分类器模块。下面对这两个模块的构成和功能分别进行介绍。
1、实体候选检测器模块(Entity Candidate Detector Network,ECDN),该模块目的是检测输入文本(即待识别文本序列)中所有可能的实体候选(即实体候选区域)。其以一个句子作为输入,输出所有的实体候选。该模块包括句子编码层和实体候选生成模块两个子模块,其中:
句子编码层利用Bi-LSTM(Bidirectional Long ShortTerm Memory,双向长短时记忆)/CNN(Convolutional Neural Networks,卷积神经网络)/BERT(BidirectionalEncoder Representations from Transformers,基于转换的双向编码器表示)对输入句子进行语义编码得到每个词的背景表示(Context representation)向量。实体候选生成模块可以动态的检测输入文本中可能的具有不同粒度的实体候选。该模块包括实体建议生成层和实体候选过滤层两个部分,其中:
实体建议生成层(Entity Proposal Generator),其以生成的实体建议窗口(Entity Proposal Windows)(即不同的区域宽度)作为实体区域基准去动态的预测不同粒度的实体建议区域。这里,我们设计了一种快速且内存高效的边界注意力来加速模型推断,即首先通过实体边界词检测层识别出句子中的可能的实体边界词,然后仅在实体边界词上进行计算边界注意力得分。
实体候选过滤层(Entity Candidate Filter),用一个二元分类层判断一个生成的实体候选属于真实实体的概率,根据该概率对生成的实体候选进行过滤。
2、实体分类器模块(Entity Classifier Network,ECN),该模块目的是对检测器模块得到的实体候选按照预定义的实体类别集进行实体类别判别。其以每个生成的实体候选和表示作为输入,输出其实体类别。该模块由实体候选编码层和实体类别分类层两个子模块组成,其中:
实体候选编码层,该子模块的作用是将实体候选表示转化成固定维度的特征向量。其以每个生成的实体候选及其背景表示作为输入,输出其对应的实体类别。
实体类别分类层,该子模块对每个实体候选进行实体类别判别,其以是实体候选的实体特征向量作为输入,预测实体属于各个实体类别的概率,以最高概率确定实体类别。
下面通过一个示例来对上述模型执行实体识别方法的整体流程进行说明,如图9a所示,输入句子“The director...Geographic”(详见图9a所示),实体识别的流程可以包括以下几个步骤:
步骤1,将句子输入到实体候选检测器模块,其利实体边界词检测层得到句子中可能的实体边界词,如“t1:The”、“t5:National”、“t11:Diseases”、“t13:National”和“t14:Geographic”。
步骤2,利用实体建议窗口生成层分别以各边界词为锚点词生成实体建议窗口,当以“t5:National”为锚点词时对应的实体建议窗口为“[t5,t5]:National”、“[t4,t6]:theNational Institute”,当以“t14:Geographic”为锚点词时对应的实体建议窗口为“[t14,t14]:National”、“[t13,t15]:National Geographic.”等。这里以两个预定义两个宽度分别为1和3的实体建议(Entity Proposals)为例。
步骤3,然后将实体建议窗口[t5,t5]、[t4,t6]、[t14,t14]、[t13,t15]输入到实体候选识别层,其分别作为基准调整预测对应得到实体候选区域[t5,t11]、[t1,t11]、[t13,t14]和[t13,t14]。
步骤4,将检测实体候选输入到实体候选过滤层对错误实体和重复实体进行过滤,得到[t5,t11]、[t1,t11]、[t13,t14]
步骤5:对过滤后的实体候选[t5,t11]、[t1,t11]、[t13,t14]分别判别其所属的实体类别,输入到实体分类器。最后得到实体及其类别“[t5,t11]:PERSON”、“[t1,t11]:ORGNIZATION”、“[t13,t14]:ORGNIZATION”。
与现有技术相比,本申请实施例的方案(图9b)与现有技术(图9c)最大的区别在于实体候选生成模块。如图所示,主要有两个区别点:
第一、不同的预定义实体建议(Entity Proposal)窗口数目。我们方法仅仅需要两个不同的实体建议窗口(即R=1,3,宽度为1和3的两种实体建议窗口)。但是,现有方法通常需要定义多种实体建议窗口(即R=1,2,3,4,5,6)来生成不同粒度的实体。
第二、预定义实体建议窗口的使用方式不同。我们的方法用生成的实体建议窗口作为实体候选基准去动态预测多粒度实体候选,而现有技术是直接采用实体建议窗口作为实体候选。
下面分别对本申请实施例上述模型的各个模块进行详细说明。
在本申请的一种可选实施例中,获取待识别文本序列对应的至少一个实体边界词,包括:
将待识别文本序列中所有词分别作为实体边界词;或者,基于待识别文本序列中词的背景表示向量,获取待识别文本序列中的词作为实体边界词的概率,并基于概率,确定待识别文本序列的实体边界词。
其中,将待识别文本序列中所有词分别作为实体边界词对应于实施例1中的方案,在其中将待识别文本序列中的每一个词都作为一个实体边界词,进而进行后续处理,确定出待识别文本序列的实体候选区域。而本实施例中,是从待识别文本序列中选取部分词作为实体边界词,进而进行后续处理,确定出待识别文本序列的实体候选区域。
具体地,可以通过实体边界词检测层获取待识别文本序列的实体边界词,即该模块用于检测输入文本中所有可能实体的边界词,并生成一个边界词序列。该模块的设计用于后续实体候选识别模块中去除非边界词表示,实现对边界注意力计算中Query(索引)矩阵和Key(键值)矩阵的压缩,加速实体候选识别模块的速度和降低计算成本。
如图10所示,给出了实体边界词检测层获取实体边界词的示意图,对于输入的句子“The director of…National Geographic.”,实体边界词检测层输出其实体边界词为{“t2:director”,“t5:National”,“t11:Diseases”,“t13:National”,“t14:Geographic”}。对于该模块,给定一个句子,该模块对每一个词ti将输出一个概率得分pi∈[0,1],表示该词属于边界词的概率。具体过程可以包括:
步骤1,对于每一个词ti,输入其背景表示向量ui∈Rd到一个全连接神经网络(FNN),得到一个数值vi,即vi=FNN(ui),其中FNN()的参数对所有词共享;
步骤2,通过Sigmoid激活函数将数值vi转化为概率值,即pi=Sigmoid(vi);
步骤3,根据概率值pi决定边界词,若给定边界词阈值α∈(0,1)(如可以设置为0.5),则,如果pi>α,那么该词属于边界词maski=1,否则该词不属于边界词maski=0;
步骤4,输出句子中所有实体边界词,即输入句子的实体边界词掩码序列mask。
具体来说,实体边界词检测是为了检测出所有可能作为嵌套实体边界词集合。一个实体的边界词包括其起始边界词和终止边界词。如图11a所示,检测得到的实体边界词分别为:{“t2:director”,“t5:National”,“t11:Diseases”,“t13:National”,“t14:Geographic”}。如图11b所示,检测得到的实体边界词分别为:{“t1:Edinburgh”,“t2:University”,“t3:Library”,“t7:Adam”,“t8:Ferguson”,“t9:Building”}。
进一步地,句子中的实体边界词可以被识别出来的原因,可以归为两个方面:
一方面,句子中的实体边界词通常存在一定的规律,可以通过一些规则匹配发现。实体边界词位置可以根据基于词典、词性、前缀、后缀等规则识别出来。例如:
·“…went to U.K…”,“U.K”一般是LOCATION实体的起始边界词;
·“…party went to…”,“party”一般是ORGNIZATION实体的终止边界词;
·“…director of the…”,“director”一般是PERSON实体的起始边界词;
·“#Noun Phrase tells”,“tells”词一般指示之前的词为一个PERSON的终止边界词,其中“#Noun Phrase”表示句子中的名词短语;
·如果一个词的前缀是小写字母,当前词的前缀是大写字母,那么当前词是一个实体的起始边界词。例如:“…the National Institute…”,“…to Adam FergusonBuilding…”;
·如果当前词的前缀是大写字母,当前词的下一个词的前缀是小写字母,那么当前词通常是一个实体的终止边界词位置,例如:“…Diseases tells…”,“…UniversityLibrary is…”;
·对于满足#Definite Article(可缩写为DT)+#Noun句法结构的短语,#Noun(可缩写为NN)对应的名词通常是一个实体的起始词位置,其中“#Definite Article”表示定冠词,“#Noun”表示名词,该句法结构即表示定冠词接名词,且在该句法结构中定冠词名词一般是一个实体的起始词,例如“The/DT director/NN…”中“The”为定冠词,其后接的名词“director”是一个实体的起始词。
另一方面,句子中的实体边界词存在一定的统计规律。如表2所示,给出了关于两个嵌套实体识别数据集ACE2004和ACE2005的统计结果,显示了实体不同位置出现的最频繁的词,以及命名实体识别的出现最频繁的词性规则。从表2中可以看到:
·一些词频繁作为实体的起始词,如“president”,“North”,“New”等;
·一些词频繁作为实体的终止词,如“country”,“company”,“party”等;
·根据文本的词性信息,许多实体边界可以通过词性规则发现,其中,“Determiner+Noun”表示限定词加名词,“Preposition+Noun”表示介词连接名词,“Preposition+Prper Noun”表示介词连接专有名词,“Verb+Noun”表示动词连接名词,“Noun+Verb”表示名词连接动词。
表2
在本申请的一种可选实施例中,基于实体边界词,获取待识别文本序列对应的实体建议区域,包括:
基于至少一个预设宽度,分别以实体边界词为锚点词,获取对应的至少一个预设宽度的实体建议区域。
具体地,可以通过实体建议生成层来获取实体建议区域,该模块可以通过两个预定义具有不同长度的实体建议窗口(即预设宽度),对句子中每个实体边界词生成对应的实体建议区域。这些生成的实体建议区域将被作为实体区域基准来动态的检测不同粒度的实体候选。其也将根据词序列的背景表示对每个实体建议区域进行编码。需要说明的是,该模块所选取的预设宽度可以为一个、两个或多个,可以理解的是,选取的预设宽度越少,得到的实体建议区域越少,后续计算量也越小。如图12a所示,为该模块获取实体建议区域的示意,举例来说,可以包括以下步骤:
步骤1,对给定句子利用实体建议窗口生成所有实体候选。
对于句子中每个词,生成长度1和3(即实体建议窗口为1和3)的两种不同的实体建议区域,如图12b所示,以实体边界词“t3:Library”作为锚点词,得到的实体建议区域(Proposal)如图所示,即“[t3,t3]:Library”(对应于预设宽度1,Proposal 1)、“[t2,t4]:University Library is”(对应于预设宽度3,Proposal 3)。表3显示了对于所有可能的实体边界词生成的实体建议区域。
以每个锚点词为中心生成两种对称的实体建议窗口,也可以利用其它非对称的形式,比如对于锚点词“t3:Library”,非对称窗口可以为[t3,t4],[t2,t5]。
一般来说,对于句子中词ti,可以生成R种不同长度的实体建议区域,R即生成实体建议区域时所选取的预设宽度的数量。事实上,两种宽度甚至一种宽度的建议(Proposal)窗口对于嵌套实体识别的就已经足够。
表3
锚点词 | 实体建议窗口(k=1) | 实体建议窗口(k=3) |
“t1:Edinburgh” | “[t1,t1]:Edinburgh” | “[t0,t2]:Edinburgh University” |
“t2:University” | “[t2,t2]:University” | “[t1,t3]:Edinburgh University Library” |
“t3:Library” | “[t3,t3]:Library” | “[t2,t4]:University Library is” |
“t7:Adam” | “[t7,t7]:Adam” | “[t6,t8]:to Adam Ferguson” |
“t8:Ferguson” | “[t7,t8]:Ferguson” | “[t7,t9]:Adam Ferguson Building” |
“t9:Building” | “[t9,t9]:Building” | “[t8,t10]:Ferguson Building” |
步骤2,通过在句子背景表示矩阵上滑动卷积操作得到所有实体边界词的实体建议区域表示。为在后续模块中利用生成的实体建议区域信息,需要其进行编码并得到对应的表示向量。
通过Proposal 1(即预设宽度为1)和Proposal 3(即预设宽度为3)生成关于锚点词的实体建议区域,本申请实施例引入一个局部一维卷积Conv1D对于每个生成的实体建议区域进行卷积操作,其输出作为其特征表示向量:
关于Proposal 1的实体建议区域表示:pi=Conv1D1(ui),
关于Proposal 3的实体建议区域表示:pi=Conv1D3([ui-1,ui,ui+1]),
其中,Conv1Dk表示核宽度为k的1维卷积操作,ui-1,ui,ui+1分别表示被第i个词的Proposal 3的实体建议区域覆盖的三个词ti-1,ti,ti+1的背景表示向量。
该方案用两个不同核宽度的卷积操作,来得到关于句子每个实体边界词的实体建议区域的背景表示向量。利用卷积的优点在于实体建议区域的背景表示向量可以并行计算得到。
本申请实施例提供的方案中仅采用两个实体建议窗口(即预设宽度)生成实体建议区域,即可进行后续的具有多层结构的嵌套实体识别,主要有以下几个方面的原因:
下面以图11b的示例进行说,通常情况下实体都有存在一个独有的边界词。通过这些边界词在两个实体建议窗口下可以得到所有实体区域,如表4所示(表中箭头方向表示实体候选区域预测的区域扩张方向),具体来说:
1、由于“t1:Edinburgh”是一个实体边界词,以该词作为锚点词对应的实体建议区域[t1,t1],[t0,t2].以这两个实体建议区域作为基准可以预测得到实体候选“Edinburgh”和“Edinburgh University”.
2、由于“t8:Ferguson”是一个实体边界词,以该词作为锚点词对应的实体建议区域为“[t8,t8]:Ferguson”,“[t7,t9]:Adam Ferguson Building”.以实体建议区域“[t8,t8]”作为基准通过预测可以得到实体候选[t7,t8](“Adam Ferguson”),以实体建议区域[t7,t9]作为基准通过预测可以得到实体候选“[t7,t9]:Adam Ferguson Building”。
3、通过以上两个边界词操作,实体候选区域“[t1,t3]:Edinburgh UniversityLibrary”还没有被检测得到,但是该实体区域存在独有实体边界词“t3:Library”,其可以得到两个实体建议区域[t3,t3],[t2,t4].实体候选[t1,t3]可以通过这两个建议窗口之一作为基准获得。
表4
本申请实施例提供的方案中仅采用一个实体建议窗口(即预设宽度)生成实体建议区域,即可进行后续的具有多层结构的嵌套实体识别,主要有以下原因:
仍然以图11b为例,可以看出基本每个实体都具有一个独有的边界词。以各实体边界词作为锚点词生成实体建议区域就能够扩展到对应的实体候选区域上,如表5所示。采用更多的实体建议窗口可以帮助获得更稳定的模型表现。但是,定义许多实体建议区域也会带来额外的计算成本。因此,为了平衡模型预测表现和计算成本,可以仅选择两个实体建议窗口,如宽度为1的Proposal 1和和宽度为3的Proposal 3。
表5
在本申请的一种可选实施例中,基于实体建议区域,获取对应的实体候选区域,包括:
确定实体建议区域的锚点词的起始边界词候选和终止边界词候选;
在起始边界词候选中确定实体建议区域的起始边界词,在终止边界词候选中确定实体建议区域的终止边界词;
根据得到的起始边界词和终止边界词,确定出对应的实体候选区域。
其中,确定实体建议区域的锚点词的起始边界词候选和终止边界词候选,包括
将实体建议区域的锚点词以及位于该锚点词左侧的边界词确定为该锚点词的起始边界词候选;
将实体建议区域的锚点词以及位于该锚点词右侧的边界词确定为该锚点词的终止边界词候选。
其中,在起始边界词候选中确定实体建议区域的起始边界词,在终止边界词候选中确定实体建议区域的终止边界词,包括:
确定各起始边界词候选作为实体建议区域的起始边界词的第一概率,以及各终止边界词候选作为实体建议区域的终止边界词的第二概率;
基于第一概率确定实体建议区域的起始边界词,以及根据第二概率确定实体建议区域的终止边界词。
换言之,基于实体建议区域,获取对应的实体候选区域,包括:
基于实体建议区域覆盖的词的背景表示向量和对应的锚点词的背景表示向量,获取对应的组合向量;
获取待识别文本序列中实体边界词的背景表示向量与组合向量之间的相似度;
基于相似度,获取对应的实体候选区域。
其中,获取待识别文本序列中实体边界词的背景表示向量与组合向量之间的相似度,包括:
在欧式空间或双曲空间中,获取待识别文本序列中实体边界词的背景表示向量与组合向量之间的相似度。
其中,基于相似度,获取对应的实体候选区域,包括:
基于相似度,从待识别文本序列中实体建议区域的锚点词、以及位于锚点词左侧的实体边界词中,确定出对应的实体候选区域的起始边界词,从待识别文本序列中实体建议区域的锚点词、以及位于锚点词右侧的实体边界词中,确定出对应的实体候选区域的终止边界词;
基于起始边界词和终止边界词,确定出对应的实体候选区域。
具体来说,将待识别文本序列中实体建议区域的锚点词、以及位于锚点词左侧的实体边界词中对应的相似度最高的实体边界词,确定为对应的实体候选区域的起始边界词,将待识别文本序列中实体建议区域的锚点词。以及位于锚点词右侧的实体边界词中对应的相似度最高的实体边界词,确定为对应的实体候选区域的终止边界词;基于起始边界词和终止边界词,确定出对应的实体候选区域。
具体地,可以通过实体候选识别层来基于实体建议区域获取实体候选区域,该模块根据实体建议窗口动态的预测实体候选区域的边界词位置。其将生成所有实体候选及其背景表示。不同于现有方法,实体建议区域被作为获取实体候选区域基准,而不是直接作为实体候选区域。
如图13a所示,该模块用自注意力机制预测所有实体候选的边界词位置,举例来说,可以包括以下步骤:
步骤1,获取键值(Key)矩阵变换和索引(Query)矩阵变换:通过两个不同的线性变换对待识别文本的背景表示矩阵进行变换,得到四个新的句子表示(每个句子表示是一个矩阵,包含所有词的背景表示特征向量),即1)键值矩阵表示(起始和终止),关于起始边界和终止边界词的特征表示,每个键值矩阵包含每个词关于键值的特征向量。2)索引矩阵表示(k=1,3),即每个词关于两种不同的建议窗口的特征表示;
步骤2,实体建议感知(Proposal-aware)的索引矩阵(PQM),将索引矩阵表示(k=1,3)与来自实体建议窗口生成模块的不同建议窗口表示进行特征融合;
步骤3-4,快速和内存高效的边界注意力操作(Fast and Memory-efficientBoundary Attention,FMBA):计算每个锚点词与句子中所有词的注意力得分(归一化的内积得分)。为了避免标准自注意力的高计算成本和高内存消耗的问题,我们根据实体边界检测器得到的边界词掩码(mask)过滤掉键值矩阵和实体建议感知的(Proposal-aware)索引表示(PQM)中不可能作为边界的部分;
步骤5,根据边界注意力得分决定实体候选的边界词位置。
该模块采用实体建议区域作为基准去动态预测实体候选区域。设计了一种快速且内存高效的边界注意力操作进行实体候选边界预测,在边界注意力操作中仅仅考虑可能实体边界词,而非输入句子中的所有词。
图13b显示出实体候选识别模块的详细结构,该模块主要涉及5部分的计算,如图中数字编号所示,下面给出五部分的计算过程:
1、键值矩阵表示和索引矩阵表示,计算:
起始键值:Kl=WlU;
终止键值:Kr=WrU;
索引(k=1):Q1=W1U;
索引(k=3):Q3=W2U。
其中,Wl,Wr,W1,W2为权重参数矩阵,U为来自句子编码层的背景表示。
2、实体建议感知的索引矩阵(Proposal-aware Query Matrix,PQM),以实体建议窗口作为实体区域基准去预测实体候选边界。计算关于Proposal 1的实体建议感知索引矩阵和关于Proposal 3的实体建议感知索引矩阵:
Q1←Q1+Conv1D1(U);
Q2←Q2+Conv1D3(U)。
3、压缩的键值矩阵和压缩的PQM:其计算包括两步骤:
1)将来自实体边界检测器的得到的边界掩码M与键值矩阵表示Kl,Kr以及实体建议感知的索引矩阵表示Q1和Q2
其中<·,·>表示两个向量的相似度得分计算,其可以采用欧式空间中的相似度量,也可以采用基于非欧式空间的相似度度量,如采用基于双曲空间(Hyperbolic Space)中双曲距离度量诱导的相似度,在可以欧式空间或双曲空间中,获取所述待识别文本序列中实体边界词的背景表示向量与所述组合向量之间的相似度,进而根据相似度获取边界得分。
得到的预测实体候选区域为[li,ri],li为其实边界词的位置,ri为终止边界词的位置。
进一步地,最直接的边界注意力操作具有自注意力操作其时间和内存复杂度为O(N2d),其中N是输入序列长度,d为K,Q的特征向量维度。该操作关于输入序列长度呈二次方关系,这导致高计算和高内存消耗成本,以至于该操作不能够很好的扩展到长文本序列。为了解决这些挑战问题,我们提出了一种快速和内存高效的边界注意力操作(FMBA)来计算实体候选的边界得分计算。
FMBA设计基于检测的边界词的稀疏注意力操作。如图13c所示,其首先考虑边界词来压缩索引和键值矩阵,然后计算边界注意力操作:
压缩键值矩阵和实体建议感知索引矩阵:由于FMBA为了找出每个实体候选的两个边界词位置,其仅仅需要计算边界词之间的注意力得分。我们可以根据边界词掩码过滤掉起始和终止键值矩阵Ks,Ke和索引矩阵Qk(k=1,2)中的非边界词部分,得到对应的压缩矩阵
通过压缩的键值矩阵和索引矩阵计算注意力得分:计算边界词上的代替假设输入句子中的可能的边界词的个数为FMBA的时间和内存复杂度为由于边界词通常远远少于句子序列长度其能够显著降低推断过程中边界注意力操作的计算成本和内存成本。
在在本申请的一种可选实施例中,基于实体候选区域,获取待识别文本序列的实体识别结果,包括:
对实体候选区域进行筛选,得到筛选后的实体候选区域;
对筛选后的实体候选区域进类别判别,得到待识别文本序列的实体识别结果。
其中,对实体候选区域进行筛选,得到筛选后的实体候选区域,包括:
基于实体候选区域覆盖的词的背景表示向量,获取对应的第一分类特征向量;
基于实体候选区域对应的第一分类特征向量,获取实体候选区域属于实体的概率;
基于实体候选区域属于实体的概率,获取筛选后的实体候选区域。
具体地,可以通过实体候选过滤层来对前一模块获取到的实体候选区域进行过滤,得到过滤后的实体候选区域,该模块同时并行的估计每个实体候选属于实体的概率,根据概率值对生成的实体候选进行过滤。如图14所示,该模块将过滤掉那些不可能为正确实体的实体候选。该模块首先对每个实体候选编码成固定维度的特征向量,然后将其输入到二元分类器判断实体候选是否属于真实实体。该模块包括实体候选编码层和实体候选分类层两个子模块,其中:
实体候选编码层将具有不同长度的所有实体候选都编码成固定维度特征向量。对于实体候选[li,ri],加上其对应的锚点词为ti,该模块采用三个成分对该实体候选进行编码,包括起始词特征向量终止词特征向量锚点词特征向量ui。实体候选[li,ri]编码的特征(即第一分类特征)表示为:
即三个特征向量的拼接;
实体候选分类层,一个具有两类Softmax的全连接层(FNN),用于决定实体候选的质量,对错误的实体候选进行过滤。实体候选的概率被定义为:
pi=Softmax(FNN(hi))
不同于现有技术采用CNN/LSTM对实体候选进行编码,该方案的实体候选编码层仅仅采用了实体候选的三个成分的拼接,即起始边界词、终止边界词和锚点词的特征向量(即背景表示向量),该操作非常高效且有利于加速模型推断。
其中,对筛选后的实体候选区域进类别判别,得到待识别文本序列的实体识别结果,包括:
基于筛选后的实体候选区域对应的起始边界词和终止边界词的背景表示向量,获取对应的第二分类特征向量;
基于筛选后的实体候选区域对应的第二分类特征向量进行类别判别,得到对应的实体识别结果。
具体地,可以通过实体分类器模块来对筛选后的实体候选区域进行类别判别,该模块如图15所示,首先对每个过滤后的实体候选(即筛选后的实体候选区域)进行编码,并分类称不同的预定义实体类别,将决定最终的预测实体。
该模块对每个过滤后的实体候选进行编码得到固定维度的特征向量,然后将其输入到具有Softmax输出层的全连接网络进行实体类别判别。其由两个子模块组成:
实体候选编码层:对具有不同长度的实体候选编码成固定维度的特征向量。对于每个实体候选区间m=[l,r],其特征向量被定义为两个边界词特征向量的拼接:
m=Concat(ul,ur)。
该编码层结构简单高效,其他现有方法如CNN/LSTM也可以用来作为实体候选的编码层。
实体类别分类层:根据实体候选编码层得到的特征向量m对实体候选类别判别。实体类别分类器被定义为:
p=Softmax(FNN(m)))
其中全连接神经网络(FNN)可以为
FNN(m)=W2ReLU(W1m),
这里W1∈R2D×H,W2∈RC×D为需要学习的网络参数,D是预定义的实体类别数目,其包括非实体类别None,ReLU()为网络的激活函数。
不同于现有技术方法,该方案根据来自实体候选编码层的实体候选表示对每个实体候选进行编码,而不是直接根据原始词序列和输入句子进行实体候选编码。这种端到端的方式不仅能够降低误差传递也可以加速在线模型推断。除此之外,该模块仅仅采用了实体候选的两个边界词的特征向量拼接作为其实体特征向量,该操作高效,不需要额外的计算成本,这加速了模型的推断。
另外,在实体候选识别层进行边界注意力操作,即进行相似度计算时可以在双曲空间中进行,如图16所示,基于双曲(Hyperbolic)距离诱导的相似度得分的实体边界检测。
图16中给出了嵌套实体识别的双曲实体建议网络架构,其包括两个神经网络模块:实体候选检测器模块和双曲实体分类器模块。实体候选检测器模块的目的是识别可能的实体区域,其通过在双曲空间中计算多头注意力得分。然后生成实体区域候选,该模块可以进一步分为三个模块,即句子编码层(即图中句子编码器)、基于双曲空间的候选生成层(即图中基于双曲空间的候选生成器)和实体候选分类层(即图中实体候选分类器)。更具体的来说,句子编码器可以通过双向长短期记忆模块(Bi-LSTM)、卷积神经网络(CNN)和预训练语言模型(如BERT)得到每个词的背景表示。候选生成器是根据不同头的注意力得分(即相似度)生成实体区域候选,与在欧式空间中计算多头注意力得分不同,这里将在双曲空间中计算锚点词与各个词之间的相似度,用双曲近距离诱导的相似度代替欧式空间的相似度计算,采用在双曲空间中计算的方式将有助于模型学习具有层次结构关系的词对齐。实体候选分类层,是一个二分类神经网络层,判别生成的实体候选区域属于实体类别的概率,并根据该概率对区域候选进行过滤,该层可以在欧式空间中计算也可以在双曲空间中计算。对生成的实体区域候选进行过滤。双曲实体分类模块目的是对检测的实体区域候选根据预定义的实体类别进行类别判别,该模块由两部分组成,首先是实体候选编码层,将过滤后的实体候选在双曲空间中进行编码,第二个模块是实体候选分类层,对之前步骤得到的过滤后的实体区域候选分类到合适的实体类别。
需要说明的是,该网络在训练过程中同时采用正实体候选(如图中m1、m3、m4、m8)和负实体候选如图中(m2、m5、m6、m7)作为训练样本,其中,正实体候选可以理解为经筛选后的实体候选,即其属于实体,其标签为具体的实体类型,而负实体候选不属于实体,通过正实体候选和负实体候选分别进行训练得到实体候选编码层的网络参数共享。在训练过程中加入负实体候选,有助于提升双曲实体分类器的对实体类别的判别能力。
可以定义一种双曲距离诱导相似度计算函数:
K(qh,kh)=-αhdc(qh,kh)2+βh
相应地,对于实体类别分类器。由于嵌套实体中存在显著的概念层次结构,我们可以在双曲空间里定义一个分类器。首先将预定义的类别集合C={c1,c2,…,cT}+{None_Type}映射到一个特征向量空间中,类别c对应的嵌入向量定义为yc∈RD。分类器的定义如下:假设hm为给定实体候选m的特征表示,其分类器定义为
其中em∈RD表示实体候选m的通过一个非线性变换FNN()得到的D维的特征表示向量,即
em=FNN(hm)
其中,yc表示类别c∈C的嵌入向量。pm,c表示实体候选m关于类别c的概率,模型预测时取概率最大的类别作为预测实体类别。
基于双曲空间的实体类别判别层:实际上就是将欧式空间的实体类别判别层中参数、运算、相似度替换成双曲空间中的参数、运算、相似度。给定实体候选m,那么该实体候选的表示向量:
其中K(em,yc)为双曲距离诱导相似度。注意这里不同于欧式空间的中内积运算。
实施例3
在一种可选的实施例中,基于至少一个实体边界词,获取待识别文本序列中的至少一个实体候选区域,包括:从待识别文本序列中,获取与实体边界词相邻的预设数量的实体边界词;获取实体边界词的背景表示向量,分别与对应的相邻的预设数量的实体边界词的背景表示向量之间的相似度;基于相似度,获取对应的实体候选区域。其中,基于相似度,从待识别文本序列的实体边界词、以及实体边界词的相邻的预设数量的实体边界词中,分别确定出对应的实体候选区域的起始边界词和终止边界词;基于起始边界词和终止边界词,确定对应的实体候选区域。具体来说,在该方案中,在获取实体边界词后,直接基于实体边界词确定实体候选区域的起始边界词和终止边界,进而得出对应的实体候选区域。
如图17所示,执行该方案的模型与前两个实施例中模型的区别主要在实体候选检测器模块,该方案中的实体候选检测器模块由实体边界词检测层、最邻近词发现层和实体候选识别层三个模块组成,其中:
1、实体边界词检测层,该模块检测输入文本序列中可能的实体边界词,其与前两个实施例中的实体边界词检测层保持一致。
2、最邻近词发现层,该模块以检测的实体边界词作为锚点词,然后利用局部敏感哈希(Local Sensitive Hash)技术找出每个实体边界词与其最邻近的前K个词,这里K<<L,L为待识别文本序列长度。
3、实体候选识别层,计算每个锚点词与其最邻近前K个实体边界词的相似度得分,将锚点词与相似度得分最大的邻近实体边界词组成实体候选的边界词对,即起始边界词和终止边界词;
重复最邻近词发现层和实体候选识别层的执行过程H次(如H=2)。最终收集所有实体候选并输出。
该方案与实施例2中的方案的主要区别在于的实体候选检测器模块:
不需要预定义实体建议窗口,其用最邻近词发现模块取代了实体候选检测器中的实体候选生成器;
低计算复杂度,该方案仅仅需要计算锚点词和局部敏感哈希技术选择的前K个边界词的相似度得分,其计算复杂度为O(Nlog(K)),通常K<<N。
需要说明的是,本申请提供的实体识别方案可以很好的适用于嵌套实体的识别,也可以适用于传统的费嵌套实体的识别。该方案可以适用于以下需要进行嵌套试题识别的应用场景:
1、智慧识屏(Smart Screen)
智慧识屏是一种面向手机的智能化解决方案,用户在聊天、阅读、浏览图片时,可以用手长按屏幕文本内容区域时就可以触发该功能,其可以自动抽取文本中的实体、关键词等信息,如人名、地名、位置、电话号码等,然后对其进行信息展开、应用服务链接或兴趣推荐等,帮助用户实现“一步即达(One Step)”的目的。图18a展示了嵌套实体识别在智慧视屏的潜在应用例子。
2、关于新闻阅读的阅读增强
当用户阅读新闻文本时,对于新闻中提到的相关实体背景信息可能不熟悉,此时阅读增强功能可以自动抽取文本中相关实体,并将抽取的实体与相关实体介绍网页链接,该功能可以帮助用户快速跳转到感兴趣的实体网页,如图18b所示。
3、关于菜单的阅读增强
消费者在阅读菜单时,需要在理解菜名基础上进行点菜,如理解和想象菜名对应的原料成分、菜品等。但是我们在阅读菜单时,常会遇到没吃过的或不熟悉的成分,此时应用阅读增强工具可以用来识别菜名中的成分(即嵌套实体),并链接到相关实物和成分介绍上,帮助我们理解,如图18c所示。
4、图像打标签(Image Tagging)
图像打标签是一种可以帮助用户快速进行图像标签编辑的工具。类似功能已经应用在许多智能手机中。当用户想对图像和截图添加标签,该工具可以自动从图像中文本内容抽取一些关键短语,提供给用户作为候选进行选择和编辑。如图18d所示,可以用本申请提供的嵌套实体识别技术从其文本内容中自动抽取这些具有不同粒度的关键短语,只需要增加一个实体重要性排序即可。
5、知识图谱(Knowledge Graph)构建
知识图谱是一种在问答***、推荐***、搜索引擎等领域中取得了广泛应用。这对自动构建大规模完备的知识图谱是特别重要的。嵌套实体识别可以为知识图谱补全任务提供更加丰富的实体关系。例如在图18e中,首先,基于句子中的嵌套实体识别结果,对句子进行关系提取(Relation extraction),获取句子中各实体的关系。然后,在上一步的基础上构建知识图谱(KG completion),最终得到知识图谱(Knowledge Graph,KG)。
如果嵌套实体没有被发现,相关的实体关系就会被丢失,如:
hasLocation(Adam Ferguson Building,Edinburgh);
如果这些嵌套实体都被发现,就可以得到更多的额外实体,如:
partOf(Edinburgh University Library,Edinburgh University);
hasLocation(Edinburgh University,Edinburgh)。
图19为本申请实施例提供的一种实体识别装置的结构框图,如图19所示,该装置1800可以包括:实体边界词获取模块1801、实体候选区域获取模块1802和实体识别结果获取模块1803,其中:
实体边界词获取模块1801用于获取待识别文本序列对应的至少一个实体边界词;
实体候选区域获取模块1802用于基于所述至少一个实体边界词,获取所述待识别文本序列中的至少一个实体候选区域;
实体识别结果获取模块1803用于基于实体候选区域,获取待识别文本序列的实体识别结果。
本申请实施例提供的方案,相较于现有技术,在不增加实体候选区域数量的前提下,即可提高实体候选区域对待识别文本序列中实体的覆盖率,降低了计算的复杂程度。
在本申请的一种可选实施例中,实体边界词获取模块具体用于:
将待识别文本序列中所有词分别作为实体边界词;或者,
基于待识别文本序列中词的背景表示向量,获取待识别文本序列中的词作为实体边界词的概率,并基于概率,确定待识别文本序列的实体边界词。
在本申请的一种可选实施例中,实体候选区域获取模块具体用于:
基于实体边界词,获取待识别文本序列对应的实体建议区域;
基于实体建议区域,获取对应的实体候选区域。
在本申请的一种可选实施例中,实体候选区域获取模块进一步用于:
基于至少一个预设宽度,分别以实体边界词为锚点词,获取对应的至少一个预设宽度的实体建议区域。
在本申请的一种可选实施例中,实体候选区域获取模块进一步用于:
基于实体建议区域覆盖的词的背景表示向量和对应的锚点词的背景表示向量,获取对应的组合向量;
获取待识别文本序列中实体边界词的背景表示向量与组合向量之间的相似度;
基于相似度,获取对应的实体候选区域。
在本申请的一种可选实施例中,实体候选区域获取模块进一步用于:
在欧式空间或双曲空间中,获取待识别文本序列中实体边界词的背景表示向量与组合向量之间的相似度。
在本申请的一种可选实施例中,实体候选区域获取模块进一步用于:
基于相似度,从待识别文本序列中实体建议区域的锚点词、以及位于锚点词左侧的实体边界词中,确定出对应的实体候选区域的起始边界词,从待识别文本序列中实体建议区域的锚点词、以及位于锚点词右侧的实体边界词中,确定出对应的实体候选区域的终止边界词;
基于起始边界词和终止边界词,确定出对应的实体候选区域。
在本申请的一种可选实施例中,实体候选区域获取模块进一步用于:
将实体建议区域的宽度作为卷积核宽度,对该实体建议区域覆盖的词的背景表示向量进行卷积处理,得到对应的特征向量;
基于实体建议区域覆盖的词所对应的特征向量和对应的锚点词的背景表示向量,获取对应的组合向量。
在本申请的一种可选实施例中,实体候选区域获取模块进一步用于:
确定实体建议区域的锚点词的起始边界词候选和终止边界词候选;
在起始边界词候选中确定实体建议区域的起始边界词,在终止边界词候选中确定实体建议区域的终止边界词;
根据得到的起始边界词和终止边界词,确定出对应的实体候选区域。
在本申请的一种可选实施例中,实体候选区域获取模块进一步用于:
将实体建议区域的锚点词以及位于该锚点词左侧的边界词确定为该锚点词的起始边界词候选;
将实体建议区域的锚点词以及位于该锚点词右侧的边界词确定为该锚点词的终止边界词候选。
在本申请的一种可选实施例中,实体候选区域获取模块进一步用于:
确定各起始边界词候选作为实体建议区域的起始边界词的第一概率,以及各终止边界词候选作为实体建议区域的终止边界词的第二概率;
基于第一概率确定实体建议区域的起始边界词,以及根据第二概率确定实体建议区域的终止边界词。
在本申请的一种可选实施例中,实体识别结果获取模块具体用于:
对实体候选区域进行筛选,得到筛选后的实体候选区域;
对筛选后的实体候选区域进类别判别,得到待识别文本序列的实体识别结果。
在本申请的一种可选实施例中,实体识别结果获取模块进一步用于:
基于实体候选区域覆盖的词的背景表示向量,获取对应的第一分类特征向量;
基于实体候选区域对应的第一分类特征向量,获取实体候选区域属于实体的概率;
基于实体候选区域属于实体的概率,获取筛选后的实体候选区域。
在本申请的一种可选实施例中,实体识别结果获取模块进一步用于:
基于筛选后的实体候选区域对应的起始边界词和终止边界词的背景表示向量,获取对应的第二分类特征向量;
基于筛选后的实体候选区域对应的第二分类特征向量进行类别判别,得到对应的实体识别结果。
在本申请的一种可选实施例中,实体识别结果获取模块具体用于:
基于实体候选区域对应的起始边界词和终止边界词的背景表示向量,获取对应的第三分类特征向量;
基于实体候选区域对应的第三分类特征向量进行类别判别,得到对应的实体识别结果。
在本申请的一种可选实施例中,实体候选区域获取模块具体用于:
从待识别文本序列中,获取与实体边界词相邻的预设数量的实体边界词;
获取实体边界词的背景表示向量,分别与对应的相邻的预设数量的实体边界词的背景表示向量之间的相似度;
基于相似度,获取对应的实体候选区域。
在本申请的一种可选实施例中,实体候选区域获取模块进一步用于:
基于相似度,从待识别文本序列的实体边界词、以及实体边界词的相邻的预设数量的实体边界词中,分别确定出对应的实体候选区域的起始边界词和终止边界词;
基于起始边界词和终止边界词,确定对应的实体候选区域。
基于相同的原理,本申请实施例还提供了一种电子设备,该电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该计算机程序时,实现本申请任一可选实施例中所提供的方法,具体可实现如下情况:
获取待识别文本序列对应的至少一个实体边界词;基于至少一个实体边界词,获取待识别文本序列中的至少一个实体候选区域;基于实体候选区域,获取待识别文本序列的实体识别结果。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本申请任一实施例所示的方法。
可以理解的是,介质中存储的可以是配置管理数据库的校验方法对应的计算机程序。
图20中示出了本申请实施例所适用的一种电子设备的结构示意图,如图20所示,图20所示的电子设备1900包括:处理器1901和存储器1903。其中,处理器1901和存储器1903相连,如通过总线1902相连。进一步地,电子设备1900还可以包括收发器1904,电子设备1900可以通过收发器1904与其他电子设备进行数据的交互。需要说明的是,实际应用中收发器1904不限于一个,该电子设备1900的结构并不构成对本申请实施例的限定。
其中,处理器1901应用于本申请实施例中,可以用于实现图19所示的实体识别装置的功能。
处理器1901可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器1901也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线1902可包括一通路,在上述组件之间传送信息。总线1902可以是PCI总线或EISA总线等。总线1902可以分为地址总线、数据总线、控制总线等。为便于表示,图20中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器1903可以是ROM或可存储静态信息和指令的其他类型的静态存储设备,RAM或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM、CD-ROM或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器1903用于存储执行本申请方案的应用程序代码,并由处理器1901来控制执行。处理器1901用于执行存储器1903中存储的应用程序代码,以实现图19所示实施例提供的实体识别装置的动作。
本申请实施例中所提供的装置,可以通过AI模型来实现多个模块中的至少一个模块。可以通过非易失性存储器、易失性存储器和处理器来执行与AI相关联的功能。
该处理器可以包括一个或多个处理器。此时,该一个或多个处理器可以是通用处理器,例如中央处理单元(CPU)、应用处理器(AP)等、或者是纯图形处理单元,例如,图形处理单元(GPU)、视觉处理单元(VPU)、和/或AI专用处理器,例如神经处理单元(NPU)。
该一个或多个处理器根据存储在非易失性存储器和易失性存储器中的预定义的操作规则或人工智能(AI)模型来控制对输入数据的处理。通过训练或学习来提供预定义的操作规则或人工智能模型。
这里,通过学习来提供指的是通过将学习算法应用于多个学习数据来得到预定义的操作规则或具有期望特性的AI模型。该学习可以在其中执行根据实施例的AI的装置本身中执行,和/或可以通过单独的服务器/***来实现。
该AI模型可以包含多个神经网络层。每一层具有多个权重值,一个层的计算是通过前一层的计算结果和当前层的多个权重来执行的。神经网络的示例包括但不限于卷积神经网络(CNN)、深度神经网络(DNN)、循环神经网络(RNN)、受限玻尔兹曼机(RBM)、深度信念网络(DBN)、双向循环深度神经网络(BRDNN)、生成对抗网络(GAN)、以及深度Q网络。
学习算法是一种使用多个学习数据训练预定目标装置(例如,机器人)以使得、允许或控制目标装置进行确定或预测的方法。该学习算法的示例包括但不限于监督学习、无监督学习、半监督学习、或强化学习。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的计算机可读介质被电子设备执行时实现的具体方法,可以参考前述方法实施例中的对应过程,在此不再赘述。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (20)
1.一种实体识别方法,其特征在于,包括:
获取待识别文本序列对应的至少一个实体边界词;
基于所述至少一个实体边界词,获取所述待识别文本序列中的至少一个实体候选区域;
基于实体候选区域,获取所述待识别文本序列的实体识别结果。
2.根据权利要求1所述的方法,其特征在于,所述获取待识别文本序列对应的至少一个实体边界词,包括:
将所述待识别文本序列中所有词分别作为实体边界词;或者,
基于所述待识别文本序列中词的背景表示向量,获取所述待识别文本序列中的词作为实体边界词的概率,并基于所述概率,确定所述待识别文本序列的实体边界词。
3.根据权利要求1或2所述的方法,其特征在于,所述基于所述至少一个实体边界词,获取所述待识别文本序列中的至少一个实体候选区域,包括:
基于所述实体边界词,获取所述待识别文本序列对应的实体建议区域;
基于实体建议区域,获取对应的实体候选区域。
4.根据权利要求3所述的方法,其特征在于,所述基于所述实体边界词,获取所述待识别文本序列对应的实体建议区域,包括:
基于至少一个预设宽度,分别以所述实体边界词为锚点词,获取对应的至少一个预设宽度的实体建议区域。
5.根据权利要求4所述的方法,其特征在于,所述基于实体建议区域,获取对应的实体候选区域,包括:
基于实体建议区域覆盖的词的背景表示向量和对应的锚点词的背景表示向量,获取对应的组合向量;
获取所述待识别文本序列中实体边界词的背景表示向量与所述组合向量之间的相似度;
基于相似度,获取对应的实体候选区域。
6.根据权利要求5所述的方法,其特征在于,所述获取所述待识别文本序列中实体边界词的背景表示向量与所述组合向量之间的相似度,包括:
在欧式空间或双曲空间中,获取所述待识别文本序列中实体边界词的背景表示向量与所述组合向量之间的相似度。
7.根据权利要求5所述的方法,其特征在于,所述基于相似度,获取对应的实体候选区域,包括:
基于所述相似度,从所述待识别文本序列中实体建议区域的锚点词、以及位于锚点词左侧的实体边界词中,确定出对应的实体候选区域的起始边界词,从所述待识别文本序列中实体建议区域的锚点词、以及位于锚点词右侧的实体边界词中,确定出对应的实体候选区域的终止边界词;
基于所述起始边界词和所述终止边界词,确定出对应的实体候选区域。
8.根据权利要求5所述的方法,其特征在于,所述基于实体建议区域覆盖的词的背景表示向量和对应的锚点词的背景表示向量,获取对应的组合向量,包括:
将实体建议区域的宽度作为卷积核宽度,对该实体建议区域覆盖的词的背景表示向量进行卷积处理,得到对应的特征向量;
基于实体建议区域覆盖的词所对应的特征向量和对应的锚点词的背景表示向量,获取对应的组合向量。
9.如权利要求4所述的方法,其特征在于,所述基于实体建议区域,获取对应的实体候选区域,包括:
确定实体建议区域的锚点词的起始边界词候选和终止边界词候选;
在起始边界词候选中确定实体建议区域的起始边界词,在终止边界词候选中确定实体建议区域的终止边界词;
根据得到的起始边界词和终止边界词,确定出对应的实体候选区域。
10.如权利要求9所述的方法,其特征在于,确定实体建议区域的锚点词的起始边界词候选和终止边界词候选,包括
将实体建议区域的锚点词以及位于该锚点词左侧的边界词确定为该锚点词的起始边界词候选;
将实体建议区域的锚点词以及位于该锚点词右侧的边界词确定为该锚点词的终止边界词候选。
11.如权利要求9所述的方法,其特征在于,在起始边界词候选中确定实体建议区域的起始边界词,在终止边界词候选中确定实体建议区域的终止边界词,包括:
确定各起始边界词候选作为实体建议区域的起始边界词的第一概率,以及各终止边界词候选作为实体建议区域的终止边界词的第二概率;
基于所述第一概率确定实体建议区域的起始边界词,以及根据所述第二概率确定实体建议区域的终止边界词。
12.根据权利要求1-11任一项所述方法,其特征在于,所述基于实体候选区域,获取所述待识别文本序列的实体识别结果,包括:
对实体候选区域进行筛选,得到筛选后的实体候选区域;
对所述筛选后的实体候选区域进类别判别,得到所述待识别文本序列的实体识别结果。
13.根据权利要求12所述的方法,其特征在于,所述对实体候选区域进行筛选,得到筛选后的实体候选区域,包括:
基于实体候选区域覆盖的词的背景表示向量,获取对应的第一分类特征向量;
基于实体候选区域对应的第一分类特征向量,获取实体候选区域属于实体的概率;
基于实体候选区域属于实体的概率,获取筛选后的实体候选区域。
14.根据权利要求13或14所述的方法,其特征在于,所述对所述筛选后的实体候选区域进类别判别,得到所述待识别文本序列的实体识别结果,包括:
基于筛选后的实体候选区域对应的起始边界词和终止边界词的背景表示向量,获取对应的第二分类特征向量;
基于筛选后的实体候选区域对应的第二分类特征向量进行类别判别,得到对应的实体识别结果。
15.根据权利要求1-11任一项所述方法,其特征在于,所述基于实体候选区域,获取所述待识别文本序列的实体识别结果,包括:
基于实体候选区域对应的起始边界词和终止边界词的背景表示向量,获取对应的第三分类特征向量;
基于实体候选区域对应的第三分类特征向量进行类别判别,得到对应的实体识别结果。
16.根据权利要求1或2所述的方法,其特征在于,所述基于所述至少一个实体边界词,获取所述待识别文本序列中的至少一个实体候选区域,包括:
从所述待识别文本序列中,获取与实体边界词相邻的预设数量的实体边界词;
获取所述实体边界词的背景表示向量,分别与对应的相邻的预设数量的实体边界词的背景表示向量之间的相似度;
基于相似度,获取对应的实体候选区域。
17.根据权利要求16所述的方法,其特征在于,所述基于相似度,获取对应的实体候选区域,包括:
基于所述相似度,从所述待识别文本序列的实体边界词、以及实体边界词的相邻的预设数量的实体边界词中,分别确定出对应的实体候选区域的起始边界词和终止边界词;
基于所述起始边界词和所述终止边界词,确定对应的实体候选区域。
18.一种实体识别装置,其特征在于,包括:
实体边界词获取模块,用于获取待识别文本序列对应的至少一个实体边界词;
实体候选区域获取模块,用于基于所述至少一个实体边界词,获取所述待识别文本序列中的至少一个实体候选区域;
实体识别结果获取模块,用于基于实体候选区域,获取所述待识别文本序列的实体识别结果。
19.一种电子设备,其特征在于,包括存储器和处理器;
所述存储器中存储有计算机程序;
所述处理器,用于执行所述计算机程序以实现权利要求1至17中任一项所述的方法。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至17中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2021/008223 WO2022005188A1 (en) | 2020-07-01 | 2021-06-30 | Entity recognition method, apparatus, electronic device and computer readable storage medium |
US17/715,436 US20220245347A1 (en) | 2020-07-01 | 2022-04-07 | Entity recognition method, apparatus, electronic device and computer readable storage medium |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010628132 | 2020-07-01 | ||
CN2020106281324 | 2020-07-01 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113886571A true CN113886571A (zh) | 2022-01-04 |
Family
ID=79010179
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110624434.9A Pending CN113886571A (zh) | 2020-07-01 | 2021-06-04 | 实体识别方法、装置、电子设备及计算机可读存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220245347A1 (zh) |
CN (1) | CN113886571A (zh) |
WO (1) | WO2022005188A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114372470A (zh) * | 2022-03-22 | 2022-04-19 | 中南大学 | 基于边界检测和提示学习的中文法律文本实体识别方法 |
CN114462391A (zh) * | 2022-03-14 | 2022-05-10 | 和美(深圳)信息技术股份有限公司 | 基于对比学习的嵌套实体识别方法和*** |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114118093B (zh) * | 2022-01-27 | 2022-04-15 | 华东交通大学 | 一种扁平化标记增强的嵌套命名实体识别方法与*** |
CN115098617A (zh) * | 2022-06-10 | 2022-09-23 | 杭州未名信科科技有限公司 | 三元组关系抽取任务的标注方法、装置、设备及存储介质 |
WO2024021343A1 (zh) * | 2022-07-29 | 2024-02-01 | 苏州思萃人工智能研究所有限公司 | 自然语言处理方法、计算机设备、可读存储介质和程序产品 |
CN115905456B (zh) * | 2023-01-06 | 2023-06-02 | 浪潮电子信息产业股份有限公司 | 一种数据识别方法、***、设备及计算机可读存储介质 |
CN116757216B (zh) * | 2023-08-15 | 2023-11-07 | 之江实验室 | 基于聚类描述的小样本实体识别方法、装置和计算机设备 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7216073B2 (en) * | 2001-03-13 | 2007-05-08 | Intelligate, Ltd. | Dynamic natural language understanding |
US7865356B2 (en) * | 2004-07-15 | 2011-01-04 | Robert Bosch Gmbh | Method and apparatus for providing proper or partial proper name recognition |
US20090249182A1 (en) * | 2008-03-31 | 2009-10-01 | Iti Scotland Limited | Named entity recognition methods and apparatus |
US9317498B2 (en) * | 2014-05-23 | 2016-04-19 | Codeq Llc | Systems and methods for generating summaries of documents |
US10146853B2 (en) * | 2015-05-15 | 2018-12-04 | International Business Machines Corporation | Determining entity relationship when entities contain other entities |
CN107229609B (zh) * | 2016-03-25 | 2021-08-13 | 佳能株式会社 | 用于分割文本的方法和设备 |
US10303771B1 (en) * | 2018-02-14 | 2019-05-28 | Capital One Services, Llc | Utilizing machine learning models to identify insights in a document |
AU2019278845B2 (en) * | 2018-05-21 | 2024-06-13 | Leverton Holding Llc | Post-filtering of named entities with machine learning |
-
2021
- 2021-06-04 CN CN202110624434.9A patent/CN113886571A/zh active Pending
- 2021-06-30 WO PCT/KR2021/008223 patent/WO2022005188A1/en active Application Filing
-
2022
- 2022-04-07 US US17/715,436 patent/US20220245347A1/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114462391A (zh) * | 2022-03-14 | 2022-05-10 | 和美(深圳)信息技术股份有限公司 | 基于对比学习的嵌套实体识别方法和*** |
CN114462391B (zh) * | 2022-03-14 | 2024-05-14 | 和美(深圳)信息技术股份有限公司 | 基于对比学习的嵌套实体识别方法和*** |
CN114372470A (zh) * | 2022-03-22 | 2022-04-19 | 中南大学 | 基于边界检测和提示学习的中文法律文本实体识别方法 |
CN114372470B (zh) * | 2022-03-22 | 2022-07-29 | 中南大学 | 基于边界检测和提示学习的中文法律文本实体识别方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2022005188A1 (en) | 2022-01-06 |
US20220245347A1 (en) | 2022-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113886571A (zh) | 实体识别方法、装置、电子设备及计算机可读存储介质 | |
CN109992782B (zh) | 法律文书命名实体识别方法、装置及计算机设备 | |
CN110969020B (zh) | 基于cnn和注意力机制的中文命名实体识别方法、***及介质 | |
JP5128629B2 (ja) | 品詞タグ付けシステム、品詞タグ付けモデルのトレーニング装置および方法 | |
CN111581961A (zh) | 一种中文视觉词汇表构建的图像内容自动描述方法 | |
CN113255320A (zh) | 基于句法树和图注意力机制的实体关系抽取方法及装置 | |
CN111985228B (zh) | 文本关键词提取方法、装置、计算机设备和存储介质 | |
WO2023179429A1 (zh) | 一种视频数据的处理方法、装置、电子设备及存储介质 | |
CN115269882B (zh) | 基于语义理解的知识产权检索***及其方法 | |
CN115081437B (zh) | 基于语言学特征对比学习的机器生成文本检测方法及*** | |
CN116610778A (zh) | 基于跨模态全局与局部注意力机制的双向图文匹配方法 | |
CN116304748B (zh) | 一种文本相似度计算方法、***、设备及介质 | |
CN114612767B (zh) | 一种基于场景图的图像理解与表达方法、***与存储介质 | |
CN114926835A (zh) | 文本生成、模型训练方法和装置 | |
CN114461890A (zh) | 分层多模态的知识产权搜索引擎方法与*** | |
CN115796182A (zh) | 一种基于实体级跨模态交互的多模态命名实体识别方法 | |
CN115098706A (zh) | 一种网络信息提取方法及装置 | |
CN112699685A (zh) | 基于标签引导的字词融合的命名实体识别方法 | |
WO2023173552A1 (zh) | 目标检测模型的建立方法、应用方法、设备、装置及介质 | |
CN110347853B (zh) | 一种基于循环神经网络的图像哈希码生成方法 | |
CN114444515A (zh) | 一种基于实体语义融合的关系抽取方法 | |
CN110852066B (zh) | 一种基于对抗训练机制的多语言实体关系抽取方法及*** | |
US20230394240A1 (en) | Method and apparatus for named entity recognition, and non-transitory computer-readable recording medium | |
US20240037335A1 (en) | Methods, systems, and media for bi-modal generation of natural languages and neural architectures | |
CN114637846A (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 |