CN113592593A - 序列推荐模型的训练及应用方法、装置、设备及存储介质 - Google Patents
序列推荐模型的训练及应用方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113592593A CN113592593A CN202110865311.4A CN202110865311A CN113592593A CN 113592593 A CN113592593 A CN 113592593A CN 202110865311 A CN202110865311 A CN 202110865311A CN 113592593 A CN113592593 A CN 113592593A
- Authority
- CN
- China
- Prior art keywords
- sample
- commodity
- user
- vector
- commodity information
- 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
Images
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/0631—Item recommendations
-
- 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/045—Combinations of networks
Abstract
本申请涉及人工智能技术领域,提供了序列推荐模型的训练及应用方法、装置、设备及存储介质。方法包括:获取用户标识及对应的历史购买商品信息作为作为第一样本。对第一样本中的商品信息添加随机掩码后得到第二样本。将第一样本中的多个商品信息为正样本,将商品语料库中的多个商品信息为负样本,将第一样本及正负样本构成的第三样本输入模型,得到用户向量及正负样本商品向量。根据用户向量分别与正负样本商品向量确定的正负匹配度来确定第一损失值。将第二样本输入模型,输出被随机掩码的商品信息的预测值,根据预测值和被随机掩码的商品信息的真实值确定第二损失值;根据第一损失值和第二损失值优化模型的参数得到训练好的序列推荐模型。
Description
技术领域
本申请涉及深度学习技术领域,尤其涉及一种序列推荐模型的训练方法、应用方法、装置、计算机设备及存储介质。
背景技术
关于智能推荐领域已有很多的研究,其中,基于深度学习的序列推荐方法是根据用户的历史购物序列来推荐下第一预设数量。主流的研究方向是将带有注意力机制的Transformer引入到序列推荐中,其中,BERT4Rec则是基于BERT的结构,引入了双向Transformer层,并引入掩码机制训练模型的预测水平。当前的BERT4Rec模型仅捕捉部分商品购物序列的特点,忽略了表征用户特征的用户向量和整个历史购物行为的相关性,因此,当购物序列过短或存在用户无意识点击的干扰时,模型的表现较差。
发明内容
本申请提供了一种序列推荐模型的训练方法、应用方法、装置、计算机设备及存储介质,通过引入用户特征的用户向量用于模型嵌入层的预训练和对模型进行训练的匹配任务,增加了模型对用户购物偏好特征的捕捉,提高了模型的推荐表现。
第一方面,本申请提供了一种推荐模型的训练方法,所述训练方法包括:
获取用户标识及与所述用户标识对应的历史购买商品的商品信息,并将所述历史购买商品的商品信息及所述用户标识作为第一样本;
通过对所述第一样本中的商品信息添加随机掩码,得到第二样本;
将所述第一样本中的第一预设数量个商品信息作为正样本,将商品语料库中的第二预设数量个商品信息作为负样本,将所述正样本、负样本添加到所述第一样本中得到第三样本;
将所述第三样本输入预设的序列推荐模型,得到用户向量、正样本商品向量与负样本商品向量,根据所述用户向量与所述正样本商品向量确定正匹配度,根据所述用户向量与所述负样本商品向量确定负匹配度,根据所述正匹配度及所述负匹配度确定第一损失值;
将所述第二样本输入所述序列推荐模型,输出被随机掩码的商品信息的预测值,从所述历史购买商品的商品信息中获取所述被随机掩码的商品信息的真实值,根据所述预测值和所述真实值确定第二损失值;
根据所述第一损失值和所述第二损失值优化所述序列推荐模型的参数,得到训练好的序列推荐模型。
第二方面,本申请还提供了一种推荐模型的应用方法,所述应用方法包括:
获取待推荐用户的用户标识及历史购买商品的商品信息;
在所述待推荐用户的历史购买商品的商品信息的最后添加掩码并与所述待推荐用户的用户标识构成第四样本;
将所述第四样本输入所述训练好的序列推荐模型,输出推荐的商品。
第三方面,本申请还提供了一种推荐模型的训练装置,所述训练装置包括:
第一样本确定模块,用于获取用户标识及与所述用户标识对应的历史购买商品的商品信息,并将所述历史购买商品的商品信息及所述用户标识作为第一样本;
第二样本确定模块,用于通过对所述第一样本中的商品信息添加随机掩码,得到第二样本;
第三样本确定模块,用于将所述第一样本中的第一预设数量个商品信息作为正样本,将商品语料库中的第二预设数量个商品信息作为负样本,将所述正样本、负样本添加到所述第一样本中得到第三样本;
第一损失值计算模块,用于将所述第三样本输入预设的序列推荐模型,得到用户向量、正样本商品向量与负样本商品向量,根据所述用户向量与所述正样本商品向量确定正匹配度,根据所述用户向量与所述负样本商品向量确定负匹配度,根据所述正匹配度及所述负匹配度确定第一损失值;
第二损失值计算模块,将所述第二样本输入所述序列推荐模型,输出被随机掩码的商品信息的预测值,从所述历史购买商品的商品信息中获取所述被随机掩码的商品信息的真实值,根据所述预测值和所述真实值确定第二损失值;
模型输出模块,用于根据所述第一损失值和所述第二损失值优化所述序列推荐模型的参数,得到训练好的序列推荐模型。
第四方面,本申请还提供了一种推荐模型的应用装置,所述应用装置包括:
用户数据获取模块,用于获取待推荐用户的用户标识及历史购买商品的商品信息;
第四样本确定模块,用于在所述待推荐用户的历史购买商品的商品信息的最后添加掩码并与所述待推荐用户的用户标识构成第四样本;
商品推荐模块,用于将所述第四样本输入所述训练好的序列推荐模型,输出推荐的商品。
第五方面,本申请还提供了一种计算机设备,所述计算机设备包括存储器和处理器;所述存储器用于存储计算机程序;所述处理器,用于执行所述计算机程序并在执行所述计算机程序时实现如上述的序列推荐模型的训练方法或序列推荐模型的应用方法。
第六方面,本申请还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器实现上述的序列推荐模型的训练方法或序列推荐模型的应用方法。
本申请提供了一种序列推荐模型的训练方法、应用方法、装置、计算机设备及存储介质,引入用户特征的用户向量在模型的训练任务中,首先将所述用户标识与历史购买商品的商品信息用于对模型的嵌入层进行预训练,使模型的嵌入层能捕捉到用户购物偏好的一部分特征。另外在模型的顶层基于用户标识和历史购买商品的商品信息设计了匹配任务和预测任务来训练模型,增加了模型对用户整体历史购物行为及总体购物偏好的捕捉,提高了模型的推荐表现。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的实施例提供的一种序列推荐模型的训练方法的示意流程图;
图2是本申请的实施例提供的一种序列推荐模型的应用方法的示意流程图;
图3为本申请的实施例提供的一种序列推荐模型的训练装置的示意性框图;
图4为本申请的实施例提供的一种序列推荐模型的应用装置的示意性框图;
图5为本申请的实施例提供的一种计算机设备的结构示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如今购物尤其是互联网购物已成为家家户户的日常生活。基于互联网的特点,购物网站不能面对面的及时询问顾客的喜好物品,只能根据顾客的历史购买行为来进行推荐,由于信息的庞大,智能推荐发挥了极大的作用。
基于人工智能实现智能推荐的研究很多,之前的技术方案多采用协同过滤,其缺点是将用户的购买行为考虑成独立的行为。而序列推荐将用户的购买行为视为一个序列,根据历史序列来推荐下一个物品。目前的研究方案多是将带有注意力机制的Transformer引入到序列推荐中。如SASRec应用了一个从左到右单向顺序的双层Transformer机制,其缺点是单向的顺序与实际用户购买商品的行为稍有不符,导致模型表现差。而BERT4Rec则是基于BERT的结构,用了双向的Transformer,并引入mask机制。然而BERT4Rec的模型机制,仅捕捉用户部分的购物序列,忽略了用户的购物喜好可能和整个历史购物行为的相关性,同时由于其仅基于当前购物行为的特点,在购物序列过短或存在用户无意识点击的干扰时表现较差。
针对以上问题,本申请的实施例提供了一种序列推荐模型的训练方法,对BERT4Rec的不足点进行了改进,将表征用户整体购物行为的用户标识和每个商品一起输入嵌入层,并在训练过程中增加了匹配任务用来训练序列推荐模型。
本申请的实施例提供了一种序列推荐模型的训练方法、应用方法、装置、计算机设备及存储介质。其中,该序列推荐模型的训练方法可以应用于服务器中,通过引入用户特征的用户向量在模型的训练任务中,得到推荐表现较好的序列推荐模型。其中,该服务器可以为独立的服务器,也可以是提供云服务、云数据库、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参阅图1,图1是本申请的实施例提供的一种序列推荐模型的训练方法的示意流程图。如图1所示,该序列推荐模型的训练方法具体包括步骤S101至步骤S106。
S101、获取用户标识及与所述用户标识对应的历史购买商品的商品信息,并将所述历史购买商品的商品信息及所述用户标识作为第一样本。
具体的,获取多个用户的用户标识和与用户标识对应的历史购买商品的商品信息,将历史购买商品的商品信息及相应的用户标识拼接得到多个第一样本。商品信息至少包括商品的名称信息。
需要说明的是,由于工程实现和位置编码的需要,当用户的历史购买商品序列长度太大时,取最后N个购买商品的商品信息用于模型的训练。该N为预设数量,具体数值根据实际需求和业务场景进行设置,本申请对此不作限定。
在一些实施例中,为了便于后续对商品信息和用户标识进行嵌入,先对用户标识和对应的历史购买商品的商品信息进行one-hot编码得到商品信息及用户标识的one-hot向量。
S102、通过对所述第一样本中的商品信息添加随机掩码,得到第二样本。
具体的,针对每个用户的历史购买商品的商品信息商品序列,通过随机掩码产生多个带mask的第二样本,用于训练序列推荐模型预测被掩码掩盖的商品的能力。
在一些实施例中,为了更好地匹配模型的推荐任务,也即预测最后一项商品的能力,在训练过程中还可以生成只对历史购买商品序列中最后一项进行掩码的样本,从而对序列推荐模型进行微调,进一步提高模型的推荐性能。
S103、将所述第一样本中的第一预设数量个商品信息作为正样本,将商品语料库中的第二预设数量个商品信息作为负样本,将所述正样本、负样本添加到所述第一样本中得到第三样本。
由于从用户的历史购买商品的信息中选取的商品信息是该用户曾经购买的商品,因此定义为正样本,而从预设的商品语料库中随机抽取的商品信息代表用户未曾购买的商品,因此定义为负样本。根据第一样本和预设的商品语料库构建第三样本,将第三样本用于训练序列推荐模型进行用户向量与正、负样本商品向量的匹配任务,进而更好地捕捉用户的购物偏好特征。
具体的,针对某个用户,将从该用户的历史购买商品的商品信息中选取的第一预设数量个商品信息作为正样本,从商品语料库中随机抽取的第二预设数量个商品信息作为负样本,将正、负样本添加到第一样本中构成第三样本。通过替换正、负样本中的商品,可以根据该用户的历史购买商品信息和商品语料库产生多个第三样本。对于用户标识集中的每一个用户,通过更换用户标识,从而根据每一个用户的用户标识和相应的历史购买商品信息能得到多个第三样本。
需要说明的是,所述第一预设数量,第二预设数量的具体数值可以根据实验数据来确定,本申请对此不做限定。第一预设数量一般取1,第二预设数量的取值一般为第一预设数量的5-10倍。
示例性地,当第一预设数量取为2时,每次从用户的历史购买商品的商品信息中取2个商品信息作为正样本。
示例性地,当第二预设数量取为10时,每次从商品语料库中取10个商品名作为负样本。
在一些实施例中,为了更好地训练模型的预测任务,也即预测最后第一预设数量,可以将所述购物商品集中的最后一个商品对应的商品信息作为正样本,更利于提升模型的推荐效果。
S104、将所述第三样本输入预设的序列推荐模型,得到用户向量、正样本商品向量与负样本商品向量,根据所述用户向量与所述正样本商品向量确定正匹配度,根据所述用户向量与所述负样本商品向量确定负匹配度,根据所述正匹配度及所述负匹配度确定第一损失值。
所述预设的序列推荐模型包括:嵌入层、transformer层,其中嵌入层包括:用户嵌入矩阵和商品嵌入矩阵,其中,所述用户嵌入矩阵用于对用户标识进行嵌入,所述商品嵌入矩阵用于对商品进行嵌入。
在一些实施例中,所述序列推荐模型还包括:线性层及softmax层。
具体的,将第三样本中包含的第一样本也即用户标识和历史购买商品序列输入所述嵌入层和transformer层,得到表征用户特征的用户向量。将所述第三样本中包含的正样本和负样本输入所述嵌入层,得到表征正样本特征的正样本商品向量和表征负样本特征的负样本商品向量。
需要说明的是,由于该用户向量是用户标识和历史购买商品的商品信息输入嵌入层和transformer层得到的,该用户向量表征了模型从历史购买商品的商品信息中学到的用户购物偏好的特征。正样本中的商品信息是该用户购买过的商品,与该用户的用户向量之间的匹配度越高越好,因此将用户向量及正样本商品向量确定的匹配度确定为正匹配度。负样本中的商品信息代表该用户未曾购买过的商品,与用户的用户向量之间的匹配度越低越好,因此将用户向量及负样本商品向量确定的匹配度确定为负匹配度。
具体的,根据用户向量及正样本商品向量点乘结果的均值来确定正匹配度,根据用户向量及多个负样本商品向量点乘结果的均值来确定负匹配度。
示例性的,将用户uj和其历史购买商品序列输入嵌入层,分别与用户嵌入矩阵和商品嵌入矩阵相乘得到对应的表征向量(x0,x1,...xN-1),再加上通过学习得到的对应的位置向量(p0,p1,...pN)。将嵌入层的输出代入L层双向transformer网络层中,输出为(υ0,υ1,...υN),其中υ0为用户向量。其中,L为Transformer层的数量,具体数值可以根据实验数据进行确定。
确定正、负匹配度后,可根据正匹配度和负匹配度来确定序列推荐模型的第一损失值,该损失值表征的是模型的匹配损失,计算公式表征为:
Lossmatch=-(log(σ(scorepos.c))+log(1-σ(socreneg.c)))
式中,scorepos为正匹配度,scoreneg为负匹配度,c是一个常数、σ为Sigmoid函数。
在一些实施例中,在利用嵌入层对商品和用户标识进行嵌入之前,先利用用户标识及历史购买商品的商品信息对嵌入层进行初始训练,使得嵌入层能够捕捉到用户的购物偏好的一定特征。具体的,对嵌入层的预训练过程如下。
首先,对用户的历史购买商品的商品信息通过one-hot编码得到商品信息的one-hot向量,对用户标识通过one-hot编码得到用户标识的one-hot向量,根据用户标识的one-hot向量和用户标识嵌入矩阵得到用户标识的表征向量,根据商品信息的one-hot向量和商品嵌入矩阵得到商品信息的表征向量。
然后,从所述用户的历史购买商品的商品信息中截取第三预设数量个商品信息得到多个商品序列样本,将每个所述商品序列样本输入所述商品嵌入矩阵,得到所述商品序列样本的商品向量;将所述用户标识输入所述用户嵌入矩阵,得到用户向量;根据所述用户向量和每个所述商品序列样本的商品向量,预测与每个所述商品序列样本中的最后一个商品相邻的下一个商品的商品信息;根据所述下一个商品的商品信息的预测值和从所述历史购买商品的商品信息中获取的所述下一个商品的商品信息的真实值来优化所述嵌入层的参数,得到预训练好的所述用户嵌入矩阵和商品嵌入矩阵。第三预设数量的取值可以根据实验数据来确定,本申请对此不做限定。
在一些实施例中,所述历史购买商品的商品信息具体为用户历史购买商品的商品名称信息。当第三预设数量取值为3时,每次从历史购买商品的商品名称中截取3个商品名称并获得对应的商品名称序列,预训练嵌入层预测在历史购买商品中在这3个商品之后的下一个商品的商品名称,并通过该下一个商品的商品名称的预测值和该下一个商品在历史购买商品的商品信息中的商品名称来调整嵌入层的参数。
示例性地,假设用户的历史购买商品的商品名称序列为:(牛奶,电脑,口红,洗衣液,手机,…),截取窗口(假定为3)的商品名称序列样本(牛奶,电脑,口红),通过这三个已知的商品名称,对下一个商品“洗衣液”进行预测。根据对第4个商品的商品名称的预测值与商品名称“洗衣液”来优化调整嵌入层的参数。
在一些实施例中,将所述商品序列样本中的商品信息的表征向量与所述用户标识的表征向量进行加和平均,根据所述加和平均的结果来预测在所述历史购买商品序列中与商品序列样本内的最后一个商品相邻的下一个商品的商品信息。根据所述下一个商品的商品信息的预测值和从所述历史购买商品的商品信息中获取的所述下一个商品的商品信息的真实值,更新所述用户嵌入矩阵和所述商品嵌入矩阵的参数,得到预训练好的所述用户嵌入矩阵和商品嵌入矩阵。
S105、将所述第二样本输入所述序列推荐模型,输出被随机掩码的商品信息的预测值,从所述历史购买商品的商品信息中获取所述被随机掩码的商品信息的真实值,根据所述预测值和所述真实值确定第二损失值。
具体的,将带掩码的多个第二样本输入序列推荐模型,进行预测任务的训练。通过softmax层得出每一个掩码位置的的商品信息的预测值,并从所述历史购买商品的商品信息中获取所述每一个掩码位置的商品信息的真实值,根据预测值和真实值计算的预测损失确定第二损失值,该损失值表征序列推荐模型对用户购买商品的预测能力。
在一些实施例中,所述历史购买商品的商品信息具体为用户历史购买商品的商品名称信息。
示例性地,假设用户的的历史购买商品的商品名称为:(牛奶,电脑,口红,洗衣液,手机),对其中的商品名称“口红”和“手机”通过掩码掩盖起来得到的商品名称序列为:(牛奶,电脑,Mask1,洗衣液,Mask2)。训练模型对Mask1和Mask2的商品名称进行预测,得到的Mask1和Mask2这两个商品名称的预测值,根据预测值及这两个商品名称的真实值“口红”和“手机”计算模型的预测损失确定第二损失值。
在一些实施例中,可以通过交叉熵损失函数计算预测损失Lossmask。
需要说明的是,由于在训练过程和最终的序列预测推荐任务之间是不匹配的。训练过程是预测当前被掩码的商品,而序列预测推荐的目的是预测用户将来可能购买的商品。为了更好地训练序列推荐模型完成推荐任务,在第二样本中将只对用户的历史购买商品的商品信息的最后一个商品信息进行掩码的样本纳入第二样本中,用于序列推荐模型的预测训练,从而使得训练好的模型能更好地完成推荐任务。
示例性地,假设用户的的历史购买商品的商品名称为:(牛奶,电脑,口红,洗衣液,手机),对最后一个商品名称“手机”通过掩码掩盖起来得到的商品名称序列为:(牛奶,电脑,口红,洗衣液,Mask)。训练模型对Mask位置的商品名称进行预测,得到的Mask位置的商品名称的预测值,根据预测值及商品名称的真实值“手机”计算模型的预测损失确定第二损失值。
S106、根据所述第一损失值和所述第二损失值优化所述序列推荐模型的参数,得到训练好的序列推荐模型。
具体的,根据第一损失值和第二损失值的加和确定模型的总损失值,通过使总损失值最小化来迭代更新序列推荐模型的参数。其中,序列推荐模型的参数包括:嵌入层的参数、Transformer层的参数以及softmax层的参数。
当总损失值小于预设阈值时,得到了训练好的序列推荐模型,预设阈值可根据具体的实验数据进行选择,本申请对此不作限定。
本申请通过引入用户特征的用户向量在模型的训练任务中,首先将所述用户标识与历史购买商品的商品信息用于对模型的嵌入层进行预训练,使模型的嵌入层能捕捉到用户购物偏好的一部分特征。另外在模型的顶层基于用户标识和历史购买商品的商品信息设计了匹配任务和预测任务来训练模型,增加了模型对用户整体历史购物行为及总体购物偏好的捕捉,提高了模型的推荐表现。
请参阅图2,图2是本申请的实施例提供的一种序列推荐模型的应用方法的示意流程图,其中,序列推荐模型是根据本申请的实施例所提供的任意一种序列推荐模型的训练方法得到的。该序列推荐模型的应用方法具体包括:步骤S201至步骤S203。
S201、获取待推荐用户的用户标识及历史购买商品的商品信息;
S202、在所述待推荐用户的历史购买商品的商品信息的最后添加掩码并与所述待推荐用户的用户标识构成第四样本;
S203、将所述第四样本输入所述训练好的序列推荐模型,输出推荐的商品。
请参阅图3,图3是本申请的实施例提供一种序列推荐模型的训练装置的示意性框图,该训练装置用于执行前述的训练方法。其中,该训练装置可以配置于服务器。
如图3所示,该训练装置300,包括:
第一样本确定模块301,用于获取用户标识及与所述用户标识对应的历史购买商品的商品信息,并将所述历史购买商品的商品信息与所述用户标识作为第一样本;
第二样本确定模块302,用于通过对所述第一样本中的商品信息添加随机掩码,得到第二样本;
第三样本确定模块303,用于将所述第一样本中的第一预设数量个商品信息作为正样本,将商品语料库中的第二预设数量个商品信息作为负样本,将所述正样本、负样本添加到所述第一样本中得到第三样本;
第一损失值计算模块304,用于将所述第三样本输入预设的序列推荐模型,得到用户向量、正样本商品向量与负样本商品向量,根据所述用户向量与所述正样本商品向量确定正匹配度,根据所述用户向量与所述负样本商品向量确定负匹配度,根据所述正匹配度及所述负匹配度确定第一损失值;
第二损失值计算模块305,用于将所述第二样本输入所述序列推荐模型,输出被随机掩码的商品信息的预测值,从所述历史购买商品的商品信息中获取所述被随机掩码的商品信息的真实值,根据所述预测值和所述真实值确定第二损失值;
模型输出模块306,用于根据所述第一损失值和所述第二损失值优化所述序列推荐模型的参数,得到训练好的序列推荐模型。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的序列推荐模型的训练装置和各模块的具体工作过程,可以参考前述序列推荐模型的训练方法实施例中的对应过程,在此不再赘述。
请参阅图4,图4是本申请的实施例提供一种序列推荐模型的应用装置的示意性框图,该应用装置用于执行前述的序列推荐模型的应用方法。其中,该应用装置可以配置于服务器。
如图4所示,该应用装置400,包括:
用户数据获取模块401,用于获取待推荐用户的用户标识及历史购买商品的商品信息;
第四样本确定模块402,用于在所述待推荐用户的历史购买商品的商品信息的最后添加掩码并与所述待推荐用户的用户标识构成第四样本;
商品推荐模块403,用于将所述第四样本输入所述训练好的序列推荐模型,输出推荐的商品。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的序列推荐模型的应用装置和各模块的具体工作过程,可以参考前述序列推荐模型的应用方法实施例中的对应过程,在此不再赘述。
上述的序列推荐模型的训练装置和应用装置可以实现为一种计算机程序的形式,该计算机程序可以在如图5所示的计算机设备上运行。
请参阅图5,图5是本申请的实施例提供的一种计算机设备的结构示意性框图。该计算机设备可以是服务器。
参阅图5,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口,其中,存储器可以包括存储介质和内存储器。
存储介质可存储操作系统和计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行任意一种序列推荐模型的训练方法或应用方法。
处理器用于提供计算和控制能力,支撑整个计算机设备的运行。
内存储器为存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器执行任意一种序列推荐模型的训练方法或应用方法。
该网络接口用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
应当理解的是,处理器可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
其中,在一个实施例中,所述处理器用于运行存储在存储器中的计算机程序,以实现如下步骤:
获取用户标识及与所述用户标识对应的历史购买商品的商品信息,并将所述历史购买商品的商品信息与所述用户标识作为第一样本;
通过对所述第一样本中的商品信息添加随机掩码,得到第二样本;
将所述第一样本中的第一预设数量个商品信息作为正样本,将商品语料库中的第二预设数量个商品信息作为负样本,将所述正样本、负样本添加到所述第一样本中得到第三样本;
将所述第三样本输入预设的序列推荐模型,得到用户向量、正样本商品向量与负样本商品向量,根据所述用户向量与所述正样本商品向量确定正匹配度,根据所述用户向量与所述负样本商品向量确定负匹配度,根据所述正匹配度及所述负匹配度确定第一损失值;
将所述第二样本输入所述序列推荐模型,输出被随机掩码的商品信息的预测值,从所述历史购买商品的商品信息中获取所述被随机掩码的商品信息的真实值,根据所述预测值和所述真实值确定第二损失值;
根据所述第一损失值和所述第二损失值优化所述序列推荐模型的参数,得到训练好的序列推荐模型。
在一个实施例中,所述序列推荐模型包括:嵌入层,所述嵌入层包括:用户嵌入矩阵和商品嵌入矩阵,其中,所述用户嵌入矩阵用于对用户标识进行嵌入,所述商品嵌入矩阵用于对商品信息进行嵌入,所述处理器在实现序列推荐模型的训练方法时,用于实现:基于所述用户标识和历史购买商品的商品信息对所述嵌入层进行预训练,得到预训练好的用户嵌入矩阵和商品嵌入矩阵。
在一个实施例中,所述处理器在实现基于所述用户标识和所述历史购买商品的商品信息对所述嵌入层进行预训练时,用于实现:遍历所述历史购买商品的商品信息,截取第三预设数量个商品信息得到多个商品序列样本;将每个所述商品序列样本输入所述商品嵌入矩阵,得到所述商品序列样本的商品向量;将所述用户标识输入所述用户嵌入矩阵,得到用户向量;根据所述用户向量和每个所述商品序列样本的商品向量,预测与每个所述商品序列样本中的最后一个商品相邻的下一个商品的商品信息;根据所述下一个商品的商品信息的预测值和从所述历史购买商品的商品信息中获取的所述下一个商品的商品信息的真实值来优化所述嵌入层的参数,得到预训练好的所述用户嵌入矩阵和商品嵌入矩阵。
在一个实施例中,所述序列推荐模型还包括:transformer层,所述处理器在实现将所述第三样本输入所述序列推荐模型,得到用户向量、正样本商品向量与负样本商品向量时,用于实现:将所述第三样本中包含的第一样本输入所述嵌入层和transformer层,得到表征用户特征的所述用户向量;将所述第三样本中包含的正样本和负样本输入所述嵌入层,得到表征正样本特征的所述正样本商品向量和表征负样本特征的所述负样本商品向量。
在一个实施例中,所述处理器在实现根据所述用户向量与所述正样本商品向量确定正匹配度,根据所述用户向量与所述负样本商品向量确定负匹配度时,用于实现:根据所述用户向量与所述正样本商品向量点乘结果的均值得到所述正匹配度;根据所述用户向量与所述负样本商品向量点乘结果的均值得到所述负匹配度。
本申请的实施例中还提供一种存储介质,所述存储介质存储有计算机程序,所述计算机程序中包括程序指令,所述处理器执行所述程序指令,实现本申请实施例提供的任一项序列推荐模型的训练方法或应用方法。
其中,所述存储介质可以是前述实施例所述的计算机设备的内部存储单元,例如所述计算机设备的硬盘或内存。所述存储介质也可以是所述计算机设备的外部存储设备,例如所述计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种序列推荐模型的训练方法,其特征在于,所述方法包括:
获取用户标识及与所述用户标识对应的历史购买商品的商品信息,并将所述历史购买商品的商品信息与所述用户标识作为第一样本;
通过对所述第一样本中的商品信息添加随机掩码,得到第二样本;
将所述第一样本中的第一预设数量个商品信息作为正样本,将商品语料库中的第二预设数量个商品信息作为负样本,将所述正样本、负样本添加到所述第一样本中得到第三样本;
将所述第三样本输入预设的序列推荐模型,得到用户向量、正样本商品向量与负样本商品向量,根据所述用户向量与所述正样本商品向量确定正匹配度,根据所述用户向量与所述负样本商品向量确定负匹配度,根据所述正匹配度及所述负匹配度确定第一损失值;
将所述第二样本输入所述序列推荐模型,输出被随机掩码的商品信息的预测值,从所述历史购买商品的商品信息中获取所述被随机掩码的商品信息的真实值,根据所述预测值和所述真实值确定第二损失值;
根据所述第一损失值和所述第二损失值优化所述序列推荐模型的参数,得到训练好的序列推荐模型。
2.根据权利要求1所述的训练方法,其特征在于,所述序列推荐模型包括:嵌入层,所述嵌入层包括:用户嵌入矩阵和商品嵌入矩阵,其中,所述用户嵌入矩阵用于对用户标识进行嵌入,所述商品嵌入矩阵用于对商品信息进行嵌入;所述方法还包括:
基于所述用户标识和所述历史购买商品的商品信息对所述嵌入层进行预训练,得到预训练好的用户嵌入矩阵和商品嵌入矩阵。
3.根据权利要求2所述的训练方法,其特征在于,所述基于所述用户标识和所述历史购买商品的商品信息对所述嵌入层进行预训练包括:
遍历所述历史购买商品的商品信息,截取第三预设数量个商品信息得到多个商品序列样本;
将每个所述商品序列样本输入所述商品嵌入矩阵,得到所述商品序列样本的商品向量;
将所述用户标识输入所述用户嵌入矩阵,得到用户向量;
根据所述用户向量和每个所述商品序列样本的商品向量,预测与每个所述商品序列样本中的最后一个商品相邻的下一个商品的商品信息;
根据所述下一个商品的商品信息的预测值和从所述历史购买商品的商品信息中获取的所述下一个商品的商品信息的真实值来优化所述嵌入层的参数,得到预训练好的所述用户嵌入矩阵和商品嵌入矩阵。
4.根据权利要求2所述的训练方法,其特征在于,所述序列推荐模型还包括:transformer层;所述将所述第三样本输入所述预设的序列推荐模型,得到用户向量、正样本商品向量与负样本商品向量包括:
将所述第三样本中包含的第一样本输入所述嵌入层和transformer层,得到表征用户特征的所述用户向量;
将所述第三样本中包含的正样本和负样本输入所述嵌入层,得到表征正样本特征的所述正样本商品向量和表征负样本特征的所述负样本商品向量。
5.根据权利要求1所述的训练方法,其特征在于,所述根据所述用户向量与所述正样本商品向量确定正匹配度,根据所述用户向量与所述负样本商品向量确定负匹配度包括:
根据所述用户向量与所述正样本商品向量的点乘结果的均值得到所述正匹配度;
根据所述用户向量与所述负样本商品向量的点乘结果的均值得到所述负匹配度。
6.一种序列推荐模型的应用方法,其特征在于,所述序列推荐模型是根据权利要求1-5中任一项所述的方法训练得到的,所述应用方法包括:
获取待推荐用户的用户标识及历史购买商品的商品信息;
在所述待推荐用户的历史购买商品的商品信息的最后添加掩码并与所述待推荐用户的用户标识构成第四样本;
将所述第四样本输入所述训练好的序列推荐模型,输出推荐的商品。
7.一种序列推荐模型的训练装置,其特征在于,包括:
第一样本确定模块,用于获取用户标识及与所述用户标识对应的历史购买商品的商品信息,并将所述历史购买商品的商品信息及所述用户标识作为第一样本;
第二样本确定模块,用于通过对所述第一样本中的商品信息添加随机掩码,得到第二样本;
第三样本确定模块,用于将所述第一样本中的第一预设数量个商品信息作为正样本,将商品语料库中的第二预设数量个商品信息作为负样本,将所述正样本、负样本添加到所述第一样本中得到第三样本;
第一损失值计算模块,用于将所述第三样本输入预设的序列推荐模型,得到用户向量、正样本商品向量与负样本商品向量,根据所述用户向量与所述正样本商品向量确定正匹配度,根据所述用户向量与所述负样本商品向量确定负匹配度,根据所述正匹配度及所述负匹配度确定第一损失值;
第二损失值计算模块,用于将所述第二样本输入所述序列推荐模型,输出被随机掩码的商品信息的预测值,从所述历史购买商品的商品信息中获取所述被随机掩码的商品信息的真实值,根据所述预测值和所述真实值确定第二损失值;
模型输出模块,用于根据所述第一损失值和所述第二损失值优化所述序列推荐模型的参数,得到训练好的序列推荐模型。
8.一种序列推荐模型的应用装置,其特征在于,所述序列推荐模型是根据权利要求1-5中任一项所述的方法训练得到的,所述应用装置包括:
用户数据获取模块,用于获取待推荐用户的用户标识及历史购买商品的商品信息;
第四样本确定模块,用于在所述待推荐用户的历史购买商品的商品信息的最后添加掩码并与所述待推荐用户的用户标识构成第四样本;
商品推荐模块,用于将所述第四样本输入所述训练好的序列推荐模型,输出推荐的商品。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器;
所述存储器用于存储计算机程序;
所述处理器,用于执行所述计算机程序并在执行所述计算机程序时实现如权利要求1至5中任一项所述的序列推荐模型的训练方法或权利要求6所述的序列推荐模型的应用方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器实现如权利要求1至5中任一项所述的序列推荐模型的训练方法或权利要求6所述的序列推荐模型的应用方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110865311.4A CN113592593B (zh) | 2021-07-29 | 2021-07-29 | 序列推荐模型的训练及应用方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110865311.4A CN113592593B (zh) | 2021-07-29 | 2021-07-29 | 序列推荐模型的训练及应用方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113592593A true CN113592593A (zh) | 2021-11-02 |
CN113592593B CN113592593B (zh) | 2023-05-30 |
Family
ID=78252034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110865311.4A Active CN113592593B (zh) | 2021-07-29 | 2021-07-29 | 序列推荐模型的训练及应用方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113592593B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114662642A (zh) * | 2022-05-25 | 2022-06-24 | 天津奥美自动化系统有限公司 | 一种基于物联网的阀门控制方法及系统 |
CN116151353A (zh) * | 2023-04-14 | 2023-05-23 | 中国科学技术大学 | 一种序列推荐模型的训练方法和对象推荐方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107578332A (zh) * | 2017-09-22 | 2018-01-12 | 深圳乐信软件技术有限公司 | 一种推荐现金商品的方法、装置、设备及存储介质 |
CN111738805A (zh) * | 2020-07-20 | 2020-10-02 | 北京每日优鲜电子商务有限公司 | 基于行为日志的搜索推荐模型生成方法、设备和存储介质 |
CN111797318A (zh) * | 2020-07-01 | 2020-10-20 | 喜大(上海)网络科技有限公司 | 信息的推荐方法、装置、设备和存储介质 |
CN112598462A (zh) * | 2020-12-19 | 2021-04-02 | 武汉大学 | 基于协同过滤和深度学习的个性化推荐方法及系统 |
CN112712418A (zh) * | 2021-03-25 | 2021-04-27 | 腾讯科技(深圳)有限公司 | 推荐商品信息的确定方法和装置、存储介质及电子设备 |
WO2021081962A1 (zh) * | 2019-10-31 | 2021-05-06 | 华为技术有限公司 | 推荐模型的训练方法、推荐方法、装置及计算机可读介质 |
CN113129053A (zh) * | 2021-03-29 | 2021-07-16 | 北京沃东天骏信息技术有限公司 | 信息推荐模型训练方法、信息推荐方法及存储介质 |
CN113158047A (zh) * | 2021-04-22 | 2021-07-23 | 平安科技(深圳)有限公司 | 推荐模型训练、信息推送方法、装置、设备及介质 |
-
2021
- 2021-07-29 CN CN202110865311.4A patent/CN113592593B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107578332A (zh) * | 2017-09-22 | 2018-01-12 | 深圳乐信软件技术有限公司 | 一种推荐现金商品的方法、装置、设备及存储介质 |
WO2021081962A1 (zh) * | 2019-10-31 | 2021-05-06 | 华为技术有限公司 | 推荐模型的训练方法、推荐方法、装置及计算机可读介质 |
CN111797318A (zh) * | 2020-07-01 | 2020-10-20 | 喜大(上海)网络科技有限公司 | 信息的推荐方法、装置、设备和存储介质 |
CN111738805A (zh) * | 2020-07-20 | 2020-10-02 | 北京每日优鲜电子商务有限公司 | 基于行为日志的搜索推荐模型生成方法、设备和存储介质 |
CN112598462A (zh) * | 2020-12-19 | 2021-04-02 | 武汉大学 | 基于协同过滤和深度学习的个性化推荐方法及系统 |
CN112712418A (zh) * | 2021-03-25 | 2021-04-27 | 腾讯科技(深圳)有限公司 | 推荐商品信息的确定方法和装置、存储介质及电子设备 |
CN113129053A (zh) * | 2021-03-29 | 2021-07-16 | 北京沃东天骏信息技术有限公司 | 信息推荐模型训练方法、信息推荐方法及存储介质 |
CN113158047A (zh) * | 2021-04-22 | 2021-07-23 | 平安科技(深圳)有限公司 | 推荐模型训练、信息推送方法、装置、设备及介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114662642A (zh) * | 2022-05-25 | 2022-06-24 | 天津奥美自动化系统有限公司 | 一种基于物联网的阀门控制方法及系统 |
CN116151353A (zh) * | 2023-04-14 | 2023-05-23 | 中国科学技术大学 | 一种序列推荐模型的训练方法和对象推荐方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113592593B (zh) | 2023-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108427708B (zh) | 数据处理方法、装置、存储介质和电子装置 | |
CN112231584B (zh) | 基于小样本迁移学习的数据推送方法、装置及计算机设备 | |
CN109961080B (zh) | 终端识别方法及装置 | |
WO2022100518A1 (zh) | 一种基于用户画像的物品推荐方法和装置 | |
CN111461164B (zh) | 样本数据集的扩容方法及模型的训练方法 | |
CN113592593A (zh) | 序列推荐模型的训练及应用方法、装置、设备及存储介质 | |
CN113379449B (zh) | 多媒体资源召回方法、装置、电子设备以及存储介质 | |
CN112380449B (zh) | 信息推荐方法、模型训练方法及相关装置 | |
CN110598120A (zh) | 基于行为数据的理财推荐方法及装置、设备 | |
Pan et al. | A variational point process model for social event sequences | |
CN113610610B (zh) | 基于图神经网络和评论相似度的会话推荐方法和系统 | |
CN117216281A (zh) | 一种基于知识图谱的用户兴趣扩散推荐方法及系统 | |
CN111325614B (zh) | 电子对象的推荐方法、装置和电子设备 | |
CN117217284A (zh) | 一种数据处理方法及其装置 | |
Meng et al. | Variational Bayesian context-aware representation for grocery recommendation | |
CN115618079A (zh) | 会话推荐方法、装置、电子设备及存储介质 | |
CN115510318A (zh) | 用户表征模型的训练方法、用户表征方法及装置 | |
Madi et al. | Plmwsp: Probabilistic latent model for web service qos prediction | |
CN115238188A (zh) | 一种对象推荐方法和系统及对象推荐模型系统 | |
CN115222112A (zh) | 一种行为预测方法、行为预测模型的生成方法及电子设备 | |
CN113553501A (zh) | 一种基于人工智能的用户画像预测的方法及装置 | |
CN112445981A (zh) | 社交及消费联合推荐系统、方法、存储介质、计算机设备 | |
CN117252665B (zh) | 业务推荐方法、装置、电子设备及存储介质 | |
CN114021003A (zh) | 一种序列推荐方法、装置及设备 | |
CN113742532A (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 |