CN111324749A - 一种实体分类方法、系统、及装置 - Google Patents
一种实体分类方法、系统、及装置 Download PDFInfo
- Publication number
- CN111324749A CN111324749A CN202010409782.XA CN202010409782A CN111324749A CN 111324749 A CN111324749 A CN 111324749A CN 202010409782 A CN202010409782 A CN 202010409782A CN 111324749 A CN111324749 A CN 111324749A
- Authority
- CN
- China
- Prior art keywords
- entity
- vector representation
- classified
- entity type
- vector
- 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 58
- 239000013598 vector Substances 0.000 claims abstract description 364
- 238000011156 evaluation Methods 0.000 claims abstract description 85
- 238000012549 training Methods 0.000 claims description 90
- 238000012545 processing Methods 0.000 claims description 25
- 238000013528 artificial neural network Methods 0.000 claims description 20
- 238000013145 classification model Methods 0.000 claims description 20
- 230000000306 recurrent effect Effects 0.000 claims description 19
- 238000004364 calculation method Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 description 26
- 238000010586 diagram Methods 0.000 description 12
- 230000004048 modification Effects 0.000 description 12
- 238000012986 modification Methods 0.000 description 12
- 238000004422 calculation algorithm Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 230000014509 gene expression Effects 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000006872 improvement Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000012935 Averaging Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- -1 array Substances 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000010977 jade Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- 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
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书实施例提供一种实体分类方法、系统及装置,该方法包括:获取待分类实体以及至少一个候选实体类型;确定至少一个候选实体类型各自对应的第一向量表示;确定与待分类实体相关的第二向量表示和至少一个第三向量表示,第二向量表示包括待分类实体的向量表示,至少一个第三向量表示与至少一个候选实体类型一一对应且与待分类实体的上下文相关;针对至少一个候选实体类型中的每一个:基于第二向量表示、该候选实体类型对应的第一向量表示以及该候选实体类型对应的第三向量表示,确定待分类实体与该候选实体类型之间的评估值,从而得到至少一个候选实体类型对应的评估值;基于至少一个候选实体类型对应的评估值,确定待分类实体的目标实体类型。
Description
技术领域
本说明书涉及数据处理领域,特别涉及一种实体分类方法、系统、及装置。
背景技术
实体分类(Type Classification),可以是指将上下文中的一个实体(Entity)(或被称为实体提及,Entity Mention)分类到一个或多个实体类型。例如,对于“小明今天要去杭州”,实体分类方法(例如,实体分类算法或实体分类模型)可以将“小明”分类为PER(人),将“杭州”分类为LOC(位置)。
可以知道的是,对于一个实体分类模型,其在训练过程中使用的训练样本集所涉及的实体类型终究是有限的。当在遇到某些不属于训练样本集涉及的实体类型(例如,这些实体类型没有训练数据)的输入时,实体分类模型则无法对输入进行正确预测。现实中由于实体类型众多,且新的实体类型也在不断涌现,实际应用中常常面对需要分类的实体类型没有训练数据的情况,因此零样本实体分类有重要实用价值。
因此,期望一种实体分类方法。
发明内容
本说明书实施例的一个方面提供一种实体分类方法。所述方法可以包括:获取待分类实体以及至少一个候选实体类型,所述待分类实体具有上下文;确定所述至少一个候选实体类型各自对应的第一向量表示;确定与待分类实体相关的第二向量表示和至少一个第三向量表示,所述第二向量表示包括待分类实体的向量表示,所述至少一个第三向量表示与所述至少一个候选实体类型一一对应且与所述待分类实体的上下文相关;针对所述至少一个候选实体类型中的每一个:基于所述第二向量表示、该候选实体类型对应的第一向量表示以及该候选实体类型对应的第三向量表示,确定所述待分类实体与该候选实体类型之间的评估值,从而得到至少一个候选实体类型对应的评估值;基于所述至少一个候选实体类型对应的评估值,确定所述待分类实体的目标实体类型。
本说明书实施例的一个方面提供一种实体分类系统。所述系统包括:获取模块、第一确定模块、第二确定模块、第三确定模块以及分类模块。所述获取模块,用于获取待分类实体以及至少一个候选实体类型;所述待分类实体具有上下文;所述第一确定模块,用于确定所述至少一个候选实体类型各自对应的第一向量表示;所述第二确定模块,用于确定与待分类实体相关的第二向量表示和至少一个第三向量表示,所述第二向量表示包括待分类实体的向量表示,所述至少一个第三向量表示与所述至少一个候选实体类型一一对应且与所述待分类实体的上下文相关;所述第三确定模块,用于针对所述至少一个候选实体类型中的每一个:基于所述第二向量表示、该候选实体类型对应的第一向量表示以及该候选实体类型对应的第三向量表示,确定所述待分类实体与该候选实体类型之间的评估值;从而得到所述至少一个候选实体类型对应的评估值;所述分类模块,用于基于所述至少一个候选实体类型对应的评估值,确定所述待分类实体的目标实体类型。
本说明书实施例的一个方面提供一种实体分类装置。所述装置包括处理器,所述处理器用于执行如上所述的实体分类方法。
本说明书实施例的一个方面提供一种实体分类模型。所述模型包括输入层,用于获取待分类实体相关的第二向量表示以及候选实体类型对应的第一向量表示;所述第二向量表示包括待分类实体的向量表示;所述待分类实体具有上下文;注意力运算层,用于确定与候选实体类型对应且与所述待分类实体的上下文相关的第三向量表示;打分层,用于基于所述第一向量表示,所述第二向量表示以及所述第三向量表示,确定所述待分类实体与所述候选实体类型之间的评估值。
本说明书实施例的一个方面提供一种实体分类模型的训练方法。所述方法包括取多个第一实体类型,以及多个训练实体样本,其中,任一训练实体样本具有的真实实体类型包含在所述多个第一实体类型中;所述训练实体样本具有上下文;确定每个第一实体类型的第一向量表示,以及每个训练实体样本的第二向量表示;所述第二向量表示包括训练实体样本的向量表示;对于每一个训练实体样本,通过注意力运算层,获取该训练实体样本相关的至少一个第三向量表示;所述至少一个第三向量表示与所述多个第一实体类型一一对应,且与所述训练实体样本的上下文相关;通过打分层,对于所述多个第一实体类型中的每一个:基于第一向量表示,所述第二向量表示以及第三向量表示,确定所述训练实体样本与所述第一实体类型之间的评估值;从而得到所述训练实体样本与所述多个第一实体类型之间的多个评估值;至少调整所述注意力运算层和/或打分层中的参数,使得所述训练实体样本与所述多个第一实体类型中的所述真实实体类型之间的评估值差异于所述训练实体样本与所述多个第一实体类型中的其他实体类型之间的评估值。
附图说明
本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1是根据本说明书的一些实施例所示的示例性的一种实体分类方法的流程图;
图2是根据本说明书的一些实施例所示的示例性的确定待分类实体的第三向量表示的流程图;
图3是根据本说明书的一些实施例所示的示例性的确定待分类实体与候选实体类型之间的评估值的流程图;
图4是根据本说明书的一些实施例所示的示例性的一种实体分类系统的模块图;
图5是根据本说明书的一些实施例所示的示例性的一种实体分类模型的示意图;
图6是根据本说明书的一些实施例所示的示例性的一种实体分类模型训练的流程图。
具体实施方式
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本文使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
虽然本说明书对根据本说明书的实施例的系统中的某些模块或单元做出了各种引用,然而,任何数量的不同模块或单元可以被使用并运行在客户端和/或服务器上。所述模块仅是说明性的,并且所述系统和方法的不同方面可以使用不同模块。
本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
图1是根据本说明书的一些实施例所示的示例性的一种实体分类方法的示意图。在一些实施例中,流程100可以由处理设备执行。例如,流程100可以以程序或指令的形式存储在存储装置(如处理设备的自带存储单元或外接存储设备)中,所述程序或指令在被执行时,可以实现流程100。在一些实施例中,流程100可以由实体分类系统400执行。如图1所示,流程100可以包括下述步骤。
步骤110,获取待分类实体以及至少一个候选实体类型。具体地,该步骤可以由获取模块410执行。
在一些实施例中,所述待分类实体可以是指需要进行实体类型分类的实体。例如,对于文本“他家在四月初搬迁到了杭州市”中,“四月”、“杭州市”可以是待分类实体。在某些应用场景例如自然语言处理中,其需要被分类,比如可以被分类为“时间”以及“地点”。需要注意的是,所述待分类实体并不单独出现,而是存在于一定的环境中。待分类实体又可以称为实体提及,其具有上下文。如上举例,获取模块410在获取所述待分类实体时,是获取“他家在四月初搬迁到了杭州市”这一文本,而非单独的“四月”以及“杭州市”。在一些实施例中,所述待分类实体可以是处理设备的输入。处理设备可以具有I/O端口,用以接收外界输入信息。例如,接收由处理设备的操作者输入的待分类实体。
所述至少一个候选实体类型可以指待分类实体将被分到的至少一个实体类别。所述候选实体类型可以包括现存的实体类型(例如,长时段之内已经出现的实体类型比如已经出现一个月、一个季度、一年或以上)或新出现的实体类型(例如,短时段之间新出现的实体类型比如在近一天、一星期内出现)。作为示例,处理设备的存储器(例如自带存储器或外接存储器)中可以存储有多个实体类型,以及属于每个实体类型的多个实体。则所述至少一个候选实体类型可以是该多个实体类型中的一个或多个。另外,所述至少一个候选实体类型可以包括处理设备的存储器中未存储的实体类型。例如,随时间推移新出现的实体类型。处理设备的存储器未进行数据更新而不存在新出现的实体类型的相关数据,比如属于该实体类型的具体实体。步骤120,确定所述至少一个候选实体类型各自对应的第一向量表示。具体地,该步骤可以由第一确定模块420执行。
在一些实施例中,所述第一向量表示可以指所述候选实体类型的实体类型向量表示,其可以以向量、数组、或矩阵的形式呈现。每一个候选实体类型都有其对应的一个第一向量表示。对于任一候选实体类型,第一确定模块420可以基于属于该候选实体类型的多个示例实体的表示来确定该候选实体类型的第一向量表示。以下为示例性的说明。
对于任一候选实体类型,第一确定模块420可以获取属于该候选实体类型的多个示例实体的向量表示。本说明书中可以被称为第四向量表示。所述示例实体可以是指属于该候选实体类型的实体。对于现存的实体类型,其示例实体可以是存储器预先存储的。第一确定模块420可以直接从存储器中读取。对于新出现的实体类型,其示例实体可以是人工编写的。例如,假定候选实体类型是地点,则示例实体可以是北京、上海、东京、纽约等。而示例实体的第四向量表示则可以是经过转换算法(例如,词嵌入算法)得到的用于表示示例实体的向量、数组或矩阵。例如,用以表示示例实体“北京”的第四向量表示可以是经过例如Word2Vec算法由词语北京转换而来。比如直接由词语北京转化而来,或是由单字“北”和单字“京”分别转换各自的向量后再求平均得到。显然地,以上方式适用于不同的语言种类。例如,英文中属于地点的示例实体San Francisco的第四向量表示,可以由单词“San”和单词“Francisco”各自的向量表示求平均得到。在一些实施例中,所述示例实体的个数可以是预设的,例如60个、100个、140个等,也可以随时进行调整,本说明书不做具体限定。
在确定了候选实体类型的多个示例实体的第四向量表示后,第一确定模块420可以基于所述多个第四向量表示确定所述第一向量表示。例如,第一确定模块420可以对多个第四向量表示进行运算,例如,求平均、加权求和等,并将运算结果作为所述第一向量表示。
步骤130,确定与待分类实体相关的第二向量表示和至少一个第三向量表示。所述第二向量表示包括待分类实体的向量表示,所述至少一个第三向量表示与所述至少一个候选实体类型一一对应且与所述待分类实体的上下文相关。具体地,该步骤可以由第二确定模块430执行。
在一些实施例中,所述第二向量表示可以指所述待分类实体的向量表示,其体现了所述待分类实体本身的语义信息。第二确定模块430可以确定所述待分类实体的一个或多个词向量表示,并基于所述一个或多个词向量表示确定所述第二向量表示。所述待分类实体的一个或多个词向量表示,可以是待分类实体整体的一个词向量表示,也可以是组成待分类实体的多个组成部分的各自的词向量。例如,假定待分类实体为词语“杭州”,则“杭州”的一个或多个词向量,可以是由词语“杭州”经过转换算法例如Word2Vec、BERT等得到的一个词向量,也可以是由汉字“杭”以及汉字“州”分别经过转换算法得到两个词向量。同样地,对于其他语言亦是如此。
在一些实施例中,所述第三向量表示可以指与所述待分类实体所处上下文相关的向量表示。可以理解,单独的一个字或词本身可能属于多种实体类型。例如,人名“迈克尔·乔丹”可以是指篮球明星迈克尔·乔丹,也可以是指人工智能专家迈克尔·乔丹。当这个人名出现在语句中时,特定的上下文环境将对其所属的实体类型进行限制。例如,“迈克尔·乔丹将于下周三参加在洛杉矶举行的计算机大会”,在这里,“迈克尔·乔丹”的实体类型则是人工智能专家。因此,实体所处的上下文对于实体所属的实体类型也具有影响。
在一些实施例中,为确定所述第三向量表示,针对至少一个候选实体类型中的每一个,第二确定模块430可以首先确定与待分类实体的上下文相关的多个向量表示,例如,上下文中待分类实体附近的多个字或词的词向量。随后,第二确定模块430可以基于该候选实体类型的第一向量表示与以上确定的多个向量表示,确定与待分类实体的上下文相关的一组注意力参数,例如,通过注意力机制计算得到。随后,第二确定模块430可以基于该组注意力参数,以及与待分类实体的上下文相关的多个向量表示,确定与该候选实体类型对应的第三向量表示,例如,通过向量运算比如相乘、相加后得到。关于确定第三向量表示的其他描述可以参见图2,在此不再赘述。
步骤140,针对至少一个候选实体类型中的每一个:基于第二向量表示、该候选实体类型对应的第一向量表示以及该候选实体类型对应的第三向量表示,确定待分类实体与该候选实体类型之间的评估值,从而得到至少一个候选实体类型对应的评估值。具体地,该步骤可以由第三确定模块440执行。
在一些实施例中,待分类实体与候选实体类型之间的评估值可以是衡量所述待分类实体与候选实体类型之间的关联程度的值。评估值越大,说明所述待分类实体属于该候选实体类型的几率越大。例如,所述评估值可以是一个0到1之间的数值。为确定所述评估值,第三确定模块440可以首先将所述待分类实体的第二向量表示与第三向量表示进行拼接,得到一个新的向量表示。随后,第三确定模块440可以利用一个打分模型,基于第一向量表示,以及新得到的向量表示进行打分。打分的结果可以作为所述评估值。关于确定评估值的其他描述可以参考本说明书图3部分,在此不再赘述。
步骤150,可以基于至少一个候选实体类型对应的评估值,确定待分类实体的目标实体类型。具体地,该步骤可以由分类模块450执行。
在一些实施例中,所述目标实体类型可以是所述待分类实体最后所判定所属的实体类型,其可以是所述至少一个候选实体类型中的一个。分类模块450可以对至少一个候选实体类型对应的评估值进行排序,例如降序排列,以得到这些评估值中的最大值。评估值最大,意味着所述待分类实体属于该最大评估值对应的候选实体类型的概率最大。因此,分类模块450可以直接指定所述最大值所对应的候选实体类型作为所述目标实体类型。
应当注意的是,上述有关流程100的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程100进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。
图2是根据本说明书的一些实施例所示的示例性的一种确定待分类实体的第三向量表示的流程图。流程200可以是针对一个候选实体类型以确定与其对应的待分类实体的第三向量。在一些实施例中,流程200可以由处理设备执行。例如,流程200可以以程序或指令的形式存储在存储装置(如处理设备的自带存储单元或外接存储设备)中,所述程序或指令在被执行时,可以实现流程200。在一些实施例中,流程200可以由实体分类系统400(例如,第二确定模块430)执行。如图2所示,流程200可以包括下述步骤。
步骤210,确定所述待分类实体上下文中的多个分词各自对应的第五向量表示。
在一些实施例中,所述待分类实体上下文中的多个分词可以是与所述待分类实体左右相邻的多个字或词。作为示例,假定所获取的待分类实体为存在于“他家在四月初搬迁到了杭州市”的“四月”,则所述多个分词可以是临近“四月”前后的一个、两个、或三个字,包括“他”、“家”、“在”、“初”、“搬”、以及“迁”。所述多个分词各自对应的第五向量表示,可以是经过转换算法(比如,词嵌入算法或模型)得到的。可以理解,当某一词语处于特定的上下文中,它就与它附近的字、词产生了联系,比如前后关联。基于此特性,在本说明书的一个示例中,所述多个分词各自对应的第五向量可以利用循环神经网络确定。第二确定模块430可以将所述多个分词依次输入,例如,按分词在上下文中的先后顺序,至循环神经网络。经过计算,循环神经网络可以输出每个分词对应的词向量,随后,第二确定模块430可以指定该词向量作为分词对应的第五向量表示。在一些实施例中,循环神经网络可以包括LSTM网络。可以理解,每将一个分词输入循环神经网络,都会对应输出一个词向量,这个词向量与输入的分词直接对应,同时携带了在该分词前的一个或多个分词的信息。即,每个分词对应的第五向量表示除了反映该分词的信息征外,还携带有该分词与其前面分词的关联信息。
步骤220,基于该候选实体类型的第一向量表示与多个第五向量表示,确定对应于多个分词的一组注意力表示参数。
在一些实施例中,所述注意力参数可以用以表示多个分词对于待分类实体与该候选实体类型之间的关联的贡献程度。或可以理解为一个权重值,用于表示多个分词在待分类实体属于该候选实体类型这一事件上所占比重。第二确定模块430可以通过将候选实体类型的第一向量表示与多个第五向量表示进行运算,以得到对应于多个分词的一组注意力表示参数。作为示例,以下对运算过程进行举例说明。假定使用表示候选实体类型的第一向量表示,使用表示多个分词各自对应的第五向量表示。第二确定模块430可以将第一向量表示分别与多个第五向量表示进行向量点乘运算,得到多个中间参数。即,。为了体现实体类型注意力表示参数在权重方面的性质(例如,为0到1之间的一个数),第二确定模块430可以对进行转换,以得到注意力表示参数。例如,。同理,可以得到。
步骤230,基于一组注意力表示参数,以及多个第五向量表示,确定与该候选实体类型对应的第三向量表示。
在一些实施例中,第二确定模块430可以对一组注意力表示参数,以及多个第五向量表示继续进行运算,以得到所述第三向量表示。基于所述注意力表示参数的权重性质,所述运算可以加权求和。作为示例,所述第三向量表示(本说明中可以以表示)可以如下获取:。
需要注意的是,以上运算方式为示例性的,任何基于本说明书所披露的内容进行的修改或改进,都在本说明书的所披露的保护范围之内。
应当注意的是,上述有关流程200的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程200进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。
图3是根据本说明书的一些实施例所示的示例性的确定待分类实体与候选实体类型之间的评估值的流程图。流程200可以是针对一个候选实体类型以确定其与待分类实体之间的评估值。在一些实施例中,流程200可以由处理设备执行。例如,流程200可以以程序或指令的形式存储在存储装置(如处理设备的自带存储单元或外接存储设备)中,所述程序或指令在被执行时,可以实现流程200。在一些实施例中,流程200可以由实体分类系统400(例如,第三确定模块440)执行。如图3所示,流程300可以包括下述步骤。
步骤310,将第二向量表示以及第三向量表示进行拼接,确定对应于待分类实体的第六向量表示。
在一些实施例中,拼接可以指将至少两个不同的向量表示合并成一个向量表示的操作,或者将两个向量表示求和。例如,60维的向量a和60维的向量b可以进行首尾拼接得到新的120维的向量A=[a,b]。所述第六向量表示可以是第二向量表示与第三向量表示的一个拼接结果。例如,所述第六向量表示为第二向量表示和第三向量表示进行首尾拼接后得到的。在一些实施例中,可以基于后续运算对第六向量表示维度的要求,选择合并或求和等方式对第二向量表示与第三向量表示进行拼接。
步骤320,利用打分模型,基于第一向量表示,以及第六向量表示,确定所述待分类实体与该候选实体类型之间的评估值。
在一些实施例中,所述打分模型可以是已训练好,用于评估待分类实体与候选实体类型之间的关联度的模型。所述打分模型的数学表达可以如下所示:。其中,为打分模型的输出,用以表示待分类实体与候选实体类型之间的关联度,在本说明书中也可以指所述评估值。表示候选实体类型对应的第一向量表示。表示所述第六向量表示,在步骤310中由待分类实体的第二向量表示以及待分类实体相关的且与候选实体类型对应的第三向量表示拼接得到。第三确定模块440可以将所述第一向量表示与所述第六向量表示输入至打分模型后直接得到所述评估值。评估值越大,表示待分类模型与该候选实体类型关联程度高,也可以理解为待分类模型属于该候选实体类型的可能性高。
应当注意的是,上述有关流程300的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程300进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。
图4是根据本说明书的一些实施例所示的示例性的一种实体分类系统的模块图。如图4所示,实体分类系统400可以包括获取模块410、第一确定模块420、第二确定模块430、第三确定模块440、以及分类模块430。
第一获取模块410可以用于获取待分类实体以及至少一个候选实体类型。所述待分类实体可以是指需要进行实体类型分类的实体。所述待分类实体并不单独出现,而是存在于一定的环境中。待分类实体又可以称为实体提及,其具有上下文。所述至少一个候选实体类型可以指待分类实体将被分到的至少一个实体类别。所述候选实体类型可以包括现存的实体类型(例如,长时段之内已经出现的实体类型比如已经出现一个月、一个季度、一年或以上)或新出现的实体类型(例如,短时段之间新出现的实体类型比如在近一天、一星期内出现)。
第一确定模块420可以确定所述至少一个候选实体类型各自对应的第一向量表示。所述第一向量表示可以指所述候选实体类型的实体类型向量表示,其可以以向量、数组、或矩阵的形式呈现。每一个候选实体类型都有其对应的一个第一向量表示。对于任一候选实体类型,第一确定模块420可以基于属于该候选实体类型的多个示例实体的表示来确定该候选实体类型的第一向量表示。
第二确定模块430可以用于确定与待分类实体相关的第二向量表示和至少一个第三向量表示,所述第二向量表示包括待分类实体的向量表示,所述至少一个第三向量表示与所述至少一个候选实体类型一一对应且与所述待分类实体的上下文相关。所述第二向量表示可以指所述待分类实体的向量表示,其体现了所述待分类实体本身的语义信息。第二确定模块430可以确定所述待分类实体的一个或多个词向量表示,并基于所述一个或多个词向量表示确定所述第二向量表示。所述第三向量表示可以指与所述待分类实体所处上下文相关的向量表示。针对至少一个候选实体类型中的每一个,第二确定模块430可以首先确定与待分类实体的上下文相关的多个向量表示,例如,上下文中待分类实体附近的多个字或词的词向量。随后,第二确定模块430可以基于该候选实体类型的第一向量表示与以上确定的多个向量表示,确定与待分类实体的上下文相关的一组注意力参数,例如,通过注意力机制计算得到。随后,第二确定模块430可以基于该组注意力参数,以及与待分类实体的上下文相关的多个向量表示,确定与该候选实体类型对应的第三向量表示,例如,通过向量运算比如相乘、相加后得到。
第一评估模块440可以针对所述至少一个候选实体类型中的每一个:基于所述第二向量表示、该候选实体类型对应的第一向量表示以及该候选实体类型对应的第三向量表示,确定所述待分类实体与该候选实体类型之间的评估值,从而得到至少一个候选实体类型对应的评估值。待分类实体与候选实体类型之间的评估值可以是衡量所述待分类实体与候选实体类型之间的关联程度的值。评估值越大,说明所述待分类实体属于该候选实体类型的几率越大。为确定所述评估值,第三确定模块440可以首先将所述待分类实体的第二向量表示与第三向量表示进行拼接,得到一个新的向量表示。随后,第三确定模块440可以利用一个打分模型,基于第一向量表示,以及新得到的向量表示进行打分。打分的结果可以作为所述评估值。
分类模块450可以用于基于所述至少一个候选实体类型对应的评估值,确定所述待分类实体的目标实体类型。所述目标实体类型可以是所述待分类实体最后所判定所属的实体类型,其可以是所述至少一个候选实体类型中的一个。分类模块450可以直接指定所述最大值所对应的候选实体类型作为所述目标实体类型。
关于模型的其他描述可以参考本说明书流程图部分(例如,图1至图3)。
应当理解,图4所示的设备及其模块可以利用各种方式来实现。例如,设备及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的设备及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
需要注意的是,以上对于实体分类系统400的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,实体分类系统400中各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本说明书的保护范围之内。
图5是根据本说明书的一些实施例所示的示例性的一种实体分类模型的示例性示意图。如图5所示,该实体分类模型500可以包括输入层510、注意力运算层520、打分层530以及循环神经网络层540。图5也示出了实体分类模型的输入到输出的数据流向,如图5中的有向箭头。
输入层510可以用于获取待分类实体相关的第二向量表示以及候选实体类型对应的第一向量表示。
在一些实施例中,输入层510可以不包含待训练参数,而是直接接收第一向量表示及第二向量表示。在一些实施例中,输入层510可以包括嵌入层(embedding),其可以用于将输入的文本转换为向量。如图5中所示,需要对“他的家族搬迁到纽约市,这个城市很不错”中的待分类实体“纽约市”进行实体分类。输入层510可以分别获取“纽约市”的两个分词“纽约”以及“市”的词向量。同时,对于候选实体类型“人”、“地名”、以及“组织名”,输入层510可以分别获取属于各个候选实体类型的有限个示例实体的词向量。例如,60个属于候选实体类型“人”的示例实体的词向量、60个属于候选实体类型“地名”的示例实体的词向量、以及60个属于候选实体类型“组织名”的示例实体的词向量。另外,输入层510还可以对待分类实体“纽约市”的两个词向量进行运算,例如,加和求平均,得到待分类实体的向量表示,即第二向量表示。同时,对于每一个候选实体类型,输入层510可以对属于该候选实体类型的有限个示例实体的词向量进行运行,例如,加和求平均,得到候选实体类型的第一向量表示。关于输入层510的嵌入操作,可以参见图1中步骤120以及130的相关描述。
注意力运算层520可以用于确定与候选实体类型对应且与待分类实体的上下文相关的第三向量表示。
在一些实施例中,注意力运算层520可以对候选实体类型的第一向量表示以及与待分类实体的上下文中的多个分词的向量表示进行注意力计算,得到待分类实体的第三向量表示。继续参考图5,注意力运算层520可以获取来自输入层510的关于候选实体类型的第一向量表示,以及待分类实体“纽约市”的上下文中的多个分词(“他的”、“家族”、“搬迁”、“到”、“这个”、“城市”、“很”、“不错”)的第五向量表示(例如,从实体分类模型的循环神经网络层540处获取)。示例性的,注意力运算层520可以将第一向量分别与多个分词的第五向量表示进行点乘得到一组中间参数,随后对该组中间参数进行权重化(例如,将该组参数转变为0到1之间的一个值)以得到实体类型注意力表示参数。随后,注意力运算层520可以将该组实体类型注意力表示参数与待分类实体的上下文中的多个分词的向量表示进行相乘求和,以得到所述第三向量。在一些实施例中,可以通过循环神经网络层540可以用于依次处理所述待分类实体上下文中的多个分词,确定对应于每个分词的词向量,并将其作为每个分词的第五向量表示。在一些实施例中,循环神经网络层540对于分词的处理可以兼顾到分词之间的关联关系(例如,前后顺序),得以获取更加准确的表示分词的第五向量表示。关于注意力运算层520以及循环神经网络层540的处理算法,可以参见图2的相关描述。
打分层530可以用于基于第一向量表示,第二向量表示以及第三向量表示,确定待分类实体与候选实体类型之间的评估值。
在一些实施例中,打分层530可以利用打分函数,或打分模型来确定所述评估值。打分层530在获取待分类实体的第二向量表示(从输入层510处获取)和第三向量表示(从注意力运算层520处获取)后,可以拼接以上两个向量表示,得到对应于待分类实体的一个新的向量表示(例如,第六向量表示)。随后,打分层530可以使用,比如打分模型,对第一向量与第六向量进行运算,以得到评估值。例如,使用打分模型进行运算以得到评估值,其中表示第一向量表示。表示第六向量表示。关于打分层530的处理算法,可以参见图3的相关描述。
关于实体分类模型的训练,可以参考本说明书图6部分。
图6是根据本说明书的一些实施例所示的示例性的一种实体分类模型训练的流程图。在一些实施例中,流程600可以由处理设备执行。例如,流程600可以以程序或指令的形式存储在存储装置(如处理设备的自带存储单元或外接存储设备)中,所述程序或指令在被执行时,可以实现流程600。如图6所示,流程600可以包括下述步骤。
步骤610,获取多个第一实体类型,以及多个训练实体样本。
可以理解的是,图5提及的模型具有多个参数,例如,输入层、循环神经网络层或打分层中都包含待训练的参数。因此,需要利用训练样本对模型进行训练,以使模型的输出(如评估分)更加符合实际。模型的训练需要有训练样本。而样本的个数也是有限的。为了训练所述实体分类模型,存储设备例如处理设备的自带存储器或外接存储器比如云中可以存储有大量且有数的训练用的实体样本。这些训练用的实体样本可以分属于不同的实体类型。因此,所述多个第一实体类型可以包括这些不同的实体类型。另外,为了实现本说明书中提到的零样本实体分类,对于存储设备中未存储的某些实体类型及其实体样本,或在短时间内新出现的实体类型,所述多个第一实体类型也可以包括。例如,假定存储设备中存储有属于实体类型“人名”、“职业”、以及“地点”的实体样本,未存储属于实体类型“国籍”的实体样本,且最新出现了一种实体类型“歌曲名”,则所述第一实体类型可以是“人名”、“职业”、“地点”、“国籍”以及“歌曲名”。
在一些实施例中,所述多个训练实体样本可以是分属于不同第一实体类型的实体样本。也即是说任一训练实体样本具有的真实实体类型是所述多个第一实体类型中的一个。当第一实体类型来自于原有存储的训练用数据时,属于该第一实体类型的训练实体样本可以从原有存储的训练用数据中通过随机抽取的方式进行获取。当第一实体类型来自于非原有存储的训练用数据时,可以通过网络抓取,或与公共数据库进行通信以获取属于该第一实体类型的训练实体样本。在一些实施例中,当第一实体类型属于新出现的实体类型时,属于该第一实体类型的训练实体样本可以通过人工构造获取。
在一些实施例中,分属于不同第一实体类型的训练量实体样本的个数可以是一致的。例如,30个、40个、50个、60个等。本说明书不做具体限定。
步骤620,通过输入层确定每个第一实体类型的第一向量表示,以及每个训练实体样本的第二向量表示。
在一些实施例中,任一训练实体样本的第二向量可以包括经过词嵌入算法得到的向量表示,例如,Word2Vec,Glove。或者是使用神经网络对训练实体样本进行转换得到其对应的向量表示。训练实体样本的向量表示,即为所述训练实体的第二向量表示。第一实体类型的实体类型向量表示,可以是表示所述第一实体类型的具体实体类型向量表示,例如,使用一个向量来表示这个具体的实体类型。任一第一实体类型的实体类型向量表示可以由属于该第一实体类型的训练实体样本的向量表示确定。仅作为示例,第一实体类型的实体类型向量表示可以由属于该第一实体类型的训练实体样本的向量表示进行求和平均后得到。在一些实施例中,为确定第一向量表示,以及第二向量表示,可以利用所述实体分类模型的输入层实现。输入层可以包括一个embedding层,可以将所输入的文本转换为向量表示。
步骤630,对于每一个训练实体样本,通过注意力运算层,获取与该训练实体样本的上线文相关的至少一个第三向量表示。
在一些实施例中,所述至少一个第三向量表示可以与所述多个第一实体类型一一对应,注意力运算层可以针对每一个第一实体类型计算得到一个第三向量表示。所述第三向量可以是与该训练实体样本的上下文中的多个分词的词向量相关。所述多个分词的词向量可以有循环神经网络层确定。作为示例,所述训练实体样本的上下文中的多个分词可以是与训练实体样本左右相邻的多个字或词。这些字或词可以依据在上下文中的先后顺序,输入至循环神经网络后得到对应于每个分词的词向量。随后,注意力运算层可以基于这些分词的词向量,与第一实体类型的第一向量,确定第三向量。比如,将第一向量分别与多个词向量点乘后得到一组中间参数,随后对这组中间参数进行权重转换后,利用转化后的参数分别与多个分词的词向量相乘后再求和得到所述第三向量。示例性的过程可以参考图3。在一些实施例中,为了确保第三向量表示,还需要用到循环神经网络。参见图5的相关说明。
步骤640,通过打分层,对于所述多个第一实体类型中的每一个:基于第一向量表示,所述第二向量表示以及第三向量表示,确定所述训练实体样本与所述第一实体类型之间的评估值;从而得到所述训练实体样本与所述多个第一实体类型之间的多个评估值。
在一些实施例中,打分层可以将训练实体样本的第二向量表示,以及第三向量表示进行拼接后,再将拼接后的向量表示和第一向量表示一起输入至打分函数(或打分模型)中,得到所述评估值。所述评估值可以是表示训练实体样本与第一实体类型之间的关联度。若该训练实体样本属于该第一实体类型,则评估值高。反之亦然。作为示例,打分函数(或打分模型)的数学表达可以是。表示评估值,表示第一实体类型的第一向量表示,表示训练实体样本的第二向量表示以及第三向量表示拼接后得到的向量表示,表示该打分函数(或打分模型)的参数,其需要在训练中被更新。
可以理解,在模型训练之初,由于各个层中的参数是初始的或不准确的,因此需要对这些参数进行调整,以优化实体分类模型。
步骤650,调整所述输入层、所述注意力运算层、所述循环神经网络和/或所述打分层中的参数,使得所述训练实体样本与所述多个第一实体类型中的所述真实实体类型之间的评估值差异于所述训练实体样本与所述多个第一实体类型中的其他实体类型之间的评估值。
可以知道的是,每一个训练实体样本都有一个真实的实体类型。模型训练的目的可以是让该训练实体与其所属的真实的实体类型之间的评估分要远大于(或远小于)该训练实体与第一实体类型中的其他实体类型之间的评估值,以便在后续预测中,实体分类模型可以在新输入的实体与其真实实体类型之间的评估分的预测值上明显不同于输入实体与其他实体类型之间的评估分,以便确定该输入实体对应的实体类型。出于说明,假定第一实体类型包括A、B和C,对于一个属于实体类型A的训练实体样本X,若经过模型处理得到的A与X之间的评估值要远大于A与B以及A与C之间的评估值,则说明模型在处理该训练实体样本时满足了要求。当所有的样本都是如此时,则可以认为模型已训练成功。否则,模型的参数需要进行优化以达到上述目的。
在一些实施例中,实体分类模型在训练时的损失函数,可以基于使训练实体样本与其所属的真实实体类型之间的评估值和训练实体样本与所述多个第一实体类型中的其他实体类型之间的评估值之间的差异最大化构建。作为示例,损失函数可以如下表示:
其中,为训练实体样本所属的真实实体类型,为训练实体样本不属于的第一实体类型,为训练实体样本与其所属的真实实体类型之间的评估值,为训练实体样本与所述多个第一实体类型中的其他实体类型之间的评估值。通过最小化损失函数,以使得训练实体样本与其所属的真实实体类型之间的评估值高于(如,至少高出1)训练实体样本与所述多个第一实体类型中的其他实体类型之间的评估值。在一些实施例中,损失函数中的常数1还可以设置为其他数值,如2、3、10等。
参考图5,若需要确定一个训练实体样本与一个第一实体类型之间的评估值,数据流通可如图5中的有向箭头所示。因此,可以基于诸如反向传播等算法,向前(向输入层方向)调整所述打分层、所述注意力运算层、所述循环神经网络和/或所述输入层中的各个参数,以实现模型训练的目的。
应当注意的是,上述有关流程600的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程600进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。
本说明书实施例可能带来的有益效果包括但不限于:(1)本方案使用的方法使用实体类型的向量表示和实体类型注意力机制,对于没有训练数据的实体类型,可以使用少量原型单词来表示该实体类型,因此也可以计算相应地注意力和打分,因此可以进行预测,即能够进行零样本实体分类;(2)本方案使用实体类型的向量表示和实体类型注意力机制,模型经过训练后,能够进行零样本的实体分类,对于模型训练时没有见过的新的实体类型,能够在不需要训练数据的情况下进行分类。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本说明书的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本说明书的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本说明书的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。
本说明书各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、VisualBasic、Fortran2003、Perl、COBOL2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或处理设备上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的处理设备或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。
Claims (19)
1.一种实体分类方法,其中,所述方法包括:
获取待分类实体以及至少一个候选实体类型;所述待分类实体具有上下文;
确定所述至少一个候选实体类型各自对应的第一向量表示;
确定与待分类实体相关的第二向量表示和至少一个第三向量表示,所述第二向量表示包括待分类实体的向量表示,所述至少一个第三向量表示与所述至少一个候选实体类型一一对应且与所述待分类实体的上下文相关;
针对所述至少一个候选实体类型中的每一个:基于所述第二向量表示、该候选实体类型对应的第一向量表示以及该候选实体类型对应的第三向量表示,确定所述待分类实体与该候选实体类型之间的评估值;从而得到所述至少一个候选实体类型对应的评估值;
基于所述至少一个候选实体类型对应的评估值,确定所述待分类实体的目标实体类型。
2.根据权利要求1所述的方法,其中,所述确定所述至少一个候选实体类型各自对应的第一向量表示,包括,对任一候选实体类型:
获取属于所述候选实体类型的多个示例实体的第四向量表示;
基于所述多个第四向量表示,确定所述的候选实体类型对应的第一向量表示。
3.根据权利要求1所述的方法,其中,确定与待分类实体相关的第二向量表示,包括:
确定所述待分类实体的一个或多个词向量表示;
基于所述一个或多个词向量表示确定所述第二向量表示。
4.根据权利要求1所述的方法,其中,确定与待分类实体相关的至少一个第三向量表示,包括,针对所述至少一个候选实体类型中的每一个:
确定所述待分类实体上下文中的多个分词各自对应的第五向量表示;
基于该候选实体类型的第一向量表示与多个第五向量表示,确定对应于所述多个分词的一组实体类型注意力表示参数;
基于所述一组实体类型注意力表示参数,以及所述多个第五向量表示,确定与该候选实体类型对应的第三向量表示。
5.根据权利要求4所述的方法,其中,所述确定所述待分类实体上下文中的多个分词各自对应的第五向量表示,包括:
基于循环神经网络依次处理所述多个分词,确定对应于每个分词的词向量;
指定所述词向量为所述第五向量表示。
6.根据权利要求1所述的方法,其中,所述针对所述至少一个候选实体类型中的每一个:基于所述第二向量表示、该候选实体类型对应的第一向量表示以及该候选实体类型对应的第三向量表示,确定所述待分类实体与该候选实体类型之间的评估值,包括:
将所述第二向量表示以及所述第三向量表示进行拼接,确定对应于所述待分类实体的第六向量表示;
利用打分模型,基于所述第一向量表示,以及所述第六向量表示,确定所述待分类实体与该候选实体类型之间的评估值。
7.根据权利要求1所述的方法,其中,所述基于所述至少一个候选实体类型对应的评估值,确定所述待分类实体的目标实体类型,包括:
确定至少一个评估值中的最大值;
指定所述最大值所对应的候选实体类型作为所述目标实体类型。
8.一种实体分类系统,其中,所述系统包括获取模块、第一确定模块、第二确定模块、第三确定模块以及分类模块;
所述获取模块,用于获取待分类实体以及至少一个候选实体类型;所述待分类实体具有上下文;
所述第一确定模块,用于确定所述至少一个候选实体类型各自对应的第一向量表示;
所述第二确定模块,用于确定与待分类实体相关的第二向量表示和至少一个第三向量表示,所述第二向量表示包括待分类实体的向量表示,所述至少一个第三向量表示与所述至少一个候选实体类型一一对应且与所述待分类实体的上下文相关;
所述第三确定模块,用于针对所述至少一个候选实体类型中的每一个:基于所述第二向量表示、该候选实体类型对应的第一向量表示以及该候选实体类型对应的第三向量表示,确定所述待分类实体与该候选实体类型之间的评估值;从而得到所述至少一个候选实体类型对应的评估值;
所述分类模块,用于基于所述至少一个候选实体类型对应的评估值,确定所述待分类实体的目标实体类型。
9.根据权利要求8所述的系统,其中,为确定所述至少一个候选实体类型各自对应的第一向量表示,对任一候选实体类型,所述第一确定模块用于:
获取属于所述候选实体类型的多个示例实体的第四向量表示;
基于所述多个第四向量表示,确定所述的候选实体类型对应的第一向量表示。
10.根据权利要求8所述的系统,其中,为确定与待分类实体相关的第二向量表示,所述第二确定模块用于:
确定所述待分类实体的一个或多个词向量表示;
基于所述一个或多个词向量表示确定所述第二向量表示。
11.根据权利要求8所述的系统,其中,为确定与待分类实体相关的至少一个第三向量表示,针对所述至少一个候选实体类型中的每一个,所述第二确定模块用于:
确定所述待分类实体上下文中的多个分词各自对应的第五向量表示;
基于该候选实体类型的第一向量表示与多个第五向量表示,确定对应于所述多个分词的一组实体类型注意力表示参数;
基于所述一组实体类型注意力表示参数,以及所述多个第五向量表示,确定与该候选实体类型对应的第三向量表示。
12.根据权利要求11所述的系统,其中,为所述确定所述待分类实体上下文中的多个分词各自对应的第五向量表示,所述第二确定模块用于:基于循环神经网络依次处理所述多个分词,确定对应于每个分词的词向量;
指定所述词向量为所述第五向量表示。
13.根据权利要求8所述的系统,其中,针对所述至少一个候选实体类型中的每一个:为基于所述第二向量表示、该候选实体类型对应的第一向量表示以及该候选实体类型对应的第三向量表示,确定所述待分类实体与该候选实体类型之间的评估值,所述第三确定模块用于:将所述第二向量表示以及所述第三向量表示进行拼接,确定对应于所述待分类实体的第六向量表示;
利用打分模型,基于所述第一向量表示,以及所述第六向量表示,确定所述待分类实体与该候选实体类型之间的评估值。
14.根据权利要求8所述的系统,其中,为基于所述至少一个候选实体类型对应的评估值,确定所述待分类实体的目标实体类型,所述分类模块用于:
确定至少一个评估值中的最大值;
指定所述最大值所对应的候选实体类型作为所述目标实体类型。
15.一种实体分类装置,其中,所述装置包括处理器,所述处理器用于执行如权利要求1-7中任意一项所述的方法。
16.一种实体分类模型,其中,所述模型系统包括:
输入层,用于获取待分类实体相关的第二向量表示以及候选实体类型对应的第一向量表示;所述第二向量表示包括待分类实体的向量表示;所述待分类实体具有上下文;
注意力运算层,用于确定与候选实体类型对应且与所述待分类实体的上下文相关的第三向量表示;
打分层,用于基于所述第一向量表示,所述第二向量表示以及所述第三向量表示,确定所述待分类实体与所述候选实体类型之间的评估值。
17.根据权利要求16所述的模型,其中,注意力运算层进一步用于:
获取所述待分类实体上下文中的多个分词各自对应的第五向量表示;
基于该候选实体类型的第一向量表示与多个第五向量表示,确定对应于所述多个分词的一组实体类型注意力表示参数;
基于所述一组实体类型注意力表示参数,以及所述多个第五向量表示,确定与该候选实体类型对应的第三向量表示。
18.根据权利要求17所述的模型,其中,所述模型还包括:
循环神经网络层,用于依次处理所述多个分词,确定对应于每个分词的词向量,并将其作为每个分词的第五向量表示。
19.训练如权利要求16-18任一项所述的实体分类模型的方法,其中,包括:
获取多个第一实体类型,以及多个训练实体样本,其中,任一训练实体样本具有的真实实体类型包含在所述多个第一实体类型中;所述训练实体样本具有上下文;
确定每个第一实体类型的第一向量表示,以及每个训练实体样本的第二向量表示;所述第二向量表示包括训练实体样本的向量表示;
对于每一个训练实体样本,
通过注意力运算层,获取该训练实体样本相关的至少一个第三向量表示;所述至少一个第三向量表示与所述多个第一实体类型一一对应,且与所述训练实体样本的上下文相关;
通过打分层,对于所述多个第一实体类型中的每一个:基于第一向量表示,所述第二向量表示以及第三向量表示,确定所述训练实体样本与所述第一实体类型之间的评估值;从而得到所述训练实体样本与所述多个第一实体类型之间的多个评估值;
至少调整所述注意力运算层和/或打分层中的参数,使得所述训练实体样本与所述多个第一实体类型中的所述真实实体类型之间的评估值差异于所述训练实体样本与所述多个第一实体类型中的其他实体类型之间的评估值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010409782.XA CN111324749B (zh) | 2020-05-15 | 2020-05-15 | 一种实体分类方法、系统、及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010409782.XA CN111324749B (zh) | 2020-05-15 | 2020-05-15 | 一种实体分类方法、系统、及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111324749A true CN111324749A (zh) | 2020-06-23 |
CN111324749B CN111324749B (zh) | 2020-08-18 |
Family
ID=71164694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010409782.XA Active CN111324749B (zh) | 2020-05-15 | 2020-05-15 | 一种实体分类方法、系统、及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111324749B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113609291A (zh) * | 2021-07-27 | 2021-11-05 | 科大讯飞(苏州)科技有限公司 | 实体分类方法、装置、电子设备和存储介质 |
CN114661906A (zh) * | 2022-03-15 | 2022-06-24 | 腾讯科技(深圳)有限公司 | 一种实体提及分类方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180165288A1 (en) * | 2016-12-14 | 2018-06-14 | Microsoft Technology Licensing, Llc | Dynamic Tensor Attention for Information Retrieval Scoring |
CN110597970A (zh) * | 2019-08-19 | 2019-12-20 | 华东理工大学 | 一种多粒度医疗实体联合识别的方法及装置 |
CN110825875A (zh) * | 2019-11-01 | 2020-02-21 | 科大讯飞股份有限公司 | 文本实体类型识别方法、装置、电子设备和存储介质 |
-
2020
- 2020-05-15 CN CN202010409782.XA patent/CN111324749B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180165288A1 (en) * | 2016-12-14 | 2018-06-14 | Microsoft Technology Licensing, Llc | Dynamic Tensor Attention for Information Retrieval Scoring |
CN110597970A (zh) * | 2019-08-19 | 2019-12-20 | 华东理工大学 | 一种多粒度医疗实体联合识别的方法及装置 |
CN110825875A (zh) * | 2019-11-01 | 2020-02-21 | 科大讯飞股份有限公司 | 文本实体类型识别方法、装置、电子设备和存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113609291A (zh) * | 2021-07-27 | 2021-11-05 | 科大讯飞(苏州)科技有限公司 | 实体分类方法、装置、电子设备和存储介质 |
CN114661906A (zh) * | 2022-03-15 | 2022-06-24 | 腾讯科技(深圳)有限公司 | 一种实体提及分类方法、装置、电子设备及存储介质 |
CN114661906B (zh) * | 2022-03-15 | 2024-08-09 | 腾讯科技(深圳)有限公司 | 一种实体提及分类方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111324749B (zh) | 2020-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230252327A1 (en) | Neural architecture search for convolutional neural networks | |
US10997503B2 (en) | Computationally efficient neural network architecture search | |
US10529317B2 (en) | Neural network training apparatus and method, and speech recognition apparatus and method | |
US11636314B2 (en) | Training neural networks using a clustering loss | |
US20170278510A1 (en) | Electronic device, method and training method for natural language processing | |
CN110147551A (zh) | 多类别实体识别模型训练、实体识别方法、服务器及终端 | |
CN112529115B (zh) | 一种对象聚类方法和系统 | |
CN110520871A (zh) | 训练机器学习模型 | |
CN110378346B (zh) | 建立文字识别模型的方法、装置、设备和计算机存储介质 | |
CN106548192A (zh) | 基于神经网络的图像处理方法、装置和电子设备 | |
US20180285969A1 (en) | Predictive model training and selection for consumer evaluation | |
CN111324739B (zh) | 一种文本情感分析方法及系统 | |
CN111324749B (zh) | 一种实体分类方法、系统、及装置 | |
WO2021056127A1 (en) | Systems and methods for analyzing sentiment | |
CN112215696A (zh) | 基于时序归因分析的个人信用评估与解释方法、装置、设备及存储介质 | |
CN108875924A (zh) | 基于神经网络的数据处理方法、装置、系统及存储介质 | |
JP2023518220A (ja) | 多様なテキストを自動的に生成する方法 | |
CN117332090B (zh) | 一种敏感信息识别方法、装置、设备和存储介质 | |
CN114037545A (zh) | 客户推荐方法、装置、设备及存储介质 | |
CN113420833B (zh) | 一种基于问题语义映射的视觉问答方法及装置 | |
CN111353800A (zh) | 一种用户未来价值预测方法、系统、装置及存储介质 | |
CN110909885B (zh) | 一种平衡多个任务的方法及系统 | |
CN111858923A (zh) | 一种文本分类方法、系统、装置及存储介质 | |
CN114792097B (zh) | 预训练模型提示向量的确定方法、装置及电子设备 | |
CN115129863A (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 |