商品信息格式处理方法、装置、计算机设备和存储介质与流程

文档序号:15492628发布日期:2018-09-21 20:56阅读:108来源:国知局

本申请涉及计算机技术领域,特别是涉及一种商品信息格式处理方法、装置、计算机设备和存储介质。



背景技术:

海关报关单中涉及到各种各样的商品信息,虽然报关单中规定了统一的申报格式,但是不同的申报人填写商品信息的顺序和形式不同,导致报关单中的商品信息格式并不统一。大量的海关人员对不同格式的商品信息进行解读,费时费力,而且对海关进出口业务风控管理也造成了较多阻碍。

为了对商品信息格式进行有效的统一化处理,在传统的方式中,开发人员通常采特定的模板配合专有词典对关键信息进行匹配,将商品信息的格式进行统一。然而这种方式需要开发人员开发多种模板以及收集多种专有名词库构建专有词典,导致统一商品信息格式的处理效率较低。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种在统一商品信息格式时能够有效提高处理效率的商品信息格式处理方法、装置、计算机设备和存储介质。

一种商品信息格式处理方法,所述方法包括:

获取商品信息,所述商品信息包括多个商品项;

对所述商品项的内容进行分词处理,得到多个词;

获取通过词向量模型训练得到的多个词对应的权重向量,利用多个词对应的权重向量生成权重矩阵;

获取所述商品项的多个词对应的编码,将多个词的编码输入至训练后的多层循环神经网络;

通过所述训练后的多层循环神经网络,基于所述多个词的编码以及所述权重矩阵进行运算,输出所述商品项对应的预设格式的描述。

在其中一个实施例中,所述方法还包括:

获取与商品信息对应的训练集,所述训练集中包括多个商品项以及商品项对应的多个训练词;

统计多个商品项中训练词的词汇数量,将最大词汇数量标记为最长输入参数;

利用所述最长输入参数以及所述训练词,对词向量模型进行训练,得到所述训练词对应的权重向量;

利用所述最长输入参数以及所述训练词对应的权重向量对多层循环神经网络进行训练,得到训练后的多层循环神经网络。

在其中一个实施例中,所述利用所述最长输入参数以及所述训练词,对词向量模型进行训练,得到所述训练词对应的权重向量包括:

获取与商品信息对应的语料库,所述语料库中包括多个语料词;所述语料词中包括部分预设字符;

利用所述语料词对词向量模型进行训练,得到语料权重矩阵;所述语料权重矩阵包括多个语料权重向量;

利用预设字符将多个商品项的训练词的词汇数量增加至与所述最长输入参数相同的数量;

根据增加词汇数量后的商品项,在所述语料权重矩阵中选择训练词以及一个或多个预设字符对应的语料权重向量,标记为训练词对应的输入向量;

通过所述词向量模型加载多个输入向量,通过所述词向量模型的隐含层进行训练得到训练权重矩阵,所述训练权重矩阵包括多个训练词以及预设字符对应的权重向量。

在其中一个实施例中,所述利用所述最长输入参数、所述训练词以及所述训练词对应的权重向量对多层循环神经网络进行训练,得到训练后的多层循环神经网络包括:

获取所述商品信息对应的映射文件,所述映射文件中记录了商品项中多个训练词的原始描述与预设格式的描述;

利用预设字符将多个商品项的训练词的词汇数量增加至与所述最长输入参数相同的数量;

将所述训练词以及预设字符对应的权重向量生成与商品项对应的训练权重矩阵;

将增加词汇数量后的商品项中的训练词、预设字符以及对应的权重向量矩阵,通过所述多层循环神经网络进行训练,输出商品项中多个训练词预设格式的描述。

在其中一个实施例中,所述多层循环神经网络神经包括多个隐含层;所述将增加词汇数量后的商品项中的训练词、预设字符以及对应的权重向量矩阵,通过所述多层循环神经网络进行训练包括:

向每层隐含层分配随机向量作为隐含层的初始权重矩阵;

根据所述最长输入参数在所述输入层与第一层隐含层设置与增加词汇数量后的商品项相对应的训练权重矩阵;

