CN109584006A - 一种基于深度匹配模型的跨平台商品匹配方法 - Google Patents
一种基于深度匹配模型的跨平台商品匹配方法 Download PDFInfo
- Publication number
- CN109584006A CN109584006A CN201811423859.8A CN201811423859A CN109584006A CN 109584006 A CN109584006 A CN 109584006A CN 201811423859 A CN201811423859 A CN 201811423859A CN 109584006 A CN109584006 A CN 109584006A
- Authority
- CN
- China
- Prior art keywords
- commodity
- similarity
- matching
- title
- attribute
- 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
Classifications
-
- 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
- G06Q30/0625—Directed, with specific intent or strategy
- G06Q30/0629—Directed, with specific intent or strategy for generating comparisons
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Biophysics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种基于深度匹配模型的商品匹配方法,其包括以下步骤:定义两个商品X、Y的标题相似度和属性相似度;计算得到两个商品X、Y的商品标题相似度和商品属性相似度;将两个商品X、Y的商品标题相似度SIMt和商品属性相似度SIMa进行融合,进而判断出两个商品是否匹配,是否属于同一种商品。本发明能计算出不同平台的两个商品的相似度,从而判断出这两个商品描述是否指的是同一个商品。
Description
技术领域
本发明涉及一种商品匹配方法,特别是关于一种基于深度匹配模型的跨平台的商品匹配方法。
背景技术
目前商品匹配的挖掘方法有很多,不同形式的商品描述信息通常需要采用不同的匹配方法。商品描述可以有多种形式,即商品可以以结构化的数据保存在数据库中,也可以以非结构化的数据存在于电商平台中。对于存储在数据库中的商品,匹配问题主要是对数据库中商品个体间匹配技术的解决;然而由于不同的数据库采取的设计模式是不同的,数据库商品个体匹配问题是有一定的挑战性。为了解决这个问题,针对记录联动、冗余检测和实体分解方面提出了一些方法。事实上,在真实的电商平台上,商品描述包括商品标题和商品详细信息列表(属性)。将电商平台上的商品描述和数据库中有结构化的商品进行匹配是一种真实场景。有研究者将商品标题转换为有结构的描述,然后将其与数据库中有结构化的商品进行匹配。同样,也有许多研究者直接关注电商平台上商品描述的匹配。
在之前的部分研究工作中,商品的描述会首先被转换成有结构的数据并保存在数据库中,然后这个问题便转换为匹配数据库中的商品这一问题。然而,这一想法会有两个缺点,一是商品的标题是一个短文本,将文本转换为有结构的数据将会丢失一些语义和句法信息。同时由于转换方法的效果相对差会引入一些噪音。此外,存在一些工作是直接对电商平台上商品标题进行匹配,也有一些工作是同时考虑商品标题和商品属性进行匹配。它们大多是使用不同的相似度计算的方法得到最后的结果,没有考虑语义信息进行匹配,而现在随着深度匹配方法逐渐被广泛提出和使用,将考虑语义信息的深度匹配模型应用在商品匹配问题中是一个可以选择的商品匹配方法。
随着互联网的发展和智能手机的出现,在线购物变得越来越普遍。人们越来越习惯用在线购物代替实体店的购买活动,这也导致各种各样在线平台的出现,例如亚马逊、Ebay、天猫和京东。因为不同的消费者偏爱于不同的平台,所以卖家经常在不同的平台上销售他们的商品。对于消费者来说,从一个电商平台上购买一个商品通常取决于他们对商品价格、质量和用户评价的比较。例如,如果同一个商品在多个不同的平台上销售,消费者倾向于选择便宜的商品。当这几个商品的价格和质量是类似的,他们更偏向于选择提供更好服务的卖家所销售的商品。同时,对于卖家和平台管理者来说,将他们的商品和竞争对手所销售的商品进行比较,是一种调价和促销的有效的方法。因此,在不同平台上识别出相同的商品是有价值的。
发明内容
针对上述问题,本发明的目的是提供一种基于深度匹配模型的跨平台商品匹配方法,其能计算出不同平台的两个商品的相似度,从而判断出这两个商品描述是否指的是同一个商品。
为实现上述目的,本发明采取以下技术方案:一种基于深度匹配模型的商品匹配方法,其包括以下步骤:1)定义两个商品X、Y的标题相似度和属性相似度;2)计算得到两个商品X、Y的商品标题相似度和商品属性相似度;3)将两个商品X、Y的商品标题相似度SIMt和商品属性相似度SIMa进行融合,进而判断出两个商品是否匹配,属于同一种商品。
进一步,所述步骤2)中,两个商品的相似度是通过商品标题和商品属性分别度量的,通过TMM和AMM分别得到商品标题匹配的相似度特征和商品属性匹配的相似度特征,将两种相似度特征组合后得到两个商品X、Y最后的匹配得分。
进一步,所述TMM利用Bi-LSTM和CNN来计算标题相似度,计算方法如下:(1)分别对两个商品标题进行位置句子表示;(2)将两个商品标题位置句子表示进行交互得到交互矩阵,通过该交互矩阵表示两个标题的匹配情况;(3)卷积和池化操作:获得交互矩阵后,采用经典的卷积神经网络来抽取匹配模式;(4)获取两标题相似度。
进一步,所述步骤(1)中,位置句子表示方法包括以下步骤:(1.1)给定输入的商品标题(x1,x2,...,xt,...,xm),词xt的位置句子表示ht是由前向的LSTM的隐含层向量和反向的LSTM的隐含层向量拼接的:
(1.2)对于LSTM的每一个隐含层的输出,都是通过遗忘门、输入门和输出门三个门进行控制,前向的LSTM的隐含层向量为:
其中:
其中,tanh(.)和σ(.)是激活函数,其中tanh(.)用在状态和输出上,是对数据的处理,σ(.)用在各种gate上,用于产生0到1之间的值;为忘记门,用于决定需要从细胞状态中丢弃多少信息;为输入门,用于确定什么样的新信息被存放在细胞状态中;是更新得到的细胞新状态,它是通过将旧状态与相乘,再加上当前细胞状态中的新信息得到的;是得到的输出值,这个输出是基于细胞状态得到的,其中的是输出层的一部分,用于确定细胞状态的哪些信息作为输出信息;(1.3)反向的LSTM定义与步骤(1.2)相同;(1.4)根据步骤(1.2)和步骤(1.3)的计算结果,得到标题(x1,x2,...,xt,...,xm)的位置表示为隐含层状态(h1,h2,...,ht,...,hm)。
进一步,所述步骤(3)中,获得交互矩阵后,采用经典的卷积神经网络来抽取匹配模式:(3.1)假设一个卷积核zt属于Rr×s,它表示第t个卷积核;对于每一个卷积核,都从左到右、从上到下滑动,之后一个卷积核对应输出一个特征映射Ft:
其中,是第t个卷积核第x行第y列的元素,Mrow+x,col+y是交互矩阵中第row+x行第col+y列的元素,是第t个特征映射Ft的第row行第col列的元素;(3.2)采用最大池化操作来获得每一个特征映射的最重要的信息
其中,dk是对应池化核的宽度,d′k是对应池化核的长度;表示第t个池化层的第e行第f列的元素;表示第t个卷积核对应得到的特征映射中第e·dk+a行第f·d'k+b列的元素。
进一步,所述步骤(4)中,获取两标题相似度方法为:将池化层的输出压平然后拼接在一起做为G,G表示通过以上三个步骤获得的用于表示商品标题匹配的特征,然后使用多层感知机得到标题匹配的相似度SIMt:
SIMt=tanh(W·G+b)
其中,W和b是是参数,是多层感知机的参数,tanh(·)是非线性激活函数,用于将商品标题匹配的特征进行非线性转化得到最后的商品标题匹配相似度。
进一步,所述AMM中两个商品属性之间的相似度计算方法如下:(1)属性名匹配;(2)属性值匹配;(3)属性相似度:将两种匹配特征拼接得到一个的向量,然后将这个拼接的向量传入一个两层的多层感知机,以使得属性名匹配特征和属性值匹配特征进行融合;最后获得属性匹配相似度SIMa:
SIMa=tanh(W′·[GN∶GV]+b′)
其中,W′和b′是多层感知机的参数,其中W′表示节点和节点之间的权重变量,b′是偏置向量。
进一步,所述步骤(1)中,属性名匹配方法包括以下步骤:(1.1)对于两个商品的属性名词集合,构造一个用于衡量属性名集合之间语义相似度的交互矩阵,交互矩阵中的元素是词与词之间的相似度,且相似度是根据词向量计算的;(1.2)得到交互矩阵之后,采用K最大池化抽取最大的K个匹配特征,这些特征表示属性名中词之间的最大的相似度,得到的这些特征做为两个商品的属性名集合之间的匹配相似度特征;之后将它与属性值集合之间的匹配相似度特征进行拼接得到属性匹配的相似度特征;(1.3)属性名中的词和的相似度的计算公式为:
其中,e(·)表示的是词对应的词向量,×是点积操作。
进一步,所述步骤(2)中,属性值匹配方法包括以下步骤:(2.1)采用指示函数来构建交互矩阵MV,若两个商品的属性值词集合的长度分别是q和q',则该交互矩阵的大小是q×q';(2.2)得到交互矩阵之后,采用L个卷积核进行卷积操作来抽取匹配特征,以抽取多种匹配模式;卷积核的大小是q×1,其沿着水平方向进行滑动;(2.3)卷积处理后可以获得L个匹配模式,将这些匹配模式压平作为属性值匹配的特征:第t个卷积核z't作用在交互矩阵MV上,然后输出一个匹配特征模式F't,其中第r个元素的匹配特征为:
的大小是1×q';将匹配特征拼接和压平之后,获得属性值匹配整体特征GV的大小是(q'×L)×1;(2.4)属性值和的相似度的计算公式是:
其中,⊙表示指示函数,它的定义公式是:
进一步,所述步骤3)中,对商品标题相似度SIMt和商品属性相似度SIMa进行融合分为分类和排序两种模式;分类模式是模拟消费者行为产生的,他们经常选择两个商品,然后根据它们的描述比较它们是否相同;在这种模式下,输入是包括商品标题和商品属性的两个商品描述,输出是两个类别,1表示两个商品是相同的,0表示两个商品是不同的;所述分类模式中,将商品标题相似度SIMt和商品属性相似度SIMa拼接在一起,然后将它们输入到MLP产生两类分类的概率,有高概率的那一类看做是预测的结果;排序模式是出于卖家或者平台管理者的角度,他们使用他们自己的商品作为查询商品来检索出其他平台上由其他卖家销售的同一类的商品;在这个模式中,输入是一个查询商品描述和一个候选商品描述列表,输出是一个经过重排后的候选商品描述列表;将商品标题相似度SIMt和商品属性相似度SIMa拼接在一起,然后将它们输入到MLP得到查询商品和给定一个候选商品之间的匹配得分,所有的候选商品将会根据匹配得分进行重排得到最后的结果列表。
本发明由于采取以上技术方案,其具有以下优点:1、本发明利用电商平台上的商品标题和商品属性信息进行商品匹配,并且使用深度学习的方法构建了商品匹配模型来自动学习商品之间的相似度。同时深度商品匹配模型包括了商品标题匹配子模型和商品属性匹配子模型。这两个子模型分别根据商品标题和商品属性的不同的特点进行构建,从而得到商品标题匹配特征和商品属性匹配特征,最终得到商品匹配整体的相似度以此得出这两个商品描述是否指的是同样的商品。2、不同于其他的商品匹配方法,本发明的商品匹配方法可以自动选择并学习匹配特征,而不需要提前计算出特征。由于商品标题和商品属性信息格式的不同,本发明采用不同的网络结构计算特征。对商品标题匹配,同时使用Bi-LSTM和CNN抽取商品标题的匹配特征。对于属性匹配,分别考虑属性名集合之间的匹配、属性值集合之间的匹配。在属性名集合之间的匹配中考虑了语义表示构建匹配矩阵,并使用K最大池化从中抽取特征。在属性值集合之间的匹配中重点关注实匹配,且设计了一种特殊的卷积方式抽取特征。3、本发明使用了排序场景和分类场景两种应用场景应用商品匹配模型。分类场景用于判断两种商品是否是匹配的商品,排序场景根据商品匹配的相似度进行排序,这两种场景是模拟消费者、卖家行为购买商品时的比较行为,结果表明本发明在这两种场景中能够很好的应用。不同的排序场景仅仅通过设置不同的损失函数实现,而不需要改变整体的网络结构。本发明将商品匹配问题转化为常见的分类和排序问题从而达到目的。
附图说明
图1是本发明的商品匹配方法流程示意图;
图2是本发明的TMM的结构示意图;
图3是本发明的AMM的结构示意图;
图4是不同电商平台上的商品举例示意图。
具体实施方式
考虑利用电商平台上的商品标题和商品属性信息进行商品匹配,并根据商品标题和商品属性的不同特点提出了一个深度商品匹配模型PMM。PMM包含两个子模型TMM和AMM。模型的目标是计算不同平台的两个商品的相似度,从而判断出这两个商品是否指的是同一个商品。举例解释商品匹配问题,如图4所示,展示了电商平台上的三个真实商品(a)、(b)、(c),其中(a)和(b)是两个平台上销售的相同的商品,但是它们的商品标题信息和商品属性信息都是不同的。(a)和(c)商品的净含量和适应人群不同,因此它们是不同的商品。我们模型的最终目标是判断出(a)和(b)是相同的商品,(a)和(c)是不同的商品,也就是(a)和(b)之间的相似度是高于(a)和(c)之间的相似度。下面结合附图和实施例对本发明进行详细的描述。
本发明提供一种基于深度匹配模型的商品匹配方法,其目的是根据标题相似度和属性相似度识别出两个商品是否是相同的商品;整个商品匹配方法对应一个商品匹配模型PMM和分类与排序两个应用场景;PMM中的商品标题匹配相似度和商品属性匹配相似度是使用两个不同的子模型进行度量,且这两个子模型共同训练得到最后的商品匹配相似度。
如图1所示,本发明的方法包括以下步骤:
1)定义两个商品X、Y的标题相似度和属性相似度;
假定有两个商品X和Y,商品X的标题用一个词列表表示为(x1,x2,...,xi,...,xm),其中xi是标题中的第i个单词并且m是标题的长度,商品的属性是属性名和属性值的集合,为{(k1:v1),(k2:v2),...,(kj:vj),...,(kp:vp)},(kj:vj)是商品的第j个属性;其中包含属性名kj和属性值vj;j=1、2、…、p,p是属性的数量。其中,属性名和属性值包含多个单词。把属性名的词集合表示为属性值的词集合表示为 表示商品X属性名中的词,表示商品X属性值中的词;g=1、2、...、u,u是属性名词集合的词数;h=1、2、...、q,q是属性值词集合的词数;k用于标识这个词属于商品X属性名中的词,v用于标识这个词属于商品X属性值中的词。
对于商品Y,标题是(y1,y2,...,yn),属性是{(k1':v1'),(k'2:v'2),...,(k'j:v'j),...,(k'p:v'p)}。属性的词集合是和kj′表示商品Y的属性名,vj′表示商品Y的属性值,表示商品Y属性名中的词,表示商品Y属性值中的词。'k用于标识这个词属于商品Y属性名中的词,'v用于标识这个词属于商品Y属性值中的词。
则两个商品X、Y的标题词集合(x1,x2,...,xi,...,xm)和(y1,y2,...,yn)的相似度定义为商品标题相似度,属性集合{(k1:v1),(k2:v2),...,(kj:vj),...,(kp:vp)}和{(k1':v1'),(k'2:v'2),...,(k'j:v'j),...,(k'p:v'p)}的相似度定义为属性相似度。
2)计算得到两个商品X、Y的商品标题相似度和商品属性相似度;
两个商品的相似度是通过商品标题和商品属性分别度量的,通过TMM和AMM分别得到商品标题匹配的相似度特征和商品属性匹配的相似度特征,将两种相似度特征组合后得到两个商品X、Y最后的匹配得分。
其中,如图2所示,TMM中两个商品标题之间的相似度计算方法如下:
电商平台上的商品描述通常包括商品标题和商品属性信息,而当只有商品标题可以使用时,现有的文本匹配模型可以应用于商品匹配;受现有的文本匹配模型的启发,并结合商品标题的特点,本发明设计了一个商品标题匹配模型。
对于许多文本匹配模型,RNN(循环神经网络)考虑句子的时序信息,而CNN(卷积神经网络)用于摘录抽取局部信息;将商品标题看做是一个短句,受现有文本匹配模型的启发,TMM利用Bi-LSTM和CNN来计算标题相似度,其中Bi-LSTM是一种特殊的RNN。
(1)分别对两个商品标题进行位置句子表示。
为了实现位置句子表示,采用Bi-LSTM(双长短时记忆)进行表示,因为它通过采用两个不同方向的LSTM进行句子表示以此考虑当前词前后的信息。
(1.1)给定输入的商品标题(x1,x2,...,xt,...,xm),词xt的位置句子表示ht是由前向的LSTM的隐含层向量和反向的LSTM的隐含层向量拼接的:
(1.2)对于LSTM的每一个隐含层的输出,都是通过遗忘门、输入门和输出门三个门进行控制,前向的LSTM的隐含层向量为:
其中:
其中,tanh(.)和σ(.)是激活函数,其中tanh(.)用在状态和输出上,是对数据的处理,σ(.)用在各种gate上,用于产生0到1之间的值;为忘记门,用于决定需要从细胞状态中丢弃多少信息;为输入门,用于确定什么样的新信息被存放在细胞状态中;是更新得到的细胞新状态,它是通过将旧状态与相乘,再加上当前细胞状态中的新信息得到的;是得到的输出值,这个输出是基于细胞状态得到的,其中的是输出层的一部分,用于确定细胞状态的哪些信息作为输出信息。为了减少符号冗余,采用相同的符合xt来表示词xt的词向量,词向量是由Word2vec技术获得的。
(1.3)反向的LSTM定义与步骤(1.2)相同。
(1.4)根据步骤(1.2)和步骤(1.3)的计算结果,得到标题(x1,x2,...,xt,...,xm)的位置表示为隐含层状态(h1,h2,...,ht,...,hm)。
(2)将两个商品标题位置句子表示进行交互得到交互矩阵,通过该交互矩阵表示两个标题的匹配情况。
交互矩阵中的每一个元素Mij表示词与词之间细粒度的交互,即词xi和yj之间的相似度。Mij为:
其中,和分别是词xi和yj在当前位置的句子表示。可以使用多种×操作来进行两个词的交互,本发明中采用点积操作计算词与词之间的相似度。如果两个商品标题的长度分别是m和n,那么交互矩阵的大小是m×n。
(3)卷积和池化操作:获得交互矩阵后,采用经典的卷积神经网络(CNN)来抽取匹配模式。
(3.1)假设一个卷积核zt属于Rr×s,它表示第t个卷积核。对于每一个卷积核,都从左到右、从上到下滑动,之后一个卷积核对应输出一个特征映射Ft:
其中,是第t个卷积核第x行第y列的元素,Mrow+x,col+y是交互矩阵中第row+x行第col+y列的元素,是第t个特征映射Ft的第row行第col列的元素。
使用不同的卷积核可以得到不同的特征映射,不同的卷积核的参数是不共享的,因此不同的映射可以抓住不同的匹配模式。
(3.2)采用最大池化操作来获得每一个特征映射的最重要的信息
其中,dk是对应池化核的宽度,d′k是对应池化核的长度;表示第t个池化层的第e行第f列的元素;表示第t个卷积核对应得到的特征映射中第e·dk+a行第f·d'k+b列的元素。
(4)获取两标题相似度:将池化层的输出压平然后拼接在一起做为G,G表示通过以上三个步骤获得的用于表示商品标题匹配的特征,然后使用多层感知机(MLP)得到标题匹配的相似度SIMt:
SIMt=tanh(W·G+b)
其中,W和b是参数,是多层感知机的参数,tanh(·)是非线性激活函数,用于将商品标题匹配的特征进行非线性转化得到最后的商品标题匹配相似度。
如图3所示,AMM中两个商品属性之间的相似度计算方法如下:
对于同一个范畴的商品,属性名称是类似的。例如,如图4所示,商品(a)和商品(c)是不同的商品,但是它们都是洗发水,因此它们有一些相似的属性名,例如产地和净含量。但是属性名也会使用不同的词表达相同的意思,例如“功能”和“功效”。因此,本实施例中选择根据词向量计算匹配矩阵来表示两个商品的属性名集合之间的相似度。然后使用最大池化操作来抽取最重要的匹配模式。而对于属性值来说,是有所不同的。对于商品(a)和商品(c),它们都有属性“净含量”,但是它们的属性值是不同的,分别是“750ml”和“730ml”。因为它们的净含量是不同的,这两个商品是不同的。由此看出属性值是关键的,因此不能根据词的向量来计算属性值的相似度。“750ml”和“730ml”在向量空间上是相近的,但是它们是完全不同的词。对于属性值,使用指示函数构建匹配矩阵,同时使用一个特殊的卷积操作抽取匹配特征。商品属性的相似度是由属性值的匹配特征和属性名匹配特征共同得到的。
AMM用于进行商品属性匹配,由于商品的属性格式与商品的标题格式是不同的,所以采用与TMM不同的商品属性匹配子模型。在AMM中,属性名和属性值是进行单独处理的,对于两个商品的属性名集合之间的匹配,两个商品的属性名集合包括越多语义相似的属性名,这两个商品越相似,所以本发明直接使用最大池化操作抽取特征并得到商品属性名匹配特征。对于属性值的匹配,考虑到属性值的特点,本发明设计并使用1D卷积操作抽取匹配特征并得到商品属性值匹配特征。最后将商品属性名匹配特征和商品属性值匹配特征拼接起来作为商品属性匹配的特征,并将其输入到MLP中得到两个商品属性之间的整体的相似度。
AMM的输入格式是两个商品的属性名的词集合和属性值的词集合。对于商品X,它的属性名的词集合是属性值的词集合是对于商品Y,属性名的词集合和属性值的词集合分别是和两个商品属性的匹配指的是商品属性名的词集合之间的匹配和商品属性值的词集合之间的匹配,则两个商品属性之间的相似度计算如下:
(1)属性名匹配:
(1.1)对于两个商品的属性名词集合,首先构造一个用于衡量属性名集合之间语义相似度的交互矩阵,交互矩阵中的元素是词与词之间的相似度,且相似度是根据词向量计算的。例如,如图4所示,属性名“功能”和“功效”有着较高的语义相似度。
(1.2)得到交互矩阵之后,采用K最大池化抽取最大的K个匹配特征,这些特征表示属性名中词之间的最大的相似度,得到的这些特征做为两个商品的属性名集合之间的匹配相似度特征。之后将它与属性值集合之间的匹配相似度特征进行拼接得到属性匹配的相似度特征。
K最大池化为:
GN=maxK{MN}
其中,MN是两个商品属性名词集合得到的交互矩阵,GN是一个大小为K×1的向量,表示的是属性名称匹配的特征。
(1.3)属性名中的词和的相似度的计算公式为:
其中,e(·)表示的是词对应的词向量,×是点积操作。
(2)属性值匹配:
(2.1)对于属性值匹配来说,因为两个不同的属性值的存在是一个较强烈的信号,所以根据词向量计算相似度是不适用的。在本实施例中,采用指示函数来构建交互矩阵MV,若两个商品的属性值词集合的长度分别是q和q',则该交互矩阵的大小是q×q′。
(2.2)得到交互矩阵之后,采用L个卷积核进行卷积操作来抽取匹配特征,以抽取多种匹配模式。卷积核的大小是q×1,其沿着水平方向进行滑动,目的是对于商品X中的每一个属性值词,考虑商品Y中的所有相同的词。
(2.3)卷积处理后可以获得L个匹配模式,将这些匹配模式压平作为属性值匹配的特征:第t个卷积核z't作用在交互矩阵MV上,然后输出一个匹配特征模式F't,其中第r个元素的匹配特征为:
的大小是1×q'。将匹配特征拼接和压平之后,获得属性值匹配整体特征GV的大小是(q'×L)×1。
(2.4)属性值和的相似度的计算公式是:
其中,⊙表示指示函数,它的定义公式是:
通过这个指示函数,属性值集合中两个不同的单词不能匹配,也就是对于“730ml”和“750ml”来说,它们的相似度是0。
(3)属性相似度:
考虑属性名和属性值的匹配,AMM分别得到属性名匹配特征和属性值匹配特征两种匹配特征。为了同时考虑这两种匹配特征,将两种匹配特征拼接得到一个的向量。然后将这个拼接的向量传入一个两层的多层感知机,以使得属性名匹配特征和属性值匹配特征进行融合。这些特征可以自动抽取出来,并且从低层到高层进行层次化的抽取。最后获得属性匹配相似度SIMa:
SIMa=tanh(W′·[GN:GV]+b′)
其中,W′和b′是多层感知机的参数,其中W′表示结点和结点之间的权重变量,b′是偏置向量。
3)将两个商品X、Y的商品标题相似度SIMt和商品属性相似度SIMa进行融合,进而判断出两个商品是否匹配,属于同一种商品;
对商品标题相似度SIMt和商品属性相似度SIMa进行融合分为分类和排序两种模式:
(1)分类模式:
分类模式是模拟消费者行为产生的,他们经常选择两个商品,然后根据它们的描述比较它们是否相同。在这种模式下,输入是包括商品标题和商品属性的两个商品描述。输出是两个类别,1表示两个商品是相同的,0表示两个商品是不同的。
将商品标题相似度SIMt和商品属性相似度SIMa拼接在一起,然后将它们输入到MLP产生两类分类的概率。有高概率的那一类看做是预测的结果。
使用交叉熵损失函数训练整个商品匹配模型PMM,其中y(sap)是第sap个数据样例的类别,表示将两个输入的商品描述预测为相同商品的概率,表示将两个输入的商品描述预测为不相同商品的概率,则损失函数为:
其中,L表示模型在训练过程中的损失值,y(sap)表示样本真实的标签,pclass表示预测结果中第class类的概率,由于是二分类,class值可以取0或1。oclass表示第class类对应的一个输出,第二个公式的目的是为了将oclass转化成概率从而实现分类。
(2)排序模式:
排序模式是出于卖家或者平台管理者的角度,他们使用他们自己的商品作为查询商品来检索出其他平台上由其他卖家销售的同一类的商品。在这个模式中,输入是一个查询商品描述和一个候选商品描述列表,输出是一个经过重排后的候选商品描述列表。
将商品标题相似度SIMt和商品属性相似度SIMa拼接在一起,然后将它们输入到MLP得到查询商品和给定一个候选商品之间的匹配得分。所有的候选商品将会根据匹配得分进行重排得到最后的结果列表。
给定一个三元组其中query是查询商品描述;是与query不同的商品描述,但是它们描述的是同一个商品;是与query不同的商品描述,但是它们描述的是不同的商品。排序的目的是将和query的匹配得分高于和query的匹配得分,因此采用的损失函数是:
其中,s(·)是指给定两个输入所输出的匹配得分;L表示排序模型在训练过程中的损失函数。
综上,为了验证本发明是否能有效提升,抽取一些额外的特征,包括:两个商品标题中共现词和共现字符的个数和比例;两个商品标题和商品属性值中共现数字和字符的数目;两个商品的商品标题、商品属性名称、商品属性值之间的杰拉德相似度(Jaccard);两个商品标题的TF-IDF向量的相似度。然后将这些特征和本发明计算的商品标题相似度和商品属性相似度共同训练排序模型和分类模型。对于排序模式中,使用LambdaMart、Mart等来训练排序模型;对于分类模式中,使用支持向量机(SVM)、贝叶斯(Naive Bayes)、决策树(Decision Tree)来训练分类模型。结果表明无论是在排序模式还是分类模式,本发明的商品匹配方法的效果都优于选取的对比方法。
上述各实施例仅用于说明本发明,各个步骤都是可以有所变化的,在本发明技术方案的基础上,凡根据本发明原理对个别步骤进行的改进和等同变换,均不应排除在本发明的保护范围之外。
Claims (10)
1.一种基于深度匹配模型的商品匹配方法,其特征在于包括以下步骤:
1)定义两个商品X、Y的标题相似度和属性相似度;
2)计算得到两个商品X、Y的商品标题相似度和商品属性相似度;
3)将两个商品X、Y的商品标题相似度SIMt和商品属性相似度SIMa进行融合,进而判断出两个商品是否匹配,属于同一种商品。
2.如权利要求1所述商品匹配方法,其特征在于:所述步骤2)中,两个商品的相似度是通过商品标题和商品属性分别度量的,通过TMM和AMM分别得到商品标题匹配的相似度特征和商品属性匹配的相似度特征,将两种相似度特征组合后得到两个商品X、Y最后的匹配得分。
3.如权利要求2所述商品匹配方法,其特征在于:所述TMM利用Bi-LSTM和CNN来计算标题相似度,计算方法如下:
(1)分别对两个商品标题进行位置句子表示;
(2)将两个商品标题位置句子表示进行交互得到交互矩阵,通过该交互矩阵表示两个标题的匹配情况;
(3)卷积和池化操作:获得交互矩阵后,采用经典的卷积神经网络来抽取匹配模式;
(4)获取两标题相似度。
4.如权利要求3所述商品匹配方法,其特征在于:所述步骤(1)中,位置句子表示方法包括以下步骤:
(1.1)给定输入的商品标题(x1,x2,...,xt,...,xm),词xt的位置句子表示ht是由前向的LSTM的隐含层向量和反向的LSTM的隐含层向量拼接的:
(1.2)对于LSTM的每一个隐含层的输出,都是通过遗忘门、输入门和输出门三个门进行控制,前向的LSTM的隐含层向量为:
其中:
其中,tanh(.)和σ(.)是激活函数,其中tanh(.)用在状态和输出上,是对数据的处理,σ(.)用在各种gate上,用于产生0到1之间的值;为忘记门,用于决定需要从细胞状态中丢弃多少信息;为输入门,用于确定什么样的新信息被存放在细胞状态中;是更新得到的细胞新状态,它是通过将旧状态与相乘,再加上当前细胞状态中的新信息得到的;是得到的输出值,这个输出是基于细胞状态得到的,其中的是输出层的一部分,用于确定细胞状态的哪些信息作为输出信息;
(1.3)反向的LSTM定义与步骤(1.2)相同;
(1.4)根据步骤(1.2)和步骤(1.3)的计算结果,得到标题(x1,x2,...,xt,...,xm)的位置表示为隐含层状态(h1,h2,...,ht,...,hm)。
5.如权利要求3所述商品匹配方法,其特征在于:所述步骤(3)中,获得交互矩阵后,采用经典的卷积神经网络来抽取匹配模式:
(3.1)假设一个卷积核zt属于Rr×s,它表示第t个卷积核;对于每一个卷积核,都从左到右、从上到下滑动,之后一个卷积核对应输出一个特征映射Ft:
其中,是第t个卷积核第x行第y列的元素,Mrow+x,col+y是交互矩阵中第row+x行第col+y列的元素,是第t个特征映射Ft的第row行第col列的元素;
(3.2)采用最大池化操作来获得每一个特征映射的最重要的信息
其中,dk是对应池化核的宽度,d′k是对应池化核的长度;表示第t个池化层的第e行第f列的元素;表示第t个卷积核对应得到的特征映射中第e·dk+a行第f·d'k+b列的元素。
6.如权利要求3所述商品匹配方法,其特征在于:所述步骤(4)中,获取两标题相似度方法为:将池化层的输出压平然后拼接在一起做为G,G表示通过以上三个步骤获得的用于表示商品标题匹配的特征,然后使用多层感知机得到标题匹配的相似度SIMt:
SIMt=tanh(W·G+b)
其中,W和b是是参数,是多层感知机的参数,tanh(·)是非线性激活函数,用于将商品标题匹配的特征进行非线性转化得到最后的商品标题匹配相似度。
7.如权利要求2所述商品匹配方法,其特征在于:所述AMM中两个商品属性之间的相似度计算方法如下:
(1)属性名匹配;
(2)属性值匹配;
(3)属性相似度:将两种匹配特征拼接得到一个的向量,然后将这个拼接的向量传入一个两层的多层感知机,以使得属性名匹配特征和属性值匹配特征进行融合;最后获得属性匹配相似度SIMa:
SIMa=tanh(W′·[GN:GV]+b′)
其中,W′和b′是多层感知机的参数,其中W′表示节点和节点之间的权重变量,b′是偏置向量。
8.如权利要求7所述商品匹配方法,其特征在于:所述步骤(1)中,属性名匹配方法包括以下步骤:
(1.1)对于两个商品的属性名词集合,构造一个用于衡量属性名集合之间语义相似度的交互矩阵,交互矩阵中的元素是词与词之间的相似度,且相似度是根据词向量计算的;
(1.2)得到交互矩阵之后,采用K最大池化抽取最大的K个匹配特征,这些特征表示属性名中词之间的最大的相似度,得到的这些特征做为两个商品的属性名集合之间的匹配相似度特征;之后将它与属性值集合之间的匹配相似度特征进行拼接得到属性匹配的相似度特征;
(1.3)属性名中的词和的相似度的计算公式为:
其中,e(·)表示的是词对应的词向量,×是点积操作。
9.如权利要求7所述商品匹配方法,其特征在于:所述步骤(2)中,属性值匹配方法包括以下步骤:
(2.1)采用指示函数来构建交互矩阵MV,若两个商品的属性值词集合的长度分别是q和q′,则该交互矩阵的大小是q×q′;
(2.2)得到交互矩阵之后,采用L个卷积核进行卷积操作来抽取匹配特征,以抽取多种匹配模式;卷积核的大小是q×1,其沿着水平方向进行滑动;
(2.3)卷积处理后可以获得L个匹配模式,将这些匹配模式压平作为属性值匹配的特征:第t个卷积核z′t作用在交互矩阵MV上,然后输出一个匹配特征模式F′t,其中第r个元素的匹配特征为:
的大小是1×q′;将匹配特征拼接和压平之后,获得属性值匹配整体特征GV的大小是(q′×L)×1;
(2.4)属性值和的相似度的计算公式是:
其中,⊙表示指示函数,它的定义公式是:
10.如权利要求1所述商品匹配方法,其特征在于:所述步骤3)中,对商品标题相似度SIMt和商品属性相似度SIMa进行融合分为分类和排序两种模式;
分类模式是模拟消费者行为产生的,他们经常选择两个商品,然后根据它们的描述比较它们是否相同;在这种模式下,输入是包括商品标题和商品属性的两个商品描述,输出是两个类别,1表示两个商品是相同的,0表示两个商品是不同的;所述分类模式中,将商品标题相似度SIMt和商品属性相似度SIMa拼接在一起,然后将它们输入到MLP产生两类分类的概率,有高概率的那一类看做是预测的结果;
排序模式是出于卖家或者平台管理者的角度,他们使用他们自己的商品作为查询商品来检索出其他平台上由其他卖家销售的同一类的商品;在这个模式中,输入是一个查询商品描述和一个候选商品描述列表,输出是一个经过重排后的候选商品描述列表;将商品标题相似度SIMt和商品属性相似度SIMa拼接在一起,然后将它们输入到MLP得到查询商品和给定一个候选商品之间的匹配得分,所有的候选商品将会根据匹配得分进行重排得到最后的结果列表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811423859.8A CN109584006B (zh) | 2018-11-27 | 2018-11-27 | 一种基于深度匹配模型的跨平台商品匹配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811423859.8A CN109584006B (zh) | 2018-11-27 | 2018-11-27 | 一种基于深度匹配模型的跨平台商品匹配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109584006A true CN109584006A (zh) | 2019-04-05 |
CN109584006B CN109584006B (zh) | 2020-12-01 |
Family
ID=65924816
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811423859.8A Active CN109584006B (zh) | 2018-11-27 | 2018-11-27 | 一种基于深度匹配模型的跨平台商品匹配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109584006B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111143678A (zh) * | 2019-12-27 | 2020-05-12 | 第四范式(北京)技术有限公司 | 推荐系统和推荐方法 |
CN111445134A (zh) * | 2020-03-26 | 2020-07-24 | 珠海随变科技有限公司 | 商品的销量预测方法、装置、计算机设备和存储介质 |
CN111507812A (zh) * | 2020-07-02 | 2020-08-07 | 成都晓多科技有限公司 | 一种基于属性和标题的商品搭配推荐方法及装置 |
CN112163704A (zh) * | 2020-09-29 | 2021-01-01 | 筑客网络技术(上海)有限公司 | 一种用于建材投招标平台的优质供应商预测方法 |
CN112906396A (zh) * | 2021-04-01 | 2021-06-04 | 翻车信息科技(杭州)有限公司 | 一种基于自然语言处理的跨平台商品匹配方法及系统 |
TWI778481B (zh) * | 2020-03-30 | 2022-09-21 | 南韓商韓領有限公司 | 用於基於ai的產品整合及去冗餘的電腦實行系統及使用ai對產品進行整合及去冗餘的方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105005917A (zh) * | 2015-07-07 | 2015-10-28 | 上海晶赞科技发展有限公司 | 一种通用的关联不同电商网站单品的方法 |
CN105740380A (zh) * | 2016-01-27 | 2016-07-06 | 北京邮电大学 | 数据融合方法及系统 |
CN107273426A (zh) * | 2017-05-18 | 2017-10-20 | 四川新网银行股份有限公司 | 一种基于深度语义路径搜索的短文本聚类方法 |
CN107464162A (zh) * | 2017-07-28 | 2017-12-12 | 腾讯科技(深圳)有限公司 | 商品关联方法、装置及计算机可读存储介质 |
WO2018191555A1 (en) * | 2017-04-14 | 2018-10-18 | Drishti Technologies. Inc | Deep learning system for real time analysis of manufacturing operations |
-
2018
- 2018-11-27 CN CN201811423859.8A patent/CN109584006B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105005917A (zh) * | 2015-07-07 | 2015-10-28 | 上海晶赞科技发展有限公司 | 一种通用的关联不同电商网站单品的方法 |
CN105740380A (zh) * | 2016-01-27 | 2016-07-06 | 北京邮电大学 | 数据融合方法及系统 |
WO2018191555A1 (en) * | 2017-04-14 | 2018-10-18 | Drishti Technologies. Inc | Deep learning system for real time analysis of manufacturing operations |
CN107273426A (zh) * | 2017-05-18 | 2017-10-20 | 四川新网银行股份有限公司 | 一种基于深度语义路径搜索的短文本聚类方法 |
CN107464162A (zh) * | 2017-07-28 | 2017-12-12 | 腾讯科技(深圳)有限公司 | 商品关联方法、装置及计算机可读存储介质 |
Non-Patent Citations (2)
Title |
---|
HAMED ZAMANI等: "Neural Ranking Models with Multiple Document Fields", 《WSDM "18: PROCEEDINGS OF THE ELEVENTH ACM INTERNATIONAL CONFERENCE ON WEB SEARCH AND DATA MINING》 * |
谢晓超: "基于深度神经网络的句子相似度研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111143678A (zh) * | 2019-12-27 | 2020-05-12 | 第四范式(北京)技术有限公司 | 推荐系统和推荐方法 |
CN111143678B (zh) * | 2019-12-27 | 2023-10-17 | 第四范式(北京)技术有限公司 | 推荐系统和推荐方法 |
CN111445134A (zh) * | 2020-03-26 | 2020-07-24 | 珠海随变科技有限公司 | 商品的销量预测方法、装置、计算机设备和存储介质 |
TWI778481B (zh) * | 2020-03-30 | 2022-09-21 | 南韓商韓領有限公司 | 用於基於ai的產品整合及去冗餘的電腦實行系統及使用ai對產品進行整合及去冗餘的方法 |
CN111507812A (zh) * | 2020-07-02 | 2020-08-07 | 成都晓多科技有限公司 | 一种基于属性和标题的商品搭配推荐方法及装置 |
CN111507812B (zh) * | 2020-07-02 | 2020-10-27 | 成都晓多科技有限公司 | 一种基于属性和标题的商品搭配推荐方法及装置 |
CN112163704A (zh) * | 2020-09-29 | 2021-01-01 | 筑客网络技术(上海)有限公司 | 一种用于建材投招标平台的优质供应商预测方法 |
CN112163704B (zh) * | 2020-09-29 | 2021-05-14 | 筑客网络技术(上海)有限公司 | 一种用于建材投招标平台的优质供应商预测方法 |
CN112906396A (zh) * | 2021-04-01 | 2021-06-04 | 翻车信息科技(杭州)有限公司 | 一种基于自然语言处理的跨平台商品匹配方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109584006B (zh) | 2020-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109493166B (zh) | 一种针对电子商务导购场景任务型对话系统的构建方法 | |
CN109584006A (zh) | 一种基于深度匹配模型的跨平台商品匹配方法 | |
CN110633409B (zh) | 一种融合规则与深度学习的汽车新闻事件抽取方法 | |
CN110121706B (zh) | 提供会话中的响应 | |
CN105094315B (zh) | 基于人工智能的人机智能聊天的方法和装置 | |
CN111488734B (zh) | 基于全局交互和句法依赖的情感特征表示学习系统及方法 | |
CN110555112B (zh) | 一种基于用户正负偏好学习的兴趣点推荐方法 | |
US11687728B2 (en) | Text sentiment analysis method based on multi-level graph pooling | |
CN107729444A (zh) | 一种基于知识图谱的个性化旅游景点推荐方法 | |
Karpathy | Connecting images and natural language | |
CN110162749A (zh) | 信息提取方法、装置、计算机设备及计算机可读存储介质 | |
CN110263257B (zh) | 基于深度学习处理多源异构数据的推荐方法 | |
Tran et al. | Understanding what the users say in chatbots: A case study for the Vietnamese language | |
CN109635118A (zh) | 一种基于大数据的用户搜索匹配方法 | |
CN110795571A (zh) | 基于深度学习和知识图谱的文化旅游资源推荐方法 | |
CN107357793A (zh) | 信息推荐方法和装置 | |
CN111666496B (zh) | 一种基于评论文本的组推荐方法 | |
CN114330354B (zh) | 一种基于词汇增强的事件抽取方法、装置及存储介质 | |
CN108428166A (zh) | 基于卷积神经网络的体貌特征识别分类的服装推荐系统 | |
WO2021052137A1 (zh) | 情绪向量的生成方法及装置 | |
CN114693397A (zh) | 一种基于注意力神经网络的多视角多模态商品推荐方法 | |
CN111309887A (zh) | 一种训练文本关键内容提取模型的方法和系统 | |
CN114077673A (zh) | 一种基于btbc模型的知识图谱构建方法 | |
CN112528136A (zh) | 一种观点标签的生成方法、装置、电子设备和存储介质 | |
CN111914553A (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 |