信息抽取方法、装置和计算机可读存储介质与流程

文档序号:31669561发布日期:2022-09-28 00:38阅读:50来源:国知局
信息抽取方法、装置和计算机可读存储介质与流程

1.本发明涉及文本处理技术领域,特别涉及一种信息抽取方法、装置和计算机可读存储介质。


背景技术:

2.物品属性信息抽取,是指从描述物品的自然语言文本中抽取物品的属性值和其对应属性名的任务。例如,在文本“这款金色立领t恤衫十分百搭,优雅而时尚”中,至少涉及了颜色属性和领型属性,颜色属性的属性值为金色,领型属性的属性值为立领。
3.物品属性信息在许多场景中都扮演了重要角色,诸如智能客服、物品推荐、物品检索等。但是在实际应用中,物品的属性信息经常是缺失或不确定的,这给属性信息的应用造成了诸多负面影响。
4.在相关技术中,通常将商品属性信息抽取的任务,分为商品属性值抽取和对应属性名预测两个独立的子任务。这两个子任务是相互无关的,即商品属性值抽取和属性名预测是相互独立的。


技术实现要素:

5.发明人经过分析后发现,商品的属性值和属性名是相互作用、相辅相成的,一个任务的结果有助于另一个任务。但是在相关技术中,将这两个预测任务独立处理。因此,相关技术中对于属性名和属性值的抽取准确率和抽取效率较低。
6.本发明实施例所要解决的一个技术问题是:如何提高属性名和属性值的抽取准确率和抽取效率。
7.根据本发明一些实施例的第一个方面,提供一种信息抽取方法,包括:确定物品的描述文本所对应的描述向量;将描述向量输入到预先训练的分类模型中,获得分类模型输出的类别,其中,输出的类别表示物品所具备的属性名;将描述向量以及物品的属性名信息输入到预先训练的序列标注模型中,获得序列标注模型输出的、对描述文本中词语的标注结果,其中,被标注的词语表示物品的属性名所对应的属性值。
8.在一些实施例中,确定物品的描述文本所对应的描述向量包括:将包括预设的占位符和物品的描述文本的数据输入到编码器中,获得编码器输出的、描述文本所对应的描述向量,其中,描述向量中包括占位符对应的、描述文本的整体向量,以及描述文本中每个词语的向量。
9.在一些实施例中,编码器为变形器的双向编码器表示bert。
10.在一些实施例中,分类模型具有整句参数矩阵和第一词语参数矩阵,并且,分类模型根据描述文本中每个词语的向量与第一词语参数矩阵的运算结果之和、以及描述本文的整体向量与整句参数矩阵的运算结果确定。
11.在一些实施例中,序列标注模型具有第二词语参数矩阵和属性名参数矩阵,并且,序列标注模型用于确定根据描述文本中的每个词语的向量与第二词语参数矩阵的乘积、以
及属性名信息与属性名参数矩阵的乘积,确定词语基于属性名的标注概率,并根据标注概率从描述文本中确定属性名所对应的属性值。
12.在一些实施例中,信息抽取方法还包括:获取训练文本所对应的训练描述向量、以及训练文本所标记的属性名和相应的属性值;将训练描述向量输入到分类模型中,获得分类模型输出的类别;将训练描述向量以及类别的信息输入到序列标注模型中,获得序列标注模型输出的、对训练文本中词语的标注结果;根据分类模型输出的类别、序列标注模型的标注结果、以及训练文本所标记的属性名和相应的属性值,确定分类模型和序列标注模型的联合损失;基于联合损失,对分类模型和序列标注模型的参数进行调整。
13.在一些实施例中,分类模型包括一个或多个子分类模型,每个子分类模型对应一种属性名,子分类模型的分类结果表示输入的描述向量所对应的文本是否具备相应的属性名。
14.根据本发明一些实施例的第二个方面,提供一种信息抽取装置,包括:描述向量确定模块,被配置为确定物品的描述文本所对应的描述向量;属性名获得模块,被配置为将描述向量输入到预先训练的分类模型中,获得分类模型输出的类别,其中,输出的类别表示物品所具备的属性名;属性值获得模块,被配置为将描述向量以及物品的属性名信息输入到预先训练的序列标注模型中,获得序列标注模型输出的、对描述文本中词语的标注结果,其中,被标注的词语表示物品的属性名所对应的属性值。
15.在一些实施例中,描述向量确定模块进一步被配置为将包括预设的占位符和物品的描述文本的数据输入到编码器中,获得编码器输出的、描述文本所对应的描述向量,其中,描述向量中包括占位符对应的、描述文本的整体向量,以及描述文本中每个词语的向量。
16.在一些实施例中,编码器为变形器的双向编码器表示bert。
17.在一些实施例中,分类模型具有整句参数矩阵和第一词语参数矩阵,并且,分类模型根据描述文本中每个词语的向量与第一词语参数矩阵的运算结果之和、以及描述本文的整体向量与整句参数矩阵的运算结果确定。
18.在一些实施例中,序列标注模型具有第二词语参数矩阵和属性名参数矩阵,并且,序列标注模型用于确定根据描述文本中的每个词语的向量与第二词语参数矩阵的乘积、以及属性名信息与属性名参数矩阵的乘积,确定词语基于属性名的标注概率,并根据标注概率从描述文本中确定属性名所对应的属性值。
19.在一些实施例中,信息抽取装置还包括:训练模块,被配置为获取训练文本所对应的训练描述向量、以及训练文本所标记的属性名和相应的属性值;将训练描述向量输入到分类模型中,获得分类模型输出的类别;将训练描述向量以及类别的信息输入到序列标注模型中,获得序列标注模型输出的、对训练文本中词语的标注结果;根据分类模型输出的类别、序列标注模型的标注结果、以及训练文本所标记的属性名和相应的属性值,确定分类模型和序列标注模型的联合损失;基于联合损失,对分类模型和序列标注模型的参数进行调整。
20.在一些实施例中,分类模型包括一个或多个子分类模型,每个子分类模型对应一种属性名,子分类模型的分类结果表示输入的描述向量所对应的文本是否具备相应的属性名。
21.根据本发明一些实施例的第三个方面,提供一种信息抽取装置,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器中的指令,执行前述任意一种信息抽取方法。
22.根据本发明一些实施例的第四个方面,提供一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现前述任意一种信息抽取方法。
23.上述发明中的一些实施例具有如下优点或有益效果。本发明的实施例通过在抽取描述文本中的属性的过程中,将在上一阶段预测的属性名的信息也作为计算因素,可以实现端到端的属性名和属性值的预测。即,用户通过一次性地输入描述文本,可以自动获得属性名和属性值两个预测结果。并且,在属性值预测的过程中,以属性名的预测结果作为计算因素,从而从整体性上提高了信息抽取的效率和准确率。
24.通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
25.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
26.图1示出了根据本发明一些实施例的信息抽取方法的流程示意图。
27.图2示出了根据本发明一些实施例的模型训练方法的流程示意图。
28.图3示出了根据本发明一些实施例的信息抽取装置的结构示意图。
29.图4示出了根据本发明另一些实施例的信息抽取装置的结构示意图。
30.图5示出了根据本发明又一些实施例的信息抽取装置的结构示意图。
具体实施方式
31.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
32.除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
33.同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
34.对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
35.在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
36.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一
个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
37.图1示出了根据本发明一些实施例的信息抽取方法的流程示意图。如图1所示,该实施例的信息抽取方法包括步骤s102~s106。
38.在步骤s102中,确定物品的描述文本所对应的描述向量。
39.在一些实施例中,将包括预设的占位符和物品的描述文本的数据输入到编码器中,获得编码器输出的、描述文本所对应的描述向量,其中,描述向量中包括占位符对应的、描述本文的整体向量,以及描述文本中每个词语的向量。
40.例如,采用bert(bidirectional encoder representation from transformers,变形器的双向编码器表示)编码器获得描述向量。
41.例如,对于描述文本“这款金色立领t恤衫十分百搭,优雅而时尚”,可以将“[cls]这款金色立领t恤衫十分百搭,优雅而时尚”输入到bert编码器中,其中,[cls]为预设的占位符,用于代表整个句子。相应地,编码器的输出包括描述文本的整体向量、以及描述文本中每个词语的向量。
[0042]
表1示例性地示出了编码器输出的向量{h0,h1,h2,h3,h4,h5,h6,h7,h8,h9}所对应的输入信息的含义,即,h0对应占位符、表示整个句子的向量,h1~h9分别代表描述文本中每个词语的向量。
[0043]
表1
[0044]
[cls]这款金色立领t恤衫十分百搭优雅而时尚h0h1h2h3h4h5h6h7h8h9[0045]
在步骤s104中,将描述向量输入到预先训练的分类模型中,获得分类模型输出的类别,其中,输出的类别表示物品所具备的属性名。
[0046]
例如,分类模型对某描述向量的分类结果为“颜色”“领型”,则表示相应的描述文本中具有属性名为“颜色”“领型”的属性。
[0047]
在一些实施例中,分类模型包括一个或多个子分类模型,每个子分类模型对应一种属性名,子分类模型的分类结果表示输入的描述向量所对应的文本是否具备相应的属性名。
[0048]
例如,某子分类模型对应属性名“颜色”,分类结果表示输入的描述向量所对应的文本是否具备属性名为“颜色”的属性。从而,可以将多分类任务拆解为多个二分类任务。
[0049]
在一些实施例中,分类模型具有整句参数矩阵和第一词语参数矩阵,并且,分类模型根据描述文本中每个词语的向量与第一词语参数矩阵的运算结果之和、以及描述本文的整体向量与整句参数矩阵的运算结果确定。
[0050]
在一些实施例中,分类模型根据公式(1)确定分类预测值,该分类预测值用于确定分类结果。例如,根据分类预测值与预设阈值的比较结果,确定预测的类别。
[0051][0052]
在公式(1)中,表示分类预测值;σ(
·
)表示s型曲线(sigmoid)函数;w1表示第一词语参数矩阵,该矩阵的数值为分类模型中的参数;i表示描述文本中的词语标识;n表示
描述文本中的词语数量;在i大于或等于1的情况下,hi表示描述文本中每个词语的向量;w2表示整句参数矩阵,该矩阵的数值为分类模型中的参数;h0表示描述文本的整体向量。
[0053]
通过将整体向量和词语的向量分别使用相应的参数进行计算、并对两部分计算结果进行融合,可以在分类时既考虑文本的整体含义、又考虑每个词语的含义,从而能够更准确地从描述文本中确定属性名。
[0054]
在步骤s106中,将描述向量以及物品的属性名信息输入到预先训练的序列标注模型中,获得序列标注模型输出的、对描述文本中词语的标注结果,其中,被标注的词语表示物品的属性名所对应的属性值。序列标注模型例如为隐马尔可夫模型(hidden markov model,简称:hmm)、条件随机场(conditional random fields,简称:crf)模型、长短期记忆网络(long short-term memory,简称:lstm)模型。
[0055]
例如,将“这款金色立领t恤衫十分百搭,优雅而时尚”对应的描述向量、以及在前一阶段识别出的属性名“颜色”对应的信息输入到序列标注模型中,当序列标注模型输出的结果中,“金色”被做出预设的标记时,表示该描述文本中属性名“颜色”对应的属性值为“金色”。
[0056]
在一些实施例中,序列标注模型具有第二词语参数矩阵和属性名参数矩阵,并且,序列标注模型用于确定根据描述文本中的每个词语的向量与第二词语参数矩阵的乘积、以及属性名信息与属性名参数矩阵的乘积,确定词语基于属性名的标注概率,并根据标注概率从描述文本中确定属性名所对应的属性值。
[0057]
在一些实施例中,序列标注模型根据公式(2)确定每个词语的标注信息,该标注信息用于确定词语的标注概率(例如将其本身作为标注概率、或者代入预设公式计算后得到标注概率)。在获得所有词语的标注概率后,最大的标注概率、或者值大于预设值的标注概率所对应的词语即为相应的属性名所对应的属性值。
[0058][0059]
在公式(2)中,i表示词语的标识,表示词语i的标注信息;softmax(
·
)表示归一化指数函数(softmax函数);w3表示第二词语参数矩阵,该矩阵的数值为分类模型中的参数;hi表示词语i的向量;w4表示属性名参数矩阵,该矩阵的数值为分类模型中的参数;表示属性名信息,该数值例如通过公式(1)获得。
[0060]
当描述文本对应的属性名有多个时,可以对各个属性名逐一采用公式(2)计算各个词语的标注概率,以便挖掘描述文本涉及的所有属性名所对应的属性值。
[0061]
从而,当预先预测属性名时,抽取属性名就会在该预测的属性名范围内抽取属性值。既保证了属性值抽取的准确性,也降低了属性值的搜索范围、从而提高了计算效率。
[0062]
上述实施例通过在抽取描述文本中的属性的过程中,将在上一阶段预测的属性名的信息也作为计算因素,可以实现端到端的属性名和属性值的预测。即,用户通过一次性地输入描述文本,可以自动获得属性名和属性值两个预测结果。并且,在属性值预测的过程中,以属性名的预测结果作为计算因素,从而从整体性上提高了信息抽取的效率和准确率。
[0063]
为了进一步提升预测的准确性,本发明的一些实施例在训练阶段使用了分类模型和序列标注模型联合训练的方法。下面参考图2描述本发明模型训练方法的实施例。
[0064]
图2示出了根据本发明一些实施例的模型训练方法的流程示意图。如图2所示,该
实施例的模型训练方法包括步骤s202~s210。
[0065]
在步骤s202中,获取训练文本所对应的训练描述向量、以及训练文本所标记的属性名和相应的属性值。
[0066]
在步骤s204中,将训练描述向量输入到分类模型中,获得分类模型输出的类别。
[0067]
在步骤s206中,将训练描述向量以及类别的信息输入到序列标注模型中,获得序列标注模型输出的、对训练文本中词语的标注结果。
[0068]
在步骤s208中,根据分类模型输出的类别、序列标注模型的标注结果、以及训练文本所标记的属性名和相应的属性值,确定分类模型和序列标注模型的联合损失。
[0069]
例如,用于预测属性名的分类模型的损失函数如公式(3)所示,用于预测属性值的序列标注模型的损失函数如公式(4)所示。
[0070][0071][0072]
在公式(3)和(4)中,lossa表示分类模型的损失;lossv表示序列标注模型的损失;crossentropy(
·
)表示通过交叉熵的方式计算损失值,根据需要,本领域技术人员还可以采用其他的损失值计算函数;ya表示训练文本标记的属性名的信息,表示分类模型预测的属性名信息;yv表示训练文本标记的属性值的信息,表示序列标注模型预测的属性值的信息。
[0073]
分类模型和序列标注模型的联合损失例如通过公式(5)确定,loss表示联合损失的损失值。
[0074]
loss=lossa+lossvꢀꢀꢀ
(5)
[0075]
然后,根据联合损失的损失值loss调整分类模型和序列标注模型的参数,而非使用两个模型各自的损失。
[0076]
在步骤s210中,基于联合损失,对分类模型和序列标注模型的参数进行调整。
[0077]
通过对分类模型和序列标注模型进行联合训练,能够获得端到端的属性名和属性值抽取模型,从而提高了信息抽取的准确率和抽取效率。
[0078]
通过本发明的实施例抽取的属性名和属性值可以应用于多个领域,例如知识图谱构建、智能客服、搜索引擎、推荐系统等等。例如,将抽取的属性名和属性值作为描述本文所对应的物品的标签,并将物品及其标签的对应关系存储到数据库中。从而,在下游应用中,通过从数据库中读取物品的信息及其标签,能够形成物品的标记数据,并用于上述各个场景。
[0079]
下面参考图3描述本发明信息抽取装置的实施例。
[0080]
图3示出了根据本发明一些实施例的信息抽取装置的结构示意图。如图3所示,该实施例的信息抽取装置30包括:描述向量确定模块310,被配置为确定物品的描述文本所对应的描述向量;属性名获得模块320,被配置为将描述向量输入到预先训练的分类模型中,获得分类模型输出的类别,其中,输出的类别表示物品所具备的属性名;属性值获得模块330,被配置为将描述向量以及物品的属性名信息输入到预先训练的序列标注模型中,获得序列标注模型输出的、对描述文本中词语的标注结果,其中,被标注的词语表示物品的属性
名所对应的属性值。
[0081]
在一些实施例中,描述向量确定模块310进一步被配置为将包括预设的占位符和物品的描述文本的数据输入到编码器中,获得编码器输出的、描述文本所对应的描述向量,其中,描述向量中包括占位符对应的、描述文本的整体向量,以及描述文本中每个词语的向量。
[0082]
在一些实施例中,编码器为变形器的双向编码器表示bert。
[0083]
在一些实施例中,分类模型具有整句参数矩阵和第一词语参数矩阵,并且,分类模型根据描述文本中每个词语的向量与第一词语参数矩阵的运算结果之和、以及描述本文的整体向量与整句参数矩阵的运算结果确定。
[0084]
在一些实施例中,序列标注模型具有第二词语参数矩阵和属性名参数矩阵,并且,序列标注模型用于确定根据描述文本中的每个词语的向量与第二词语参数矩阵的乘积、以及属性名信息与属性名参数矩阵的乘积,确定词语基于属性名的标注概率,并根据标注概率从描述文本中确定属性名所对应的属性值。
[0085]
在一些实施例中,信息抽取装置30还包括:训练模块340,被配置为获取训练文本所对应的训练描述向量、以及训练文本所标记的属性名和相应的属性值;将训练描述向量输入到分类模型中,获得分类模型输出的类别;将训练描述向量以及类别的信息输入到序列标注模型中,获得序列标注模型输出的、对训练文本中词语的标注结果;根据分类模型输出的类别、序列标注模型的标注结果、以及训练文本所标记的属性名和相应的属性值,确定分类模型和序列标注模型的联合损失;基于联合损失,对分类模型和序列标注模型的参数进行调整。
[0086]
在一些实施例中,分类模型包括一个或多个子分类模型,每个子分类模型对应一种属性名,子分类模型的分类结果表示输入的描述向量所对应的文本是否具备相应的属性名。
[0087]
图4示出了根据本发明另一些实施例的信息抽取装置的结构示意图。如图4所示,该实施例的信息抽取装置40包括:存储器410以及耦接至该存储器410的处理器420,处理器420被配置为基于存储在存储器410中的指令,执行前述任意一个实施例中的信息抽取方法。
[0088]
其中,存储器410例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(boot loader)以及其他程序等。
[0089]
图5示出了根据本发明又一些实施例的信息抽取装置的结构示意图。如图5所示,该实施例的信息抽取装置50包括:存储器510以及处理器520,还可以包括输入输出接口530、网络接口540、存储接口550等。这些接口530,540,550以及存储器510和处理器520之间例如可以通过总线560连接。其中,输入输出接口530为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口540为各种联网设备提供连接接口。存储接口550为sd卡、u盘等外置存储设备提供连接接口。
[0090]
本发明的实施例还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现前述任意一种信息抽取方法。
[0091]
本领域内的技术人员应当明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的
实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0092]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解为可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0093]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0094]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0095]
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1