将增加词汇数量后的商品项的训练词所对应的编码以及预设字符对应的编码输入至所述多层循环神经网络的输入层;

通过多层隐含层利用所述初始权重矩阵以及训练权重矩阵进行训练,使得输出层输出商品项中多个训练词预设格式的描述。

在其中一个实施例中,所述方法还包括:

获取多个训练集对应的样本文件数量;

获取验证集,所述验证集中包括多个商品项的词;

利用验证集对多个训练集在通过训练后输出的商品项的预设格式进行验证;

当验证的准确度达到阈值时,将初次达到所述阈值对应的样本文件数量标记为最大批量训练的样本文件数量。

一种商品信息格式处理装置,所述装置包括:

信息获取模块,用于获取商品信息,所述商品信息包括多个商品项;

分词处理模块,用于对所述商品项的内容进行分词处理,得到多个词;

权重矩阵生成模块,用于获取通过词向量模型训练得到的多个词对应的权重向量,利用多个词对应的权重向量生成权重矩阵;

格式统一化模块,用于获取所述商品项的多个词对应的编码,将多个词的编码输入至训练后的多层循环神经网络;通过所述训练后的多层循环神经网络,基于所述多个词的编码以及所述权重矩阵进行运算,输出所述商品项对应的预设格式的描述。

在其中一个实施例中,所述装置还包括:

第一训练模块,用于获取与商品信息对应的训练集,所述训练集中包括多个商品项以及商品项对应的多个训练词;统计多个商品项中训练词的词汇数量,将最大词汇数量标记为最长输入参数;利用所述最长输入参数以及所述训练词对词向量模型进行训练,得到所述训练词对应的权重向量;

第二训练模块,用于利用所述最长输入参数以及所述训练词对应的权重向量对多层循环神经网络进行训练,得到训练后的多层循环神经网络。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法实施例中的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法实施例中的步骤。

上述商品信息格式处理方法、装置、计算机设备和存储介质,当需要对商品信息中原始描述进行格式统一时,服务器可以对商品项中的内容进行分词处理,得到商品项对应的多个词。服务器可以根据商品项的多个词获取相应的权重向量,继而生成多个词对应的权重矩阵。由于每个词的权重向量均是通过词向量模型训练得到的,由此能够准确反映每个词的矢量,有效提高多层循环神经网络的收敛效果,从而能够提高输出效果的准确性。服务器将商品项的多个词的编码输入至训练后的多层循环神经网络,通过训练后的多层循环神经网络利用多个词的编码以及权重矩阵进行运算,输出商品项对应的预设格式的描述。由于多层循环神经网络是经过训练的,可以使得商品项中每个词都能输出为预设格式的描述。整个过程无需开发多种模板以及构建专有词典,多种类型的商品信息均可输出所需的统一格式,实现了商品信息格式统一效率的提高。

附图说明

图1为一个实施例中商品信息格式处理方法的应用场景图;

图2为一个实施例中商品信息格式处理方法的流程示意图;

图3为一个实施例中2层循环神经网络在时间上的展开图;

图4为一个实施例中4层循环神经网络在时间上的展开图;

图5为一个实施例中6层循环神经网络在时间上的展开图;

图6为一个实施例中词向量模型训练以及多层循环神经网络训练的步骤的流程示意图;

图7为一个实施例中商品信息格式处理装置的结构框图;

图8为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的商品信息格式处理方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机以及平板电脑等计算机设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。终端102向服务器104上传的商品文件。商品文件中记录了多种商品信息,商品信息包括多个商品项。服务器104对每个商品项的详细信息描述进行分词处理。服务器104中预先存储了训练后的词向量模型以及训练后的多层循环神经网络。服务器104获取通过词向量模型训练得到的多个词对应的权重向量,利用多个词对应的权重向量生成权重矩阵。服务器104获取所述商品项的多个词对应的编码,将多个词的编码输入至训练后的多层循环神经网络。通过训练后的多层循环神经网络,基于多个词的编码以及权重矩阵进行运算,输出商品项对应的预设格式的描述。由此可以将多种不同格式的原始商品信息转换为统一格式的描述。

