CN111797622A - 用于生成属性信息的方法和装置 - Google Patents
用于生成属性信息的方法和装置 Download PDFInfo
- Publication number
- CN111797622A CN111797622A CN201910538273.4A CN201910538273A CN111797622A CN 111797622 A CN111797622 A CN 111797622A CN 201910538273 A CN201910538273 A CN 201910538273A CN 111797622 A CN111797622 A CN 111797622A
- Authority
- CN
- China
- Prior art keywords
- word
- information
- segmentation
- attribute information
- article
- 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
- 230000000875 corresponding Effects 0.000 claims abstract description 143
- 238000000605 extraction Methods 0.000 claims abstract description 62
- 230000011218 segmentation Effects 0.000 claims description 194
- 230000015654 memory Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 9
- 230000000694 effects Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 6
- 230000006403 short-term memory Effects 0.000 claims description 5
- 230000007787 long-term memory Effects 0.000 claims description 4
- 238000003058 natural language processing Methods 0.000 abstract description 6
- 238000010276 construction Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 12
- 238000000034 method Methods 0.000 description 11
- 239000000203 mixture Substances 0.000 description 10
- 239000003795 chemical substances by application Substances 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 238000002372 labelling Methods 0.000 description 6
- 230000001815 facial Effects 0.000 description 5
- 230000001537 neural Effects 0.000 description 5
- 230000003287 optical Effects 0.000 description 5
- 201000000522 chronic kidney disease Diseases 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 230000002087 whitening Effects 0.000 description 3
- 241000220317 Rosa Species 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000003020 moisturizing Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000000644 propagated Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 210000003666 Nerve Fibers, Myelinated Anatomy 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000003266 anti-allergic Effects 0.000 description 1
- 230000002457 bidirectional Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 238000010192 crystallographic characterization Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000003365 glass fiber Substances 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 239000010931 gold Substances 0.000 description 1
- 229910052737 gold Inorganic materials 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000004033 plastic Substances 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 239000010939 rose gold Substances 0.000 description 1
- 229910001112 rose gold Inorganic materials 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000000576 supplementary Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 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/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0623—Item investigation
Abstract
本公开的实施例公开了用于生成属性信息的方法和装置。该方法的一具体实施方式包括:获取物品的描述信息;对物品的描述信息进行分词,生成词集合;生成词集合中的词对应的词信息特征向量;将词信息特征向量输入至预先训练的信息抽取模型,生成物品的属性信息。该实施方式实现了从物品的描述信息中提取出多个属性信息,从而可以充分挖掘物品的描述信息中蕴含的语义信息,进而为知识图谱的构建、商品智能推荐等自然语言处理领域的上层应用提供了基础而必要的底层理解能力。
Description
技术领域
本公开的实施例涉及计算机技术领域,具体涉及用于生成属性信息的方法和装置。
背景技术
随着电子商务的迅速发展,对电商所展示的产品信息进行信息抽取变得越来越重要。
相关的方式通常是利用搜索日志构建训练数据进而训练分类模型,之后利用训练出的分类模型确定商品标题切词结果中的每一个词是否为中心产品词。
发明内容
本公开的实施例提出了用于生成属性信息的方法和装置。
第一方面,本公开的实施例提供了一种用于生成属性信息的方法,该方法包括:获取物品的描述信息;对物品的描述信息进行分词,生成词集合;生成词集合中的词对应的词信息特征向量;将词信息特征向量输入至预先训练的信息抽取模型,生成物品的属性信息。
在一些实施例中,上述对物品的描述信息进行分词,生成词集合,包括:采用至少两种分词方法对物品的描述信息进行分词,生成至少两种分词方法各自对应的预分词集合;根据预分词集合,确定预分词集合各自对应的分词方法的切分得分,其中,切分得分用于评估分词方法的分词效果;基于切分得分最高的预分词集合,生成词集合。
在一些实施例中,上述切分得分用于表征分词方法对应的词在预设类目语料下出现的概率。
在一些实施例中,上述基于切分得分最高的预分词集合,生成词集合,包括:确定切分得分最高的预分词集合中相邻两个词的共现概率;基于共现概率与预设阈值的比较,对切分得分最高的预分词集合中的词进行更新;将更新后的切分得分最高的预分词集合确定为词集合。
在一些实施例中,上述预设阈值包括预设互信息量阈值;以及上述基于共现概率与预设阈值的比较,对切分得分最高的预分词集合中的词进行更新,包括:确定切分得分最高的预分词集合中每个词的出现概率;根据共现概率和切分得分最高的预分词集合中每个词的出现概率,确定与共现概率对应的互信息量;响应于确定共现概率和互信息量满足预设的筛选条件,对与满足预设的筛选条件的共现概率和互信息量对应的词进行更新,其中,预设的筛选条件包括互信息量大于预设互信息量阈值。
在一些实施例中,上述词信息特征向量包括:词特征向量、词嵌入和字向量,词特征向量用于表征以下至少一项:词信息特征向量对应的词中是否包括预设类型的字符,词信息特征向量对应的物品是否属于预设类目。
在一些实施例中,上述生成词集合中的词对应的词信息特征向量,包括:利用预先训练的词嵌入生成模型将词集合中的词转换为对应的预训练词向量;将预训练词向量输入至预先训练的词向量更新模型,生成新词向量;将新词向量确定为词集合中的词对应的词嵌入。
在一些实施例中,上述信息抽取模型包括长短期记忆网络层和条件随机场层;以及上述将词信息特征向量输入至预先训练的信息抽取模型,生成物品的属性信息,包括:将词信息特征向量输入至长短期记忆网络层,生成至少两个备选的属性信息各自对应的得分;将至少两个备选的属性信息各自对应的得分输入至条件随机场层,生成至少两个属性信息,其中,属性信息从至少两个备选的属性信息中确定。
在一些实施例中,上述信息抽取模型通过如下步骤训练生成:获取训练样本集合,其中,训练样本包括样本词信息特征向量序列和与样本词信息特征向量序列对应的至少两个样本属性信息;将训练样本集合中的训练样本的样本词信息特征向量序列作为输入,将与输入的样本词信息特征向量序列对应的至少两个样本属性信息作为期望输出,训练得到信息抽取模型。
在一些实施例中,上述训练样本集合通过如下步骤生成:从预设的物品的样本描述信息集合中选取预设数目个包含目标词的物品的样本描述信息;基于信息抽取模型和信息熵,确定预设数目个物品的样本描述信息对应的置信度;根据置信度,从预设数目个物品的样本描述信息中选取目标数目个物品的样本描述信息;从所选取的目标数目个物品的样本描述信息中提取对应的样本词信息特征向量序列;将样本词信息特征向量序列与匹配的至少两个样本属性信息相关联,生成训练样本。
在一些实施例中,上述将词信息特征向量输入至预先训练的信息抽取模型,生成物品的属性信息,包括:根据词信息特征向量,从预设的属性信息集合中选取与词信息特征向量匹配的属性信息作为物品的属性信息。
在一些实施例中,该方法还包括:将满足预设的后验条件的属性信息与物品的描述信息关联存储;基于关联存储的属性信息与物品的描述信息,生成物品描述信息属性图谱。
第二方面,本公开的实施例提供了一种用于生成属性信息的装置,该装置包括:获取单元,被配置成获取物品的描述信息;分词单元,被配置成对物品的描述信息进行分词,生成词集合;向量生成单元,被配置成生成词集合中的词对应的词信息特征向量;属性信息生成单元,被配置成将词信息特征向量输入至预先训练的信息抽取模型,生成物品的属性信息。
在一些实施例中,上述分词单元包括:预分词子单元,被配置成采用至少两种分词方法对物品的描述信息进行分词,生成至少两种分词方法各自对应的预分词集合;得分确定子单元,被配置成根据预分词集合,确定预分词集合各自对应的分词方法的切分得分,其中,切分得分用于评估分词方法的分词效果;生成子单元,被配置成基于切分得分最高的预分词集合,生成词集合。
在一些实施例中,上述切分得分用于表征分词方法对应的词在预设类目语料下出现的概率。
在一些实施例中,上述生成子单元包括:共现概率确定模块,被配置成确定切分得分最高的预分词集合中相邻两个词的共现概率;更新模块,被配置成基于共现概率与预设阈值的比较,对切分得分最高的预分词集合中的词进行更新;词集合确定模块,被配置成将更新后的切分得分最高的预分词集合确定为词集合。
在一些实施例中,上述预设阈值包括预设互信息量阈值;以及上述更新模块包括:出现概率确定子模块,被配置成确定切分得分最高的预分词集合中每个词的出现概率;互信息量确定子模块,被配置成根据共现概率和切分得分最高的预分词集合中每个词的出现概率,确定与共现概率对应的互信息量;更新子模块,被配置成响应于确定共现概率和互信息量满足预设的筛选条件,对与满足预设的筛选条件的共现概率和互信息量对应的词进行更新,其中,预设的筛选条件包括互信息量大于预设互信息量阈值。
在一些实施例中,上述词信息特征向量包括:词特征向量、词嵌入和字向量,词特征向量用于表征以下至少一项:词信息特征向量对应的词中是否包括预设类型的字符,词信息特征向量对应的物品是否属于预设类目。
在一些实施例中,上述向量生成单元包括:转换子单元,被配置成利用预先训练的词嵌入生成模型将词集合中的词转换为对应的预训练词向量;新词向量生成子单元,被配置成将预训练词向量输入至预先训练的词向量更新模型,生成新词向量;词嵌入确定子单元,被配置成将新词向量确定为词集合中的词对应的词嵌入。
在一些实施例中,上述信息抽取模型包括长短期记忆网络层和条件随机场层;以及上述属性信息生成单元包括:得分生成子单元,被配置成将词信息特征向量输入至长短期记忆网络层,生成至少两个备选的属性信息各自对应的得分;属性信息生成子单元,被配置成将至少两个备选的属性信息各自对应的得分输入至条件随机场层,生成至少两个属性信息,其中,属性信息从至少两个备选的属性信息中确定。
在一些实施例中,上述信息抽取模型通过如下步骤训练生成:获取训练样本集合,其中,训练样本包括样本词信息特征向量序列和与样本词信息特征向量序列对应的至少两个样本属性信息;将训练样本集合中的训练样本的样本词信息特征向量序列作为输入,将与输入的样本词信息特征向量序列对应的至少两个样本属性信息作为期望输出,训练得到信息抽取模型。
在一些实施例中,上述训练样本集合通过如下步骤生成:从预设的物品的样本描述信息集合中选取预设数目个包含目标词的物品的样本描述信息;基于信息抽取模型和信息熵,确定预设数目个物品的样本描述信息对应的置信度;根据置信度,从预设数目个物品的样本描述信息中选取目标数目个物品的样本描述信息;从所选取的目标数目个物品的样本描述信息中提取对应的样本词信息特征向量序列;将样本词信息特征向量序列与匹配的至少两个样本属性信息相关联,生成训练样本。
在一些实施例中,上述属性信息生成单元进一步被配置成:根据词信息特征向量,从预设的属性信息集合中选取与词信息特征向量匹配的属性信息作为物品的属性信息。
在一些实施例中,该装置还包括:关联存储单元,被配置成将满足预设的后验条件的属性信息与物品的描述信息关联存储;图谱生成单元,被配置成基于关联存储的属性信息与物品的描述信息,生成物品描述信息属性图谱。
第三方面,本公开的实施例提供了一种电子设备,该电子设备包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如第一方面中任一实现方式描述的方法。
第四方面,本公开的实施例提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面中任一实现方式描述的方法。
本公开的实施例提供的用于生成属性信息的方法和装置,首先获取物品的描述信息;然后,对物品的描述信息进行分词,生成词集合;之后,生成词集合中的词对应的词信息特征向量;最后,将词信息特征向量输入至预先训练的信息抽取模型,生成物品的属性信息。该实施方式实现了从物品的描述信息中提取出多个属性信息,从而可以充分挖掘物品的描述信息中蕴含的语义信息,进而为知识图谱的构建、商品智能推荐等NLP(NaturalLanguage Processing,自然语言处理)领域的上层应用提供了基础而必要的底层理解能力。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本公开的其它特征、目的和优点将会变得更明显:
图1是本公开的一个实施例可以应用于其中的示例性系统架构图;
图2是根据本公开的用于生成属性信息的方法的一个实施例的流程图;
图3是根据本公开的实施例的用于生成属性信息的方法的一个应用场景的示意图;
图4是根据本公开的用于生成属性信息的方法的又一个实施例的流程图;
图5是根据本公开的用于生成属性信息的装置的一个实施例的结构示意图;
图6是适于用来实现本公开的实施例的电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
图1示出了可以应用本公开的用于生成属性信息的方法或用于生成属性信息的装置的示例性架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具等。
终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是具有显示屏并且支持信息收发的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务的软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
服务器105可以是提供各种服务的服务器,例如为终端设备101、102、103上显示的网页提供支持的后台服务器。后台服务器可以对所获取的物品的描述信息进行分析处理,并生成处理结果(例如物品的属性信息)。可选地,服务器105也可以将所生成的处理结果反馈给终端设备或发送给其他电子设备以供后续处理。
需要说明的是,服务器可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务的软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
需要说明的是,本公开的实施例所提供的用于生成属性信息的方法一般由服务器105执行,相应地,用于生成属性信息的装置一般设置于服务器105中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本公开的用于生成属性信息的方法的一个实施例的流程200。该用于生成属性信息的方法包括以下步骤:
步骤201,获取物品的描述信息。
在本实施例中,用于生成属性信息的方法的执行主体(如图1所示的服务器105)可以通过有线连接方式或者无线连接方式从本地、数据库服务器或目标终端获取物品的描述信息。其中,上述目标终端可以是根据实际的应用需求预先指定的任意终端(例如互联网协议IP地址在预设地址范围内的终端)。上述目标终端也可以是根据规则动态确定的终端(例如发送物品的描述信息的终端)。上述物品可以包括有形的物品(例如服饰、食品、洗护用品等),也可以包括无形的物品(例如虚拟货币、电子书、服务等)。
在本实施例中,上述物品的描述信息通常是文字。上述文字形式的物品的描述信息也可以是通过语音识别技术或OCR(Optical Character Recognition,光学字符识别)技术对音频或图片进行处理而得到的。在此不作限定。实践中,在电子商务领域,上述物品的描述信息通常可以是商品标题。上述商品标题例如可以是“春夏款舒适运动鞋”、“全面屏双卡双待手机”等。
步骤202,对物品的描述信息进行分词,生成词集合。
在本实施例中,上述执行主体可以利用各种分词方法对步骤201所获取的物品的描述信息进行分词。从而,分词后所形成的词可以组合成词集合。
在本实施例中,上述分词方法可以包括但不限于以下至少一项:基于字符串匹配的分词方法(例如正向最大匹配法、逆向最大匹配法、最少切分法等),基于n元语法的分词方法,基于隐马尔可夫模型的分词方法,基于条件随机场的分词方法。
在本实施例的一些可选的实现方式中,上述执行主体可以按照如下步骤对物品的描述信息进行分词,生成词集合:
第一步,采用至少两种分词方法对物品的描述信息进行分词,生成至少两种分词方法各自对应的预分词集合。
第二步,根据预分词集合,确定预分词集合各自对应的分词方法的切分得分。
在这些实现方式中,切分得分可以用于评估分词方法的分词效果。切分得分的确定方式可以根据实际需求来选择。作为示例,采用分词方法A、B、C进行分词所得到的分词方法各自对应的词集合中包括的词的数目分别为7、11、12。上述执行主体可以确定出词集合中包括的词的数目的平均值为10。然后,上述执行主体可以按照词集合中包括的词的数目与上述确定出的平均值的差值从小到大的顺序确定各分词方法的切分得分(例如分词方法B、C、A的切分得分依次为10、8、7)。
可选地,上述切分得分还可以用于表征分词方法对应的词在预设类目语料下出现的概率。其中,上述预设类目语料可以是预先构建的、与物品的描述信息所指示的物品的类别相匹配的语料。作为示例,上述预设类目语料可以是描述家具类商品的信息。对于“家用意式”采用两种切分方式:“家用/意式”和“家/用意/式”。采用上述切分得分可以更倾向于得到第一种分词结果。通过采用预设类目语料,可以避免使用通用的分词方法在应用于物品的描述信息时造成偏差,进而由于错误累积效应影响最终所生成的物品是属性信息的准确度。上述分词方法对应的词可以是利用分词方法对物品的描述信息进行分词后所得到的词。上述切分得分可以通过各种方法进行计算。作为示例,上述切分得分可以按照如下公式(1)计算:
其中,p(seg)可以用于表示分词方法对应的切分得分。n可以用于表示使用该分词方法进行分词后所得到的词的个数。P(wi|category)可以用于表示第i个词在预设类目语料下的出现概率。wi可以用于表示分词后所得到的词中的第i个词。category可以用于表征预设类目语料。
需要说明的是,实践中,为了对过细粒度的切分方式进行惩罚,也可以将上述公式中的n替换为
为了避免概率值过低造成数据溢出,也可以将上述公式中的P(wi|category)替换为log(P(wi|category))。第三步,基于切分得分最高的预分词集合,生成词集合。
在这些实现方式中,上述执行主体可以直接将切分得分最高的预分词集合确定为生成词集合。
可选地,基于上述切分得分用于表征分词方法对应的词在预设类目语料下出现的概率的实现方式,上述执行主体还可以按照如下步骤生成词集合:
S1、确定切分得分最高的预分词集合中相邻两个词的共现概率。
在这些实现方式中,上述相邻两个词的共现概率可以用于表征上述相邻两个词组成的词组在特定语料中出现的频繁程度。作为示例,上述共现概率可以通过上述相邻两个词组成的词组在特定语料中的出现次数除以上述特定语料中的总词数来确定。
S2、基于共现概率与预设阈值的比较,对切分得分最高的预分词集合中的词进行更新。
在这些实现方式中,上述执行主体可以从切分得分最高的预分词集合中删除大于预设阈值的共现概率所对应的相邻两个词。之后,可以将所删除的相邻两个词合成为一个词。然后,将所合成的词添加至上述切分得分最高的预分词集合中。从而实现对切分得分最高的预分词集合中的词进行更新。
可选地,上述预设阈值可以包括预设互信息量阈值。基于上述共现概率与预设互信息量阈值,上述执行主体还可以按照如下步骤对切分得分最高的预分词集合中的词进行更新:
a.确定切分得分最高的预分词集合中每个词的出现概率。
在这些实现方式中,上述词的出现概率可以用于表征该词在特定语料中出现的频繁程度。
b.根据共现概率和切分得分最高的预分词集合中每个词的出现概率,确定与共现概率对应的互信息量。
在这些实现方式中,上述与共现概率对应的互信息量可以用于表征与共现概率对应的相邻两个词之间的关联性。其可以通过上述相邻两个词中每个词的出现概率和相邻两个词的共现概率来表示。上述互信息量的值越大,可以表示上述相邻两个词之间的关联性越强。作为示例,上述互信息量可以通过如下公式(2)计算:
其中,I(w1,w2)可以用于表示与共现概率对应的相邻两个词w1,w2的互信息量。p(w1,w2)可以用于表示上述相邻两个词w1,w2的共现概率。p(w1)可以用于表示上述相邻两个词中第一个词w1的出现概率。p(w2)可以用于表示上述相邻两个词中第二个词w2的出现概率。
c.响应于确定共现概率和互信息量满足预设的筛选条件,对与满足预设的筛选条件的共现概率和互信息量对应的词进行更新。
在这些实现方式中,上述预设的筛选条件可以包括互信息量大于预设互信息量阈值。响应于确定共现概率和互信息量满足预设的筛选条件,上述执行主体可以从切分得分最高的预分词集合中删除满足预设的筛选条件的互信息量所对应的相邻两个词。之后,可以将所删除的相邻两个词合成为一个词。然后,将所合成的词添加至上述切分得分最高的预分词集合中。从而实现对切分得分最高的预分词集合中的词进行更新。
可选地,基于上述可选的实现方式,上述执行主体还可以根据上述通过相邻两个词合成的新词对所采用的分词方法进行更新。例如,更新分词所依据的词典,对分词模型的网络结构进行调整等等。
本实施例的上述可选的实现方式可以避免切分得分最高的预分词集合中存在过细粒度的分词结果。从而实现了分词粒度的归一化,有助于提升使用机器学习模型进行后续处理的结果的准确性。
S3、将更新后的切分得分最高的预分词集合确定为词集合。
在本实施例的一些可选的实现方式中,上述词集合可以包括词序列。可以理解,词序列中的词的排列顺序可以与上述物品的描述信息中的词的顺序一致。
步骤203,生成词集合中的词对应的词信息特征向量。
在本实施例中,上述执行主体可以通过各种方式生成步骤202所生成的词集合中的词对应的词信息特征向量。其中,上述词信息特征向量可以是一种词的数值化表示方式。可以理解,上述执行主体通常可以将上述步骤202所生成的词集合中的每个词生成与之对应的词信息特征向量。作为示例,生成上述词信息特征向量的方法可以包括但不限于以下至少一项:共现矩阵法,奇异值分解法,连续词袋(CBOW,Continuous Bag-of-Word)模型法。
在本实施例的一些可选的实现方式中,上述词信息特征向量可以包括:词特征向量、词嵌入和字向量。上述词特征向量可以用于表征以下至少一项:词信息特征向量对应的词中是否包括预设类型的字符,词信息特征向量对应的物品是否属于预设类目。
作为示例,上述词信息特征向量对应的词中是否包括预设类型的字符可以包括但不限于以下至少一项:是否只包括数字和英文,是否只包括数字,是否只包括英文,是否包括特殊符号,词信息特征向量对应的词的前或后一个字符是否为空白符。可选地,上述词特征向量还可以用于表征以下至少一项:词的首字和尾字,词信息特征向量对应的词是否存在于预设的品牌词词典中,词信息特征向量对应的物品的SKU(stock keeping unit,最小存货单位)的一级类目、二级类目、三级类目。
在这些实现方式中,上述词嵌入可以是一种以低维稠密向量对词进行数值化表示的方式。上述低维稠密向量通常为分布式向量(distributed word representation)。上述词嵌入可以通过各种预先训练的词嵌入向量模型得到。其中,上述词嵌入向量模型可以包括但不限于以下至少一项:Word2Vec(一种基于神经网络的词嵌入学习方法),GloVe(对word2vec方法的扩展)。可以理解,上述词嵌入向量模型也可以通过预先选取的特定语料作为样本进行训练得到,此处不再赘述。
可选地,基于上述可选的实现方式,上述执行主体可以按照如下步骤生成词集合中的词对应的词信息特征向量:
第一步,利用预先训练的词嵌入生成模型将词集合中的词转换为对应的预训练词向量。
在这些实现方式中,上述词嵌入生成模型可以将词转换为对应的预训练词向量。在这里,词对应的预训练词向量可以是利用各种预先训练的词嵌入生成模型所得到的词向量。通常,上述预先训练的词嵌入生成模型可以是各种基于神经网络的词向量模型。作为示例,上述词嵌入生成模型可以是预先训练的CNN(Convolutional Neural Networks,卷积神经网络)。可选地,基于所生成的词序列,上述词嵌入生成模型可以利用三种大小的卷积层在所生成的词序列上滑动卷积。之后,可以将卷积层输出的结果输入至最大池化(maxpooling)层。从而,可以得到字符级的词嵌入。
第二步,将预训练词向量输入至预先训练的词向量更新模型,生成新词向量。
在这些实现方式中,上述词向量更新模型可以用于表征新词向量与预训练词向量之间的对应关系。在这里,预训练词向量对应的新词向量可以是上述预先训练的词向量更新模型所输出的词向量,也即,经过词向量更新模型更新后的预训练词向量。通常,上述词向量更新模型可以是利用训练样本与机器学习方法所预先训练的多层非线性FNN(feedforward neural network,前馈神经网络)。其中,上述训练样本可以是预先设置的、关联存储的更新前后的词向量。利用训练样本与机器学习方法进行神经网络训练的具体方法可以参照下文对信息抽取模型的训练,此处不再赘述。
在这些实现方式中,上述FNN的网络参数可以在训练过程中进行调整。上述FNN可以等价于一个映射函数,以用于表征词向量的更新过程。从而,可以利用训练好的FNN对上述第一步所得到的预训练词向量进行更新,使得未参与对FNN进行训练的预训练词向量也可以通过训练好的FNN进行更新,以解决词向量更新不一致的问题。
第三步,将新词向量确定为词集合中的词对应的词嵌入。
步骤204,将词信息特征向量输入至预先训练的信息抽取模型,生成物品的属性信息。
在本实施例中,上述执行主体可以将步骤203所生成的词信息特征向量输入至预先训练的信息抽取模型。其中,上述信息抽取模型可以用于表征物品的属性信息与词信息特征向量之间的对应关系。上述物品的属性信息可以用于表征词信息特征向量所指示的物品的描述信息进行分词后所得到的词所表征的物品的属性。上述物品的属性信息可以包括但不限于以下至少一项:品牌词,产品词(例如果汁、U盘),型号词(例如X系列),功能属性(例如防水、抗过敏),材质属性(例如橡胶、塑料),样式属性(例如手提式、涂抹式),风格属性(例如复古、潮),季节属性(例如秋冬、春夏款),人群属性(例如婴儿、孕妇),地区属性(例如云南、新西兰),场景属性(例如运动、家居),颜色属性(例如黑色、玫瑰金),味道属性(例如清香、麻辣),规格属性(例如200ml、500g)。
作为示例,上述信息抽取模型可以是由技术人员基于对大量数据的统计而预先制定的、用于表征词信息特征向量与物品的属性信息之间的对应关系的对应关系表。上述执行主体可以将步骤203所生成的词集合中的每个词对应的词信息特征向量与上述对应关系表中的词信息特征向量进行比对。将上述对应关系表中相似度最大的词信息特征向量对应的物品的属性信息确定为物品的属性信息。可以理解,当词集合中包括多个词时,每个词对应的词信息特征向量可以生成词信息特征向量对应的物品的属性信息。从而,也可以得到多个物品的属性信息。
在本实施例的一些可选的实现方式中,上述信息抽取模型还可以包括预设的属性信息集合。上述属性信息集合中的每条属性信息可以与一个词信息特征向量集合相对应。其中,上述属性信息与词信息特征向量集合之间的对应关系可以预先设定。
在这些实现方式中,上述执行主体可以首先确定与步骤203所生成的词信息特征向量相匹配的至少两个词信息特征向量分别所属的词信息特征向量集合。之后,上述执行主体可以进一步确定上述预设的属性信息集合中与上述所确定的词信息特征向量集合相对应的属性信息作为物品的属性信息。
需要说明的是,由于词信息特征向量与物品的描述信息分词后所得到的词相对应,物品的属性信息与词信息特征向量相对应。因此,物品的属性信息可以与物品的描述信息分词后所得到的词相对应。
在本实施例的一些可选的实现方式中,基于词序列的实现方式,上述属性信息还可以采用BIO模式(一种序列标注模式)。作为示例,可以用“B-颜色属性”来表示词信息特征所指示的词所在的语义片段用于表征颜色属性并且该词在该语义片段的开头。作为又一示例,可以用“I-颜色属性”来表示词信息特征所指示的词所在的语义片段用于表征颜色属性并且该词在该语义片段的中间位置。作为再一示例,可以用“O”表示词信息特征所指示的词所在的语义片段用于表征的属性不属于任何预先设置的属性信息所表示的属性。
在本实施例的一些可选的实现方式中,上述执行主体还可以继续执行如下步骤:
第一步,将满足预设的后验条件的属性信息与物品的描述信息关联存储。
在这些实现方式中,上述执行主体可以首先确定所生成的物品的属性信息是否满足预设的后验条件。其中,上述后验条件可以包括不满足属性信息过滤条件。上述属性信息过滤条件可以包括但不限于以下至少一项:满足预设的正则表达式,属于预设的停用词词典中的词(例如包邮、请查询等等)。之后,上述执行主体可以将满足预设的后验条件的属性信息与物品的描述信息关联存储。
第二步,基于关联存储的属性信息与物品的描述信息,生成物品描述信息属性图谱。
在这些实现方式中,上述执行主体可以基于上述第一步所得到的关联存储的属性信息与物品的描述信息,生成物品描述信息属性图谱。其中,上述物品描述信息属性图谱可以是基于图的数据结构。其可以用于表征多个物品的属性信息与物品的描述信息进行分词后所得到的词之间的关联关系。
在这些实现方式中,通过对所生成的属性信息进行后处理,从而进一步提升所得到的物品的属性信息的准确率。而且,通过生成物品描述信息属性图谱,为后续物品的智能推荐等上层应用提供了可靠的数据基础。从而可以进一步加快与上述物品描述信息属性图谱相关的NLP过程的计算速度。
继续参见图3,图3是根据本公开的实施例的用于生成属性信息的方法的应用场景的一个示意图。在图3的应用场景中,用户使用终端301向XX网页提交商品详细信息302。上述XX网页的后台服务器303获取上述商品详细信息302中包括的物品的描述信息“女士美白洗面奶”3031。之后,上述后台服务器303对物品的描述信息“女士美白洗面奶”3031进行分词,得到词集合“女士、美白、洗面奶”3032。而后,上述后台服务器303可以生成上述词集合3032中的词各自对应的词信息特征向量“(1,0,2),(3,4,3),(2,5,8)”3033。接下来,上述后台服务器303可以根据预设的对应关系表确定与上述词信息特征向量“(1,0,2),(3,4,3),(2,5,8)”3033各自对应的物品的属性信息“人群属性,功能属性,产品词”3034。可选地,上述后台服务器303还可以将表征物品的属性信息与对应的词信息特征向量所表征的词之间的关联关系的信息304发送至数据库服务器305。而后,数据库服务器305还可以根据所获取的信息304生成物品描述信息属性图谱。
目前,现有技术之一通常是只针对物品描述信息中的某个特定的属性进行抽取,并建模为分类问题,导致仅能从物品描述信息中提取出所需要的单一属性(例如是否为产品词),而无法挖掘出物品描述信息中包含的其他重要信息(例如商品的样式、风格等)。而本公开的上述实施例提供的方法,首先将物品的描述信息进行分词后所得到的词转换为词信息特征向量。之后,通过预先训练的信息抽取模型生成词信息特征向量对应的物品的属性信息。由于物品的描述信息中可以包括多个词,因此可以生成对应的多个物品的属性信息。从而通过从物品的描述信息中提取出多个属性信息,实现了充分挖掘物品的描述信息中蕴含的语义信息,进而为知识图谱的构建、商品智能推荐等NLP领域的上层应用提供了基础而必要的底层理解能力。
进一步参考图4,其示出了用于生成属性信息的方法的又一个实施例的流程400。该用于生成属性信息的方法的流程400,包括以下步骤:
步骤401,获取物品的描述信息。
步骤402,对物品的描述信息进行分词,生成词集合。
在本实施例中,上述词集合可以是词序列。
步骤403,生成词集合中的词对应的词信息特征向量。
在本实施例中,上述词信息特征向量可以包括:词特征向量、词嵌入和字向量。上述执行主体可以首先利用预先训练的词嵌入生成模型将词集合中的词转换为对应的预训练词向量。之后,可以将预训练词向量输入至预先训练的词向量更新模型,生成新词向量。而后,可以将新词向量确定为词集合中的词对应的词嵌入。
上述步骤401、步骤402、步骤403分别与前述实施例中的步骤201、步骤202、步骤203中可选的实现方式一致,上文针对步骤201、步骤202和步骤203中可选的实现方式的描述也适用于步骤401、步骤402和步骤403,此处不再赘述。
步骤404,将词信息特征向量输入至预先训练的信息抽取模型中的长短期记忆网络层,生成至少两个备选的属性信息各自对应的得分。
在本实施例中,上述执行主体可以将步骤403所生成的词信息特征向量序列输入至预先训练的信息抽取模型中的长短期记忆网络层。其中,上述词信息特征向量序列的顺序可以与上述词序列的顺序一致。上述信息抽取模型可以包括LSTM(Long Short-TermMemory,长短期记忆网络)层和(conditional random field,条件随机场)层。其中,上述备选的属性信息可以预先设定。上述属性信息可以与前述实施例中的描述一致,此处不再赘述。上述得分通常可以是上述LSTM层输出的各备选的属性信息对应的非归一化概率值。
在本实施例的一些可选的实现方式中,上述LSTM层可以是Bi-LSTM(Bi-directional LSTM,双向长短期记忆网络)层。双向LSTM层可以引入词的上下文特征,从而可以提高生成结果的准确率。
步骤405,将至少两个备选的属性信息各自对应的得分输入至预先训练的信息抽取模型中的条件随机场层,生成至少两个属性信息。
在本实施例中,上述执行主体可以将步骤404所生成的备选的属性信息各自对应的得分输入至预先训练的信息抽取模型中的CRF层,生成至少两个属性信息。其中,上述属性信息可以从上述至少两个备选的属性信息中确定。上述CRF层可以在损失函数中引入备选的属性信息之间的条件得分,从而可以表示出不同备选的属性信息之间的关联关系。
在本实施例中,可以利用维特比算法(viterbi)求解上述CRF层的预测问题。也即,从上述至少两个备选的属性信息中确定上述属性信息。
在本实施例的一些可选的实现方式中,上述信息抽取模型可以由初始信息抽取模型训练得到。上述初始信息抽取模型可以是由FNN、Bi-LSTM、CNN、CRF组成的网络结构。上述信息抽取模型可以通过如下步骤训练生成:
第一步,获取训练样本集合。
在这些实现方式中,训练样本可以包括样本词信息特征向量序列和与样本词信息特征向量序列对应的至少两个样本属性信息。其中,上述样本属性信息可以用于表征样本词信息特征向量所指示的物品的样本描述信息中的词所表征的物品的属性。
实践中,上述训练样本可以通过多种方式得到。作为示例,可以从存储有大量物品的样本描述信息的数据集合中随机选取预设数目个物品的样本描述信息。之后,可以将所选取的物品的样本描述信息进行如前述步骤402、403的加工,得到样本描述信息对应的样本词信息特征向量序列。接下来,可以通过人工对所选取的物品的样本描述信息进行样本标注,得到与物品的样本描述信息对应的样本属性信息。而后,根据物品的样本描述信息,可以将对应的样本词信息特征向量序列与样本属性信息关联存储,最终得到训练样本。作为示例,物品的样本描述信息可以是“女士保湿洗面奶”。样本描述信息对应的样本属性信息可以是“人群属性”、“功能属性”和“产品词”。上述训练样本可以由“女士保湿洗面奶”对应的样本词信息特征向量序列和“人群属性”、“功能属性”、“产品词”组成。通过大量的数据形成大量的训练样本,进而组成训练样本集合。
可选地,在得到标注后的样本属性信息之后,上述执行主体还可以基于启发式方法对样本属性信息进行进一步处理。其中,上述启发式方法可以包括但不限于以下至少一项:通过统计属性信息中针对同一个词的不同切分方式,选择概率最大的切分方式来归一化切词的粒度;通过贝叶斯模型或统计出的与词对应的物品所属的三级类目中使用频率最高的属性信息,来对未进行标注的词对应的样本词信息特征向量进行补充标注;通过删除出现概率较低的属性信息或被标注的词信息特征向量对应的词的长度过长的属性信息,来对错误标注的属性信息进行删除;通过规则表的方式指定某些属性信息同时出现时可以归一化为其中一者(例如“功能属性”和“场景属性”同时在一个词中出现)。
基于上述可选的实现方式,可以对人工标注的信息进行进一步的处理。例如,可以删除标注错误的信息,可以对实体边界模糊、属性信息标注歧义的情况进行归一化处理,从而避免对模型训练造成混淆。
可选地,上述训练样本集合还可以通过如下步骤生成:
S1、从预设的物品的样本描述信息集合中选取预设数目个包含目标词的物品的样本描述信息。
在这些实现方式中,上述目标词可以是预先指定的词,也可以是根据预设规则而确定的词。其中,上述根据预设规则而确定的词例如可以是在指定语料库中出现频次较高(例如次数超过500次、出现频次排名前20)的词。上述指定语料库例如可以是前述分词方法所使用的语料库。对于所确定出的目标词,用于生成训练样本集合的执行主体可以利用各种随机抽样算法从预设的物品的样本描述信息集合中选取预设数目个包含上述目标词的物品的样本描述信息。可以理解,上述预设数目最小可以是1,最大可以是所确定出的目标词的数目。可选地,上述随机抽样算法可以是蓄水池算法。
S2、基于信息抽取模型和信息熵,确定预设数目个物品的样本描述信息对应的置信度。
在这些实现方式中,基于上一次训练好的信息抽取模型和信息熵,上述执行主体可以确定所选取的预设数目个物品的样本描述信息对应的置信度。其中,上述置信度可以用于评估物品的样本描述信息根据上一次训练好的信息抽取模型所生成的结果的准确度。上述置信度可以根据信息熵来计算。作为示例,可以根据如下公式(3)计算物品的样本描述信息对应的置信度:
其中,φTE可以用于表示根据信息熵(Entropy)进行计算而得到的置信度。x可以用于表示物品的样本描述信息。φTE(x)可以用于表示根据信息熵(Entropy)进行计算所得到的的物品的样本描述信息x的置信度。T可以用于表示物品的样本描述信息x对应的词集合中所包括的词的个数。M可以用于表示备选的属性信息的个数。yt可以用于表示物品的样本描述信息x对应的词集合中所包括的第t个词。m可以用于表示备选的属性信息。Pθ(yt=m)可以用于表示物品的样本描述信息x对应的词集合中所包括的第t个词yt对应的信息抽取模型的输出为备选的属性信息m的概率。其中,Pθ(yt=m)可以通过如下公式(4)计算得到:
Pθ(yt=m)=softmax(logitt)m (4)
其中,logit可以用于表示Bi-LSTM层输出的得分。logitt可以用于表示物品的样本描述信息x对应的词集合中所包括的第t个词yt经过Bi-LSTM层输出的各备选的属性信息的得分。(logitt)m可以用于表示物品的样本描述信息x对应的词集合中所包括的第t个词yt经过Bi-LSTM层输出的备选的属性信息m的得分。softmax(logitt)m可以用于表示将Bi-LSTM层输出的得分通过softmax(归一化指数函数)进行归一化所得到的概率值。
S3、根据置信度,从预设数目个物品的样本描述信息中选取目标数目个物品的样本描述信息。
在这些实现方式中,用于生成训练样本集合的执行主体可以通过各种方式选取目标数目个物品的样本描述信息。作为示例,上述用于生成训练样本集合的执行主体可以选取置信度小于预设置信度阈值的物品的样本描述信息。作为又一示例,用于生成训练样本集合的执行主体可以按照置信度从低至高的顺序选取预先指定数目个物品的样本描述信息。可以理解,上述目标数目的值最小可以为1,最大可以为上述预设数目。
S4、从所选取的目标数目个物品的样本描述信息中提取对应的样本词信息特征向量序列。
在这些实现方式中,用于生成训练样本集合的执行主体可以利用与前述步骤402、403类似的方法提取对应的样本词信息特征向量,最终得到杨本次信息特征向量序列。
S5、将样本词信息特征向量序列与匹配的至少两个样本属性信息相关联,生成训练样本。
基于上述可选的实现方式,通过选取使用当前信息抽取模型所得到的置信度较低的物品的描述信息进行标注进而形成训练样本,一方面可以减少大量样本标注所带来的人工成本;另一方面可以减少信息抽取模型在训练过程中达到最佳效果所需的样本数量。从而可以加快上述信息抽取模型的训练过程。
第二步,将训练样本集合中的训练样本的样本词信息特征向量序列作为输入,将与输入的样本词信息特征向量序列对应的至少两个样本属性信息作为期望输出,训练得到信息抽取模型。
具体地,上述训练步骤的执行主体可以将训练样本集合中的训练样本的样本词信息特征向量序列输入至上述初始信息抽取模型,得到该训练样本的至少两个物品的属性信息。然后,可以利用预设的损失函数计算所得到的至少两个物品的属性信息与该训练样本的至少两个样本属性信息之间的差异程度。接下来,可以利用正则化项计算模型的复杂度。之后,基于计算所得的差异程度和模型的复杂度,调整初始信息抽取模型的结构参数,并在满足预设的训练结束条件的情况下,结束训练。最后,将训练得到的初始信息抽取模型确定为上述信息抽取模型。
需要说明的是,上述损失函数可以采用对数损失函数,上述正则化项可以采用L2范数。上述预设的训练结束条件可以包括但不限于以下至少一项:训练时间超过预设时长;训练次数超过预设次数;计算所得的差异程度小于预设的差异阈值;测试集上的准确率达到预设的准确率阈值;测试集上的覆盖率达到预设的覆盖率阈值。
在本实施例的一些可选的实现方式中,上述执行主体还可以如前述实施例可选的实现方式中的描述,继续执行如下步骤:
第一步,将满足预设的后验条件的属性信息与物品的描述信息关联存储。
第二步,基于关联存储的属性信息与物品的描述信息,生成物品描述信息属性图谱。
在这些实现方式中,上述第一步和第二步可以与前述实施例中步骤204中的可选的实现方式中的描述一致。可选地,基于上述可选的实现方式,上述后验条件还可以包括根据属性信息确定的属性置信度大于预设的属性置信度阈值。其中,上述属性置信度可以根据上述信息抽取模型中的LSTM层输出的得分来确定。作为示例,上述属性置信度可以通过如下公式(5)确定:
其中,Ci可以用于表示第i个词语的置信度。上述词语可以是由上述词序列中的相邻词拼接而成的。例如对应于“B-颜色属性”的词“玫瑰”和对应于“I-颜色属性”的词“金”拼接而成的词语“玫瑰金”。j可以用于表示上述第i个词语在物品的描述信息中的开始位置。T可以用于表示上述第i个词语所包括的相邻词的数目。logitk可以用于表示上述第i个词语中的第k个词经过Bi-LSTM层输出的各备选的属性信息的得分中最大的得分。
从图4中可以看出,本实施例中的用于生成属性信息的方法的流程400体现了通过预先训练的词向量更新模型生成词信息特征向量中的词嵌入的步骤,能够对未参与过训练的词向量也进行更新,从而提升了模型的泛化能力。此外,上述流程400还体现了将所生成的与词序列对应的词信息特征向量序列输入至长短期记忆网络层和条件随机场层的步骤。由此,本实施例描述的方案可以将对物品的描述信息的信息抽取任务建模为序列标注问题,从而解决了将现有序列标注模型应用于属性信息抽取任务的问题,实现了利用序列标注技术对物品的描述信息中的重要语义信息的提取。
进一步参考图5,作为对上述各图所示方法的实现,本公开提供了用于生成属性信息的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例提供的用于生成属性信息的装置500包括获取单元501、分词单元502、向量生成单元503和属性信息生成单元504。其中,获取单元501,被配置成获取物品的描述信息;分词单元502,被配置成对物品的描述信息进行分词,生成词集合;向量生成单元503,被配置成生成词集合中的词对应的词信息特征向量;属性信息生成单元504,被配置成将词信息特征向量输入至预先训练的信息抽取模型,生成物品的属性信息。
在本实施例中,用于生成属性信息的装置500中:获取单元501、分词单元502、向量生成单元503和属性信息生成单元504的具体处理及其所带来的技术效果可分别参考图2对应实施例中的步骤201、步骤202、步骤203和步骤204的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,上述分词单元502可以包括:预分词子单元(图中未示出)、得分确定子单元(图中未示出)、生成子单元(图中未示出)。其中,上述预分词子单元,可以被配置成采用至少两种分词方法对物品的描述信息进行分词,生成至少两种分词方法各自对应的预分词集合。上述得分确定子单元,可以被配置成根据预分词集合,确定预分词集合各自对应的分词方法的切分得分。其中,切分得分可以用于评估分词方法的分词效果。上述生成子单元,可以被配置成基于切分得分最高的预分词集合,生成词集合。
在本实施例的一些可选的实现方式中,上述切分得分可以用于表征分词方法对应的词在预设类目语料下出现的概率。
在本实施例的一些可选的实现方式中,上述生成子单元可以包括:共现概率确定模块(图中未示出)、更新模块(图中未示出)、词集合确定模块(图中未示出)。其中,上述共现概率确定模块,可以被配置成确定切分得分最高的预分词集合中相邻两个词的共现概率。上述更新模块,可以被配置成基于共现概率与预设阈值的比较,对切分得分最高的预分词集合中的词进行更新。上述词集合确定模块,可以被配置成将更新后的切分得分最高的预分词集合确定为词集合。
在本实施例的一些可选的实现方式中,上述预设阈值可以包括预设互信息量阈值。上述更新模块可以包括:出现概率确定子模块(图中未示出)、互信息量确定子模块(图中未示出)、更新子模块(图中未示出)。其中,上述出现概率确定子模块,可以被配置成确定切分得分最高的预分词集合中每个词的出现概率。上述互信息量确定子模块,可以被配置成根据共现概率和切分得分最高的预分词集合中每个词的出现概率,确定与共现概率对应的互信息量。上述更新子模块,可以被配置成响应于确定共现概率和互信息量满足预设的筛选条件,对与满足预设的筛选条件的共现概率和互信息量对应的词进行更新。其中,预设的筛选条件可以包括互信息量大于预设互信息量阈值。
在本实施例的一些可选的实现方式中,上述词信息特征向量可以包括:词特征向量、词嵌入和字向量。上述词特征向量可以用于表征以下至少一项:词信息特征向量对应的词中是否包括预设类型的字符,词信息特征向量对应的物品是否属于预设类目。
在本实施例的一些可选的实现方式中,上述向量生成单元503可以包括:转换子单元(图中未示出)、新词向量生成子单元(图中未示出)、词嵌入确定子单元(图中未示出)。其中,上述转换子单元,可以被配置成利用预先训练的词嵌入生成模型将词集合中的词转换为对应的预训练词向量。上述新词向量生成子单元,可以被配置成将预训练词向量输入至预先训练的词向量更新模型,生成新词向量。上述词嵌入确定子单元,可以被配置成将新词向量确定为词集合中的词对应的词嵌入。
在本实施例的一些可选的实现方式中,上述信息抽取模型可以包括长短期记忆网络层和条件随机场层。上述属性信息生成单元504可以包括:得分生成子单元(图中未示出)、属性信息生成子单元(图中未示出)。其中,上述得分生成子单元,可以被配置成将词信息特征向量输入至长短期记忆网络层,生成至少两个备选的属性信息各自对应的得分。上述属性信息生成子单元,可以被配置成将至少两个备选的属性信息各自对应的得分输入至条件随机场层,生成至少两个属性信息。其中,上述属性信息可以从上述至少两个备选的属性信息中确定。
在本实施例的一些可选的实现方式中,上述信息抽取模型可以通过如下步骤训练生成:首先,获取训练样本集合。其中,训练样本可以包括样本词信息特征向量序列和与样本词信息特征向量序列对应的至少两个样本属性信息。然后,将训练样本集合中的训练样本的样本词信息特征向量序列作为输入,将与输入的样本词信息特征向量序列对应的至少两个样本属性信息作为期望输出,训练得到信息抽取模型。
在本实施例的一些可选的实现方式中,上述训练样本集合可以通过如下步骤生成:从预设的物品的样本描述信息集合中选取预设数目个包含目标词的物品的样本描述信息。基于信息抽取模型和信息熵,确定预设数目个物品的样本描述信息对应的置信度。根据置信度,从预设数目个物品的样本描述信息中选取目标数目个物品的样本描述信息。从所选取的目标数目个物品的样本描述信息中提取对应的样本词信息特征向量序列。将样本词信息特征向量序列与匹配的至少两个样本属性信息相关联,生成训练样本。
在本实施例的一些可选的实现方式中,上述属性信息生成单元504可以进一步被配置成:根据词信息特征向量,从预设的属性信息集合中选取与词信息特征向量匹配的属性信息作为物品的属性信息。
在本实施例的一些可选的实现方式中,用于生成属性信息的装置500还可以包括:关联存储单元(图中未示出)、图谱生成单元(图中未示出)。其中,上述关联存储单元,可以被配置成将满足预设的后验条件的属性信息与物品的描述信息关联存储。上述图谱生成单元,可以被配置成基于关联存储的属性信息与物品的描述信息,生成物品描述信息属性图谱。
本公开的上述实施例提供的装置,通过获取单元501获取物品的描述信息。然后,分词单元502对物品的描述信息进行分词,生成词集合。之后,向量生成单元503生成词集合中的词对应的词信息特征向量。最后,属性信息生成单元504将词信息特征向量输入至预先训练的信息抽取模型,生成物品的属性信息。从而实现了从物品的描述信息中提取出多个属性信息,进而可以充分挖掘物品的描述信息中蕴含的语义信息。此外,还可以为知识图谱的构建、商品智能推荐等NLP领域的上层应用提供了基础而必要的底层理解能力。
下面参考图6,其示出了适于用来实现本公开的实施例的电子设备(例如图1中的服务器)600的结构示意图。图6示出的服务器仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标等的输入装置606;包括例如液晶显示器(LCD,Liquid Crystal Display)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图6中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开的实施例的方法中限定的上述功能。
需要说明的是,本公开的实施例所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(Radio Frequency,射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取物品的描述信息;对物品的描述信息进行分词,生成词集合;生成词集合中的词对应的词信息特征向量;将词信息特征向量输入至预先训练的信息抽取模型,生成物品的属性信息。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的实施例的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开的各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开的实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器,包括获取单元、分词单元、向量生成单元、属性信息生成单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,获取单元还可以被描述为“获取物品的描述信息的单元”。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开的实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。