在一个实施例中,如图2所示,提供了一种商品信息格式处理方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:

步骤202,获取商品信息,商品信息包括多个商品项。

步骤204,对商品项的内容进行分词处理,得到多个词。

服务器接收多个终端上传的商品文件。商品文件中记录了多种商品信息。商品信息中包括了多个商品项,每个商品项中又包括了具体的内容,即详细信息描述。当商品文件来源于不同的用户时,同一商品项的具体内容可以不同。例如商品项为“硬盘”时,对应的内容可能被描述为“硬盘容量128gb缓存容量32mb”,也可能被描述为“128gb32mb”。

服务器对每个商品项的详细信息描述进行分词处理。例如,服务器将商品项“硬盘”的其中一种详细信息描述切分为“硬盘”、“容量”、“128”、“gb”、“缓存”、“容量”、“32”、“mb”,得到多个词。

步骤206,获取通过词向量模型训练得到的多个词对应的权重向量,利用多个词对应的权重向量生成权重矩阵。

在多层循环神经网络中可以包含多层隐含层。隐含层包括向前推算层以及向后推算层,这也可以称为是双向推算的隐含层。第一层的隐含层包括第一向前推算层和第一向后推算层,第二层的隐含层包括第二向前推算层和第二向后推算层,第三层的隐含层包括第三向前推算层和第三向后推算层,以此类推。

输入层与第一层的隐含层之间设置了相应的权重矩阵,即输入层与第一向前推算层以及输入层与第一向后推算层之间分别设置了相应的权重矩阵。在传统的方式中,第一向前推算层和第一向后推算层所对应的权重矩阵均被初始化为随机向量,但这可能会导致多层循环神经网络的收敛效果较差,输出结果无法满足要求。

在本实施例中,服务器采用商品项中多个词对应的权重矩阵作为多层循环神经网络中输入层与第一隐含层之间的权重矩阵。该权重矩阵是通过对词向量模型训练得到的。该权重向量能够反映商品项中每个词的矢量,有效提高多层循环神经网络的收敛效率,从而能够提高输出效果的准确性。

其中,第一向前推算层和第一向后推算层各自对应的权重矩阵互不相同。服务器按照商品项中多个词的描述顺序可以获取每个词对应的权重向量,每个词对应的权重向量可以是一个向量数组。服务器利用多个词对应的权重向量,生成多个词对应的向前推算的权重矩阵。服务器按照商品项中多个词相反的描述顺序可以获取相应每个词的权重向量,进而生成多个词对应的向后推算的权重矩阵。向前推算的权重矩阵即为多层循环神经网络中输入层与第一向前推算层之间的权重矩阵。向后推算的权重矩阵即为多层循环神经网络中输入层与第一向后推算层之间的权重矩阵。

继续以上述商品项“硬盘”为例,服务器可以按照“硬盘”、“容量”、“128”、“gb”、“缓存”、“容量”、“32”、“mb”的顺序生成向前推算的权重矩阵。服务器也可以按照“mb”、“32”、“容量”、“缓存”、“gb”、“128”、“容量”、“硬盘”的顺序生成向后推算的权重矩阵。

步骤208,获取商品项的多个词对应的编码,将多个词的编码输入至训练后的多层循环神经网络。

步骤210,通过训练后的多层循环神经网络,基于多个词的编码以及权重矩阵进行运算,输出商品项对应的预设格式的描述。

多层循环神经网络中的多层隐含层可以是2层、4层或者6层等。其中,每一层隐含层都包括向前推算层以及向后推算层。如图3至图5所示,分别为2层、4层、6层循环神经网络在时间上的展开图。其中,relu表示激活函数,lstm表示长短时记忆单元,softmax表示分类函数。w*(*表示正整数)表示权重矩阵。由展开图上可以看出,每一层向前推算层以及每一层向后推算层都设置了对应的初始权重矩阵。例如,图3中的w2、w5,图4中的w3、w5、w6、w8,以及图5中的w3、w5、w7、w8、w10、w12。

多层循环神经网络可以是预先训练好的。多层循环神经网络在训练时,可以利用商品信息对应的映射文件进行训练,映射文件中记录了商品项中多个训练词的原始描述与预设格式的描述。由此可以使得商品项中多个词的原始描述按照预设格式输出。由于多层循环神经网络只接受数值输入,因此在训练时,服务器还会根据训练词生成相应的训练词汇表。训练词汇表中包含每个训练词对应的编码。当服务器对商品项进行分词处理后,可以通过该训练词汇表查询每个商品项的词所对应的编码。

服务器调用训练后的多层循环神经网络,将商品项的多个词的编码输入至多层循环神经网络的输入层。输入层通过激活函数激活第一向前推算层的权重矩阵,以及激活第一向后推算层的权重矩阵,结合第一向前推算层的初始权重矩阵以及第一向后推算层的初始权重矩阵开始进行运算。其中,向前推算层与向后推算层之间没有信息流。

以训练后的多层循环神经网络为4层循环神经网络为例进行说明。输入层中输入的多个词可以是“硬盘”、“容量”、“128”、“gb”、“缓存”、“容量”、“32”、“mb”。如图4所示,w1为第一向前推算层的权重矩阵,w3为第一向前推算层的初始权重矩阵,经过lstm运算之后,分别输出向前推算的权重矩阵w3(此时的w3与初始的w3已不同,这里是为了简洁描述采用了相同的标记)以及第二向前推算层所对应的权重矩阵w4。w2为第一向后推算层的权重矩阵,w6为第一向后推算层的初始权重矩阵,经过lstm运算之后,分别输出向后推算的权重矩阵w6(此时的w6与初始的w6已不同,同样是为了简洁描述采用了相同的标记)以及第二向后推算层所对应的权重矩阵w7。以此类推进行循环,直至输出层通过分类函数依次输出每个词预设格式的描述。

例如,商品项为“硬盘”,原始信息为“seagate/st500lt012|003sdm1”,经过多层循环神经网络运算之后,可以输出为如下统一的格式:

“brand:seagate,type:hdd,size:500,cache:nan,product_no:st500lt012,rpm:nan”。由于商品项中每个词都采用了预设格式的描述,由此可以将多种不同格式的原始商品信息转换为统一格式的描述。服务器中部署了数据库,服务器对商品文件处理进行格式处理之后,将统一格式描述的商品文件存储在数据库中。

本实施例中,当需要对商品信息中原始描述进行格式统一时,服务器可以对商品项中的内容进行分词处理,得到商品项对应的多个词。服务器可以根据商品项的多个词获取相应的权重向量,继而生成多个词对应的权重矩阵。由于每个词的权重向量均是通过词向量模型训练得到的,由此能够准确反映每个词的矢量,有效提高多层循环神经网络的收敛效果,从而能够提高输出效果的准确性。服务器将商品项的多个词的编码输入至训练后的多层循环神经网络,通过训练后的多层循环神经网络利用多个词的编码以及权重矩阵进行运算,输出商品项对应的预设格式的描述。由于多层循环神经网络是经过训练的,可以使得商品项中每个词都能输出为预设格式的描述。整个过程无需开发多种模板以及构建专有词典,多种类型的商品信息均可输出所需的统一格式,实现了商品信息格式统一效率的提高。

在一个实施例中,该方法还包括:词向量模型训练以及多层循环神经网络训练的步骤。如图6所示,包括以下:

步骤602,获取与商品信息对应的训练集,训练集中包括多个商品项以及商品项对应的多个训练词。

步骤604,统计多个商品项中训练词的词汇数量,将最大词汇数量标记为最长输入参数。

步骤606,利用最长输入参数以及训练词,对词向量模型进行训练,得到训练词对应的权重向量。

步骤608,利用最长输入参数以及训练词对应的权重向量对多层循环神经网络进行训练,得到训练后的多层循环神经网络。

数据库中存储了大量的样本文件。样本文件中记录了相应的商品信息。服务器样本文件中记录的商品信息按特定比例标记为训练数据。词向量模型与多层循环神经网络可以通过训练数据预先进行训练。训练数据可以来源于已有的商品信息。训练数据中包括了商品项以及详细信息描述。服务器对每个商品项的详细信息描述进行分词处理,得到多个词。服务器对多个词进行数据清洗、输出格式统一化等预处理。例如,服务器对错误数据进行清洗,将“128gd”清洗为“128”。服务器对英文的大小写描述进行格式统一,将“seagate”、“seagate”、“seagate”统一为“seagate”。服务器将预处理后的词作为训练词,利用多个商品项以及商品项对应的训练词生成训练集。

由于不同的商品项的训练词的词汇数量不同。为了固定词向量模型与多层循环神经网络的模型结构,使得训练后的词向量模型以及训练后的多层循环神经网络具有通用性。本实施例中对词向量模型与多层循环神经网络均设置了最长输入参数以及最长输出参数。最长输入参数与最长输出参数的值相同。服务器可以统计多个商品项中训练词的词汇数量,将商品项中训练词的词汇数量中的最大词汇数量标记为最长输入参数。对于词汇数量小于最长输入参数的商品项,服务器可以根据该商品项的词汇数量与最长输入参数增加相应数量的预设字符。预设字符可以是与商品信息不冲突的字符,如空字符等。例如,最初输入参数为100,相应的最长输出参数也为100,假设某个商品项的词汇数量为30,则服务器为该商品项增加70个预设字符。

服务器利用训练词以及最长输入参数补入的预设字符对词向量模型进行训练,由此得到每个训练词以及预设字符对应的权重向量。词向量模型可以采用skip-gram模型,即该模型可以采用神经网络结构,包括输入向量、隐含层以及输出层。在传统的方式中,是通过该模型的输出层输出最终结果,而最终结果是一个概率分布。这种概率分布并不适用于多层循环神经网络。因此,本实施例中,仅采用该模型的输入向量与隐含层的结构,通过隐含层输出多个词的权重向量即可,不再继续通过输出层进行运算。

由于词向量模型以及多层循环神经网络只接受数值输入,因此在训练时,服务器还会根据训练词生成相应的训练词汇表。考虑到最长输入参数,训练词汇表中还会记录部分预设字符。训练词汇表中包含每个训练词对应的编码。服务器根据训练词对应的编码生成词向量模型的输入向量,通过隐含层进行运算,输出对应的训练权重矩阵。训练权重矩阵中包括多个训练词以及预设字符对应的权重向量。服务器调用多层循环神经网络,根据最长输入参数获取多个训练词以及预设字符所对应的编码,将其输入至多层循环神经网络进行训练。

在训练的过程中,由于采用了词向量模型训练得到的每个训练词权重向量,由此能够更加准确的反映每个训练词的矢量状况,有效提高多层循环神经网络的收敛效果,从而能够提高多层循环神经网络训练的准确性。通过设置最长输入参数,使得每个商品项对应的词汇量均达到与最长数据参数相同的数量,即使得每个商品项对应的词汇量均相同,由此使得训练后的词向量模型以及训练后的多层循环神经网络具有通用性。无需训练多种模型,有效减少了开发人员的工作量。

在一个实施例中,利用最长输入参数以及训练词对词向量模型进行训练,得到训练词对应的权重向量包括:获取与商品信息对应的语料库,语料库中包括多个语料词;语料词中包括部分预设字符;利用语料词对词向量模型进行训练,得到语料权重矩阵;语料权重矩阵包括多个语料权重向量;利用预设字符将多个商品项的训练词的词汇数量增加至与最长输入参数相同的数量;根据增加词汇数量后的商品项,在语料权重矩阵中选择训练词以及一个或多个预设字符对应的语料权重向量,标记为训练词对应的输入向量;通过词向量模型加载多个输入向量,通过词向量模型的隐含层进行训练得到训练权重矩阵,训练权重矩阵包括多个训练词以及预设字符对应的权重向量。

为了进一步提高多层循环神经网络的收敛效果,从而能够提高多层循环神经网络训练的准确性,服务器还可以对词向量模型的训练过程进行优化。具体的,服务器可以在多个网站爬取与商品信息对应的多种语料文章,通过对语料文章进行预处理,包括分词、清洗、统一描述格式等。服务器利用预处理后的语料词建立语料库。其中考虑到最长输入参数的设置,语料库中也可以包括部分预设字符。服务器对语料库中的每个语料词以及预设字符进行编码,得到对应的语料输入向量。服务器将多个语料输入向量输入词向量模型的输入层,通过隐含层进行训练,得到语料权重矩阵。语料权重矩阵包括了多个语料权重向量。

服务器将每个商品项的词汇数量增加到最长数据参数。服务器在语料权重矩阵中选择训练词以及一个或多个预设字符对应的语料权重向量,标记为训练词对应的输入向量。词向量模型加载多个输入向量,通过词向量模型的隐含层进行训练得到多个训练词以及预设字符对应的训练权重矩阵。

在一个实施例中,利用最长输入参数、训练词以及训练词对应的权重向量对多层循环神经网络进行训练,得到训练后的多层循环神经网络包括:获取商品信息对应的映射文件,映射文件中记录了商品项中多个训练词的原始描述与预设格式的描述;利用预设字符将多个商品项的训练词的词汇数量增加至与最长输入参数相同的数量;将训练词以及预设字符对应的权重向量生成与商品项对应的训练权重矩阵;将增加词汇数量后的商品项中的训练词、预设字符以及对应的权重向量矩阵,通过多层循环神经网络进行训练,输出商品项中多个训练词预设格式的描述。

服务器中预先存储了商品信息对应的映射文件,映射文件中记录了商品项中多个训练词的原始描述与预设格式的描述。例如,商品项为“硬盘”,原始信息为“seagate/st500lt012|003sdm1”,经过多层循环神经网络运算之后,可以输出为如下统一的格式:

“brand:seagate,type:hdd,size:500,cache:nan,product_no:st500lt012,rpm:nan”。由于商品项中每个词都采用了预设格式的描述,由此可以将多张不同格式的原始商品信息转换为统一格式的描述。

可以参照上述实施例中的方式,服务器利用预设字符将多个商品项的训练词的词汇数量增加至与最长输入参数相同的数量,使得每个商品项中的词汇数量相同。利用上述实施例中通过词向量模型得到的训练权重矩阵,服务器分别获取每个商品项中多个训练词以及预设字符对应的权重向量,继而生成每个商品项对应的训练权重矩阵。其中,服务器可以参照上述实施例生成每个商品项对应的向前推算的训练权重矩阵,以及向后推算的训练权重矩阵。

参照上述实施例中的方式,服务器获取每个商品项中多个词以及预设字符对应的编码,将相应编码输入至多层循环神经网络的输入层,将向前推算的训练权重矩阵设置为第一向前推算层的权重矩阵,将向后推算的训练权重矩阵设置为第一向后推算层的权重矩阵。对隐含层中各层向前推算层的初始权重矩阵进行初始化,以及对隐含层中各层向后推算层的初始权重矩阵进行初始化。在初始化之后,服务器对多层循环神经网络进行训练,输出商品项中多个训练词预设格式的描述。

例如,最长输入参数为100,则多层循环网络中的第一向前推算层的权重矩阵可以设置100个,多层循环神经网络中的第一向后推算层的权重矩阵可以设置100个,即商品项中每个训练词以及预设字符在循环训练时都被配置了相应的权重矩阵。多层循环网络同样会输出100个结果,即按照训练词预设格式的描述。对于预设字符的输出,还可以是预设字符。对训练结果不会造成影响。利用最长输入参数对多层循环神经网络进行训练后,可以使得训练后的多层循环神经网络可以适应用多样化的商品信息。

在采用传统模板匹配的方式中,通过映射表为每个训练词设置了对应的输出格式,商品项中每个的原始描述与输出描述是一一对应的。如果商品项相同,而原始信息不同时,两个商品项的输出格式还是不能统一。而本实施例中,通过多层循环网络进行训练,可以使得每个商品项中的原始描述与输出描述不是一一对应,而是确保了每个商品项都按照预设的统一格式输出。

在其中一个实施例中,多层循环神经网络包括多个隐含层;将增加词汇数量后的商品项中的训练词、预设字符以及对应的权重向量矩阵,通过所述多层循环神经网络进行训练包括:向每层隐含层分配随机向量作为隐含层的初始权重矩阵;根据最长输入参数在输入层与第一层隐含层设置与增加词汇数量后的商品项相对应的训练权重矩阵;将增加词汇数量后的商品项的训练词所对应的编码以及预设字符对应的编码输入至多层循环神经网络的输入层;多层隐含层利用初始权重矩阵以及训练权重矩阵进行训练,通过输出层输出商品项中多个训练词预设格式的描述。

服务器通过训练词对多层循环神经网络进行训练时,需要对每层隐含层进行初始化。每层隐含层都可以包括向前推算层和向后推算层。每层隐含层的向前推算层和向后推算层都需要进行初始化。在传统的方式中,每层隐含层的向前推算层和向后推算层对应的初始权重矩阵均被初始化为0,但是这种方式训练得到的多层循环神经网络的泛化能力受限,如果将来有更多不同格式的商品信息时,有可能需要重新训练。

本实施例中,在初始化时,服务器向每层隐含层的向前推算层和向后推算层分配随机向量作为初始权重矩阵。随机向量可以是预设长度的数组,例如,可以是200维或300维。在初始化完成之后,服务器在输入层与第一层隐含层设置与增加词汇数量后的商品项相对应的训练权重矩阵,将增加词汇数量后的商品项的训练词所对应的编码以及预设字符对应的编码输入至多层循环神经网络的输入层。可以参数上述实施例中提供的方式,通过多层隐含层利用初始权重矩阵以及训练权重矩阵进行训练,通过输出层输出商品项中多个训练词预设格式的描述。

由于每层隐含层在初始化时配置随机向量作为初始权重矩阵,由此能够有效提高多层循环神经网络的泛化能力,能够在将来适用于更加多样化的商品信息。而且通过设置最长输入参数,使得每个商品项对应的词汇量相同,由此使得训练后的词向量模型以及训练后的多层循环神经网络具有通用性。无需训练多种模型,有效减少了开发人员的工作量。

在一个实施例中,该方法还包括:获取多个训练集对应的样本文件数量;获取验证集,验证集中包括多个商品项的词;利用验证集对多个训练集在通过训练后输出的商品项的预设格式进行验证;当验证的准确度达到阈值时,将初次达到阈值对应的样本文件数量标记为最大批量训练的样本文件数量。

多层循环神经网络可以对多个样本中的训练词进行批量训练。如果批量训练的样本文件数量过少,则多层循环神经网络无法学习到样本文件中存在的商品信息的多样性。如果批量训练的样本文件数量过多,则多层循环神经网络无法准确记忆到多样化的商品信息,而且性能也会受到影响。因此,在多层循环神经网络进行训练时,需要确定最大批量训练的样本文件数量。

本实施例中,服务器可以分别获取不同数量的多个样本文件生成训练集。通过词向量模型以及多层循环神经网络进行训练,得到每个样本文件数量对应的输出结果。服务器中还可以预先利用其他样本文件中的商品信息生成验证集。验证集中包括了多个商品项对应的词。服务器将每个样本文件数量对应的输出结果与验证集中的词进行比对,由此得到样本文件数量对应的准确度。

当准确度达到阈值时,服务器可以将初次达到阈值时的样本文件数量标记为最大批量训练的样本文件数量。进一步的,服务器还可以利用不同样本文件数量与其对应的准确度绘制相应的曲线。曲线可能存在波动。当曲线对应的准确对达到阈值时,计算阈值对应的多个样本文件数量之间的差值比例是否小于或等于预设比例。若是,则将初次小于或等于预设比例的样本文件数量标记为最大批量训练的样本文件数量。例如,准确度达到阈值的样本文件数量包括s1、s2、s3、s4,其中s1<s2<s3<s4。预设比例假设为2%,如果(s2-s1)/s1≦2%,(s3-s1)/s1≦2%,(s4-s1)/s1≦2%,则将s1标记为最大批量训练的样本文件数量。由此通过最大批量训练的样本文件数量使得多层循环神经网络进行批量训练时,能够有效学习商品信息的多样化,从而提供了多层循环神经网络的泛化能力。

应该理解的是,虽然图2与图6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2与图6中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图7所示,提供了一种商品信息格式处理装置,包括:信息获取模块702、分词处理模块704、权重矩阵生成模块706和格式统一化模块708,其中:

信息获取模块702,用于获取商品信息,商品信息包括多个商品项。

分词处理模块704,用于对商品项的内容进行分词处理,得到多个词。

权重矩阵生成模块706,用于获取通过词向量模型训练得到的多个词对应的权重向量,利用多个词对应的权重向量生成权重矩阵。

格式统一化模块708,用于获取商品项的多个词对应的编码,将多个词的编码输入至训练后的多层循环神经网络;通过训练后的多层循环神经网络,基于多个词的编码以及所述权重矩阵进行运算,输出商品项对应的预设格式的描述。

在一个实施例中,该装置还包括:第一训练模块710和第二训练模块712,其中:

第一训练模块710,用于获取与商品信息对应的训练集,训练集中包括多个商品项以及商品项对应的多个训练词;统计多个商品项中训练词的词汇数量,将最大词汇数量标记为最长输入参数;利用最长输入参数以及训练词对词向量模型进行训练,得到训练词对应的权重向量。

第二训练模块712,用于利用最长输入参数以及训练词对应的权重向量对多层循环神经网络进行训练,得到训练后的多层循环神经网络。

在一个实施例中,第一训练模块710还用于获取与商品信息对应的语料库,语料库中包括多个语料词;语料词中包括部分预设字符;利用语料词对词向量模型进行训练,得到语料权重矩阵;语料权重矩阵包括多个语料权重向量;利用预设字符将多个商品项的训练词的词汇数量增加至与最长输入参数相同的数量;根据增加词汇数量后的商品项,在语料权重矩阵中选择训练词以及一个或多个预设字符对应的语料权重向量,标记为训练词对应的输入向量;通过词向量模型加载多个输入向量,通过词向量模型的隐含层进行训练得到训练权重矩阵,训练权重矩阵包括多个训练词以及预设字符对应的权重向量。

在一个实施例中,第二训练模块712还用于获取商品信息对应的映射文件,映射文件中记录了商品项中多个训练词的原始描述与预设格式的描述;利用预设字符将多个商品项的训练词的词汇数量增加至与最长输入参数相同的数量;将训练词以及预设字符对应的权重向量生成与商品项对应的训练权重矩阵;将增加词汇数量后的商品项中的训练词、预设字符以及对应的权重向量矩阵,通过多层循环神经网络进行训练,输出商品项中多个训练词预设格式的描述。

在一个实施例中,第二训练模块712还用于向每层隐含层分配随机向量作为隐含层的初始权重矩阵;根据所述最长输入参数在输入层与第一层隐含层设置与增加词汇数量后的商品项相对应的训练权重矩阵;将增加词汇数量后的商品项的训练词所对应的编码以及预设字符对应的编码输入至多层循环神经网络的输入层;通过多层隐含层利用初始权重矩阵以及训练权重矩阵进行训练,使得输出层输出商品项中多个训练词预设格式的描述。

在一个实施例中,第二训练模块712还用于获取多个训练集对应的样本文件数量;获取验证集,验证集中包括多个商品项的词;利用验证集对多个训练集在通过训练后输出的商品项的预设格式进行验证;当验证的准确度达到阈值时,将初次达到阈值对应的样本文件数量标记为最大批量训练的样本文件数量。

关于商品信息格式处理装置的具体限定可以参见上文中对于商品信息格式处理方法的限定,在此不再赘述。上述商品信息格式处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储商品文件以及样本文件等。该计算机设备的网络接口用于与外部的服务器通过网络连接通信。该计算机程序被处理器执行时以实现一种商品信息格式处理方法。

本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现上述各个方法实施例中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各个方法实施例中的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1