CN110084670A - 一种基于lda-mlp的货架商品组合推荐方法 - Google Patents
一种基于lda-mlp的货架商品组合推荐方法 Download PDFInfo
- Publication number
- CN110084670A CN110084670A CN201910297823.8A CN201910297823A CN110084670A CN 110084670 A CN110084670 A CN 110084670A CN 201910297823 A CN201910297823 A CN 201910297823A CN 110084670 A CN110084670 A CN 110084670A
- Authority
- CN
- China
- Prior art keywords
- commodity
- user
- shelf
- preference
- model
- 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
-
- 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
- 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/0633—Lists, e.g. purchase orders, compilation or processing
- G06Q30/0635—Processing of requisition or of purchase orders
Abstract
本发明涉及货架商品组合推荐技术领域,提供一种基于LDA‑MLP的货架商品组合推荐方法,首先从订单数据中提取测试集和训练集;然后根据训练集构建LDA模型,并利用Gibbs采样求解该模型,得到用户和商品的潜在特征向量;接着构建用户商品交互矩阵;再构建MLP模型,构建并最小化目标函数以训练MLP模型;对测试集按货架分组,通过LDA模型和MLP模型得到每个货架中用户对商品的偏好,进行偏好融合,得到用户群组对商品的偏好;最后基于Top‑N算法,对偏好排序,选择偏好程度最高的前s个商品组成该货架的商品组合推荐列表。本发明能够不依赖显式评分信息、解决数据稀疏性问题,为群组用户进行商品组合推荐且推荐准确性高。
Description
技术领域
本发明涉及货架商品组合推荐技术领域,特别是涉及一种基于LDA-MLP的货架商品组合推荐方法。
背景技术
推荐系统可被视为一种信息过滤系统,能够帮助用户从大量的数据信息中过滤出对用户有用的内容。推荐系统不需要用户提供详细的信息需求,它根据用户的历史行为分析用户对信息的需求和兴趣,进行个性化计算,然后将用户感兴趣的内容、商品等推荐给用户。无人货架是一种无人操作的销售模式,将商品摆放在货架上,由消费者自主选择商品进行购买。由于无人货架受到场地空间和自身体积大小等限制,会出现货架的商品提供与用户需求不匹配的问题,这样无法满足用户的需求。可见,货架商品组合推荐方法在整个推荐系统中起着关键性作用,它利用物品和用户信息建模,预测用户的偏好。推荐方法的优劣是衡量一个推荐系统好坏的关键。
现有的货架商品组合推荐方法主要依赖用户对物品的评分情况分析用户的偏好,而实际生活中,用户很少对物品或内容打分,从而缺少显式评分信息,导致数据稀疏性问题,使得货架商品组合推荐的准确性低。除此之外,与单一用户推荐不同,无人货架商品组合推荐系统服务的对象为货架所面向的用户群组,现有的货架商品组合推荐方法无法满足为群组用户进行推荐的需求。
发明内容
针对现有技术存在的问题,本发明提供一种基于LDA-MLP的货架商品组合推荐方法,能够不依赖显式评分信息、解决数据稀疏性问题,能够为群组用户进行商品组合推荐且推荐准确性高。
本发明的技术方案为:
一种基于LDA-MLP的货架商品组合推荐方法,其特征在于,包括下述步骤:
步骤1:收集用户购买货架上商品的订单数据,从所述订单数据中提取最近一个月的订单数据作为测试集,从所述订单数据中提取每个用户最近一次购买商品的订单数据作为验证集,将所述订单数据中除测试集、验证集之外的订单数据作为训练集;所述训练集包括M个用户U={u1,u2,…,um,…,uM}的订单记录,用户um的每条订单记录为用户um在该订单中购买的商品集合,m∈{1,2,…,M},货架上商品的集合为V={v1,v2,…,vn,…,vN},n∈{1,2,…,N},货架上商品种类的集合为W={w1,w2,…,wk,…,wK},k∈{1,2,…,K};
步骤2:构建用户购买商品的LDA模型,提取用户与商品的潜在特征向量:
步骤2.1:根据所述训练集的订单数据,构建用户兴趣矩阵R=(rmn)M×N,rmn为用户um购买商品vn的次数;
步骤2.2:根据用户兴趣矩阵R,构建用户um的文档dm,组成文档集合D;其中,将用户um购买的每件商品作为文档dm中的一个单词,将用户um购买商品vn的次数rmn作为商品vn在文档dm中出现的次数;
步骤2.3:将商品的每一个种类作为一个主题,得到主题集合T=W={w1,w2,…,wk,…,wK},所述文档集合D、主题集合T构成用户购买商品的LDA模型;其中,对于用户um,主题w服从多项分布,即w~Multi(w|θm),θm为用户um的主题分布;对于主题wk,商品v服从多项分布,即为主题wk的商品分布;θm、的先验概率分布为Dirichlet分布;
步骤2.4:利用Gibbs采样对LDA模型进行求解,得到用户潜在矩阵(Θ)M×K与商品潜在矩阵(Φ)K×N;其中,(Θ)M×K的第m行为θm,将θm作为用户um的潜在特征向量,(Φ)K×N的第k行为将(Φ)K×N的第n列φn作为商品vn的潜在特征向量;
步骤3:将用户对商品的反馈作为隐式反馈,构建用户商品交互矩阵Y=(ymn)M×N;其中,若用户um购买过商品vn,则用户um与商品vn之间存在交互,ymn=1;若用户um没有购买过商品vn,则用户um与商品vn之间不存在交互,ymn=0;
步骤4:利用所述训练集,构建用户购买商品的MLP模型,然后构建目标函数,最小化所述目标函数以对MLP模型进行训练;所述MLP模型包括输入层、隐藏层、输出层,所述输入层所述隐藏层为层数为L的神经协同过滤层,隐藏层的第l层的输出为所述输出层为用户um对商品vn的偏好程度其中,fl为隐藏层第l层的映射函数,Wl、bl、al分别为隐藏层第l层的权重矩阵、偏置向量、激活函数;
步骤5:对所述测试集中的订单数据按照货架进行分组,将每个货架的订单数据输入LDA模型中,将LDA模型的输出输入训练后的MLP模型中,得到每个货架中每个用户对每个商品的偏好程度;将每个货架面向的用户集合作为一个用户群组,利用偏好融合策略对每个用户群组中各个用户对商品的偏好程度进行融合,得到该用户群组对商品的偏好程度;
步骤6:基于Top-N算法,对每个货架中用户群组对每个商品的偏好程度进行排序,选择偏好程度最高的前s个商品组成该货架的商品组合推荐列表。
所述步骤4中,所述激活函数为ReLU函数;所述目标函数为二类交叉熵损失函数
使用基于梯度下降的Adam方法最小化所述目标函数以对MLP模型进行训练;其中,y为正反馈实例集,y-为负反馈实例集;在所述训练集中,将用户购买过的商品视为正反馈实例并设置标签为1,从用户未购买过的商品中随机抽样作为负反馈实例并设置标签为0,每个正反馈实例对应四个负反馈实例。
所述步骤5中,所述偏好融合策略为平均值策略或最大值策略或痛苦避免均值策略。
本发明的有益效果为:
(1)本发明通过LDA模型,利用已知的用户订单数据,从用户购买的商品集合中发现潜在主题,利用这种潜在因素将用户与商品关联起来,进而获得用于描述用户和商品的潜在特征向量,解决了数据稀疏性问题。
(2)本发明从用户对商品的隐式反馈中学习两者之间的交互,能够不依赖显式评分信息提高了用户对商品偏好预测的准确性。
(3)本发明综合考虑了用户群组中不同用户对商品的偏好,利用偏好融合策略进行偏好融合,获得最佳的货架商品组合推荐列表,实现了单一用户推荐到群组用户推荐的扩展,提高了商品组合推荐的准确性。
附图说明
图1为本发明基于LDA-MLP的货架商品组合推荐方法的流程示意图;
图2为本发明基于LDA-MLP的货架商品组合推荐方法中LDA模型的结构示意图;
图3为本发明基于LDA-MLP的货架商品组合推荐方法中MLP模型的结构示意图;
图4为本发明基于LDA-MLP的货架商品组合推荐方法中偏好融合的过程示意图;
图5为不同主题数量下LDA模型的困惑度曲线图;
图6为不同偏好融合策略下获取用户群组偏好的准确率曲线图;
图7为不同货架商品组合推荐方法得到货架商品组合推荐列表的平均绝对误差曲线图;
图8为不同货架商品组合推荐方法得到货架商品组合推荐列表的准确率曲线图;
图9为不同货架商品组合推荐方法得到货架商品组合推荐列表的召回率曲线图;
图10为不同货架商品组合推荐方法得到货架商品组合推荐列表的综合评价指标曲线图。
具体实施方式
下面将结合附图和具体实施方式,对本发明作进一步描述。
如图1所示,为本发明基于LDA-MLP的货架商品组合推荐方法的流程图。由图1可以看出,本发明的方法主要包括三个部分A、B、C,A部分描述了用户和商品潜在特征向量的提取,B部分描述了用户对商品偏好情况的预测,C部分描述了用户偏好融合的过程。本发明的基于LDA-MLP的货架商品组合推荐方法,其特征在于,包括下述步骤:
步骤1:收集用户购买货架上商品的订单数据,从所述订单数据中提取最近一个月的订单数据作为测试集,从所述订单数据中提取每个用户最近一次购买商品的订单数据作为验证集,将所述订单数据中除测试集、验证集之外的订单数据作为训练集;所述训练集包括M个用户U={u1,u2,…,um,…,uM}的订单记录,用户um的每条订单记录为用户um在该订单中购买的商品集合,m∈{1,2,…,M},货架上商品的集合为V={v1,v2,…,vn,…,vN},n∈{1,2,…,N},货架上商品种类的集合为W={w1,w2,…,wk,…,wK},k∈{1,2,…,K}。
本实施例中,选用阳光乐选无人货架的数据集,阳光乐选是放置在室内的便利货架,是大连易维立方技术有限公司旗下产品。本实施例中,收集了上海地区从2017年6月至2017年12月的订单数据,共涉及420个商品,12865个用户,172381条订单记录,根据数据计算稀疏度为1-172481/(420×12865)=96.81%。将用户在2017年12月的订单数据作为测试集,即最近一个月各个货架销售的商品列表,用于检验最终的融合结果,评估算法的性能表现。选择每个用户最近一次购买商品的订单数据作为验证集,用来辅助模型训练,在MLP模型构建过程中检验模型。将余下的数据作为训练集,用于构建MLP模型。
步骤2:构建用户购买商品的LDA模型,提取用户与商品的潜在特征向量。
提取潜在特征向量的基本思路是利用LDA主题模型从用户购买的商品集合中发现潜在主题,将用户和商品映射到同一潜在空间中,利用这种潜在因素将用户与商品关联起来,从而获得潜在特征向量并用其描述用户的偏好和商品的特点。步骤2的具体步骤如下:
步骤2.1:根据所述训练集的订单数据,构建用户兴趣矩阵R=(rmn)M×N,rmn为用户um购买商品vn的次数;
步骤2.2:根据用户兴趣矩阵R,构建用户um的文档dm,组成文档集合D;其中,将用户um购买的每件商品作为文档dm中的一个单词,将用户um购买商品vn的次数rmn作为商品vn在文档dm中出现的次数;
步骤2.3:将商品的每一个种类作为一个主题,得到主题集合T=W={w1,w2,…,wk,…,wK},所述文档集合D、主题集合T构成用户购买商品的LDA模型;其中,对于用户um,主题w服从多项分布,即w~Multi(w|θm),θm为用户um的主题分布;对于主题wk,商品v服从多项分布,即为主题wk的商品分布;θm、的先验概率分布为Dirichlet分布;
步骤2.4:利用Gibbs采样对LDA模型进行求解,得到用户潜在矩阵(Θ)M×K与商品潜在矩阵(Φ)K×N;其中,(Θ)M×K的第m行为θm,将θm作为用户um的潜在特征向量,(Φ)K×N的第k行为将(Φ)K×N的第n列φn作为商品vn的潜在特征向量。
其中,LDA(LatentDirichletAllocation)是一种文档主题生成模型,也称为一个三层贝叶斯概率模型,包含词、主题和文档三层结构。Dirichlet分布即为狄利克雷分布(Dirichletdistribution)是一类在实数域以正单纯形(standardsimplex)为支撑集(support)的高维连续概率分布,是Beta分布在高维情形的推广。如图2所示,为本发明LDA模型的结构示意图。其中,α、β均为LDA模型的超参数,wm,n表示第m个用户的第n个商品代表的主题,vm,n表示第m个用户的第n个商品。图2描述了一个用户文档的生成过程。用户可看作是不同主题的混合,所以用户的潜在向量用不同主题的概率分布表示,而商品的潜在向量用该商品在不同主题中出现的概率来表示。为了得到用户和商品的潜在向量,需要求出θm和的后验概率分布。本发明选用Gibbs采样进行求解,条件概率公式如下:
其中,为去掉主题wi的所有其他主题,Vm为第m个用户对应的所有商品,αk、αs、βn、βt均为超参数,为第m个用户的文档里主题wk的计数中去除主题wi后的剩余个数,为第m个用户的文档里主题wk对应的商品vn的数量中去除第i个商品的剩余个数。通过条件概率公式,可以得到所有商品的采样主题,利用所有采样获得的主题和商品的对应关系,进而得到各个用户的主题分布θm、各个主题的商品分布
本实施例中,主题数量参数K=60,α=50/K,β=0.01,迭代次数为100。本实施例中,选用困惑度(perplexity)指标来评估LDA模型,perplexity的值越小,说明模型的性能越好。对于第m个用户文档的困惑度定义如下:
其中,qm表示构成该用户文档的商品的数量,Wm表示第m个用户对应的所有主题,p(v|w)表示商品v在主题w中出现的概率分布值,p(w|um)为用户um的文档的主题分布,计算每个用户的文档的困惑度,然后求其平均值用于评估LDA模型。如图5所示,为不同主题数量下LDA模型的困惑度,对不同的主题数量进行测试,得到用户文档的主题分布和任一商品在所有主题中出现的概率,其中,主题数量的选取范围是[30,35,40,45,50,55,60,65,70]。随着主题数量的增加,指标preplexity的值总体呈下降趋势,当主题数量为本实施例中的60时,preplexity达到最小,此时LDA模型的性能较好。值得注意的是,当主题数量过大时,虽然preplexity的值会很小,但是此时模型容易出现过拟合的问题,这种情况会使LDA模型的性能下降,进而影响本发明方法的质量。同时,由于主题数量对应于潜在向量的维度,较多的主题不能解决降维问题,对于学习用户和商品之间的潜在结构会有影响。
步骤3:将用户对商品的反馈作为隐式反馈,构建用户商品交互矩阵Y=(ymn)M×N;其中,若用户um购买过商品vn,则用户um与商品vn之间存在交互,ymn=1;若用户um没有购买过商品vn,则用户um与商品vn之间不存在交互,ymn=0。
其中,当用户um与商品vn之间不存在交互时,不代表用户um不喜欢该商品vn,有可能该商品vn对用户um来说是一个未知商品,将这部分缺失的信息看作未观察到的数据。由于可观察到的数据较少,这样得到的交互矩阵是稀疏的,而本发明就是利用交互矩阵中已知的数据信息,来填补矩阵中其他未知的空白部分,从而预测用户对这些未知商品的偏好程度。
步骤4:利用所述训练集,构建用户购买商品的MLP模型,然后构建目标函数,最小化所述目标函数以对MLP模型进行训练;所述MLP模型包括输入层、隐藏层、输出层,所述输入层所述隐藏层为层数为L的神经协同过滤层,隐藏层的第l层的输出为所述输出层为用户um对商品vn的偏好程度其中,fl为隐藏层第l层的映射函数,Wl、bl、al分别为隐藏层第l层的权重矩阵、偏置向量、激活函数。
所述步骤4中,所述激活函数为ReLU函数;所述目标函数为二类交叉熵损失函数
使用基于梯度下降的Adam方法最小化所述目标函数以对MLP模型进行训练;其中,y为正反馈实例集,y-为负反馈实例集;在所述训练集中,将用户购买过的商品视为正反馈实例并设置标签为1,从用户未购买过的商品中随机抽样作为负反馈实例并设置标签为0,每个正反馈实例对应四个负反馈实例。
传统的协同过滤推荐算法不足以说明用户和商品之间的联系,因为这些传统算法大多依靠于向量的简单连接,通过计算用户和商品的相似度,为用户推荐其可能感兴趣的类似商品。而本发明如图3所示,引入了神经网络结构,通过增加隐藏层,使用MLP模型学习用户和商品之间的相互作用,输入为一组用户和商品的向量,输出为该用户对该商品的偏好程度。MLP(Multi-Layer Perception),即多层感知器,是一种前向结构的人工神经网络。
由于缺少用户对商品的真实评分数据,所以为了提高推荐系统的预测准确率,将用户对商品的反馈视为隐式反馈,货架的订单数据视为隐性数据。根据用户的历史购买记录可以得到用户的正反馈实例,但是基于用户的订单数据不能得知用户不喜欢的商品,即负反馈实例无法从隐性数据中直接获得。为了解决这个问题,本发明通过从用户未购买过的所有商品中抽样处理,将抽样得到的商品作为负反馈实例用于表示用户不喜欢的商品。MLP模型的作用就是对其余未被抽样的商品进行偏好程度的预测。
对于MLP模型的输入层,每次输入为一个用户和一个商品的向量,该向量由LDA模型得到。然后利用多层神经网络,发现用户和商品之间潜在结构,这部分称为神经协同过滤层;在神经协同过滤层中,每一层比前一层拥有更少的神经元,使MLP能够从数据中学习到更多的抽象特征,从而更好地预测用户对商品的喜爱程度;选择ReLU(Rectified LinearUnit)线性整流函数作为每一层的激活函数,因为ReLU可以在一定程度上缓解梯度消失问题,提供了神经网络的稀疏表达能力,比较适合处理稀疏数据,使模型不至于过拟合,从而提高模型的性能。输出层为用户um对商品vn的偏好程度MLP将输出限制在0至1之间,这样表明了用户um与商品vn相关的可能性的大小,输出值接近1(大于等于0.5)说明用户对商品的兴趣度较高,输出值接近0(小于0.5)说明用户对商品的兴趣度较低。输出的预测值与目标值ymn越接近,认为该模型的精确度越高,因此需要最小化预测值与目标值ymn的误差。
本实施例中,MLP模型基于Keras实现,采用高斯分布初始化模型参数,期望为0,标准差为0.01,用Adam(adaptive moment estimation,自适应矩估计)优化模型,学习率为0.001,迭代100次,在每次迭代后均利用验证集对MLP模型的准确率进行评价。使用具有三层隐藏层的MLP模型,其中,最后一层隐藏层决定了该模型的性能,需要注意的是,最后一层隐藏层神经元数量过大,可能会出现过拟合现象,使性能下降。在本实施例中,设置每层神经元数量依次为32、16、8。使用基于梯度下降的Adam方法最小化目标函数,可以利用训练集迭代地更新模型的连接权重,并且能够避免其他优化算法可能存在的学习率突然消失、收敛过慢和损失函数波动较大等问题。通过MLP模型不断地进行迭代训练,计算自适应学习率并更新参数,直到目标函数收敛,得到最优模型用于预测用户的兴趣偏好。
步骤5:对所述测试集中的订单数据按照货架进行分组,将每个货架的订单数据输入LDA模型中,将LDA模型的输出输入训练后的MLP模型中,得到每个货架中每个用户对每个商品的偏好程度;将每个货架面向的用户集合作为一个用户群组,利用偏好融合策略对每个用户群组中各个用户对商品的偏好程度进行融合,得到该用户群组对商品的偏好程度。
步骤6:基于Top-N算法,对每个货架中用户群组对每个商品的偏好程度进行排序,选择偏好程度最高的前s个商品组成该货架的商品组合推荐列表。
如图4所示,为本发明偏好融合的过程示意图。图4中,N1为货架上的用户总数。为了得到无人货架最适合的商品组合,还需要对不同用户的偏好进行融合。根据每个货架面向的用户群体的喜好,得到最优的商品组合推荐列表。偏好融合方法主要有两种,分别是模型融合和推荐融合。本发明采用推荐融合获得群组的偏好,它的基本思想是先获得单一用户的偏好,然后使用偏好融合策略对群组所有成员的偏好进行融合。将每个货架视为一个群组,货架面向的所有用户作为该群组的成员。对于每一个货架,使用偏好融合策略对各个用户对商品的偏好程度进行融合,获得该群组的偏好情况,最后采用Top-N算法,对最终的偏好结果进行排序,选择偏好程度最高的前s个商品生成货架商品组合推荐列表。
所述步骤5中,所述偏好融合策略为平均值策略或最大值策略或痛苦避免均值策略。其中,平均值策略选择用户群组中所有成员对商品的偏好程度的平均值作为该组对商品的偏好程度;最大值策略选择用户群组中所有成员对商品的偏好程度的最大值作为该组对商品的偏好程度;痛苦避免均值策略选择高于某个阈值的成员对商品的偏好程度的平均值作为该组对商品的偏好程度。本实施例中,采用的偏好融合策略为平均值策略。如图6所示,为不同偏好融合策略下获取用户群组偏好的准确率曲线图。在图6中,使用平均值策略、最大值策略和痛苦避免均值策略分别对用户的偏好进行融合,得到货架对应的用户群组对不同商品的偏好程度,并通过Top-N算法对其排序,选取偏好程度最高的前s个商品生成货架商品组合推荐列表,对于货架商品组合推荐列表中的每个商品,若该商品被用户购买过,则关于该商品的推荐正确,以推荐正确的商品数量除以推荐的商品数量s得到推荐的准确率。从图中可以看出,在s值不断增大的情况下,三种策略下获取用户群组偏好的准确率均呈现出先增大后逐渐减小的趋势;当s取不同的值时,三种策略的准确率相近。当s=5时,三种策略的准确率均达到最大值,其中,本发明采用的平均值策略的准确率略高于最大值策略和痛苦避免均值策略。
本实施例中,使用平均绝对误差MAE、准确率precision、召回率recall和综合评价指标F1来评价本发明的质量,将本发明基于LDA-MLP的货架商品组合推荐方法与基于ItemKNN、K-means和LDA-CF的货架商品组合推荐方法进行比较。其中,采用不同算法的货架商品组合推荐方法得到货架商品组合推荐列表的平均绝对误差、准确率、召回率、综合评价指标曲线分别如图7、图8、图9、图10所示。
其中,利用上述四种方法,预测验证集中每个用户对商品的偏好程度,通过偏好融合与Top-N算法,选取偏好程度最高的前s个商品作为货架商品组合推荐列表,对货架商品组合推荐列表中所有商品的预测偏好程度与实际偏好程度之差的绝对值取平均,得到平均绝对误差。由图7可以看出,本发明的平均绝对误差最小。一般情况下,MAE的值越小说明方法所表现的性能越好,从而在预测用户对货架商品的偏好问题上本发明的方法相对其他三种方法有较好的表现。
对于四种方法,每种方法的准确率precision为该种方法的货架商品组合推荐列表中推荐正确的商品数量与推荐的商品数量的比值;每种方法的召回率recall为该种方法的货架商品组合推荐列表中推荐正确的商品数量与该货架卖出的商品数量的比值;F1=2*precision*recall/(precision+recall)。由图8-图10可以看出,随着s值的不断增大,四种方法的precision均先增大后逐渐减小最后趋于稳定,recall均逐渐增大,F1呈现先增大后趋于稳定的趋势。对于不同的s值,LDA-MLP算法的precision、recall和F1均高于其他三种方法,说明在数据精度上本发明方法比其他三种方法具有更好的表现。
显然,上述实施例仅仅是本发明的一部分实施例,而不是全部的实施例。上述实施例仅用于解释本发明,并不构成对本发明保护范围的限定。基于上述实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,也即凡在本申请的精神和原理之内所作的所有修改、等同替换和改进等,均落在本发明要求的保护范围内。
Claims (3)
1.一种基于LDA-MLP的货架商品组合推荐方法,其特征在于,包括下述步骤:
步骤1:收集用户购买货架上商品的订单数据,从所述订单数据中提取最近一个月的订单数据作为测试集,从所述订单数据中提取每个用户最近一次购买商品的订单数据作为验证集,将所述订单数据中除测试集、验证集之外的订单数据作为训练集;所述训练集包括M个用户U={u1,u2,...,um,...,uM}的订单记录,用户um的每条订单记录为用户um在该订单中购买的商品集合,m∈{1,2,...,M},货架上商品的集合为V={v1,v2,...,vn,...,vN},n∈{1,2,...,N},货架上商品种类的集合为W={w1,w2,...,wk,...,wK},k∈{1,2,...,K};
步骤2:构建用户购买商品的LDA模型,提取用户与商品的潜在特征向量:
步骤2.1:根据所述训练集的订单数据,构建用户兴趣矩阵R=(rmn)M×N,rmn为用户um购买商品vn的次数;
步骤2.2:根据用户兴趣矩阵R,构建用户um的文档dm,组成文档集合D;其中,将用户um购买的每件商品作为文档dm中的一个单词,将用户um购买商品vn的次数rmn作为商品vn在文档dm中出现的次数;
步骤2.3:将商品的每一个种类作为一个主题,得到主题集合T=W={w1,w2,...,wk,...,wK},所述文档集合D、主题集合T构成用户购买商品的LDA模型;其中,对于用户um,主题w服从多项分布,即w~Multi(w|θm),θm为用户um的主题分布;对于主题wk,商品v服从多项分布,即 为主题wk的商品分布;θm、的先验概率分布为Dirichlet分布;
步骤2.4:利用Gibbs采样对LDA模型进行求解,得到用户潜在矩阵(Θ)M×K与商品潜在矩阵(Φ)K×N;其中,(Θ)M×K的第m行为θm,将θm作为用户um的潜在特征向量,(Φ)K×N的第k行为将(Φ)K×N的第n列φn作为商品vn的潜在特征向量;
步骤3:将用户对商品的反馈作为隐式反馈,构建用户商品交互矩阵Y=(ymn)M×N;其中,若用户um购买过商品vn,则用户um与商品vn之间存在交互,ymn=1;若用户um没有购买过商品vn,则用户um与商品vn之间不存在交互,ymn=0;
步骤4:利用所述训练集,构建用户购买商品的MLP模型,然后构建目标函数,最小化所述目标函数以对MLP模型进行训练;所述MLP模型包括输入层、隐藏层、输出层,所述输入层所述隐藏层为层数为L的神经协同过滤层,隐藏层的第l层的输出为所述输出层为用户um对商品vn的偏好程度其中,fl为隐藏层第l层的映射函数,Wl、bl、al分别为隐藏层第l层的权重矩阵、偏置向量、激活函数;
步骤5:对所述测试集中的订单数据按照货架进行分组,将每个货架的订单数据输入LDA模型中,将LDA模型的输出输入训练后的MLP模型中,得到每个货架中每个用户对每个商品的偏好程度;将每个货架面向的用户集合作为一个用户群组,利用偏好融合策略对每个用户群组中各个用户对商品的偏好程度进行融合,得到该用户群组对商品的偏好程度;
步骤6:基于Top-N算法,对每个货架中用户群组对每个商品的偏好程度进行排序,选择偏好程度最高的前s个商品组成该货架的商品组合推荐列表。
2.根据权利要求1所述的基于LDA-MLP的货架商品组合推荐方法,其特征在于,所述步骤4中,所述激活函数为ReLU函数;所述目标函数为二类交叉熵损失函数
使用基于梯度下降的Adam方法最小化所述目标函数以对MLP模型进行训练;其中,y为正反馈实例集,y-为负反馈实例集;在所述训练集中,将用户购买过的商品视为正反馈实例并设置标签为1,从用户未购买过的商品中随机抽样作为负反馈实例并设置标签为0,每个正反馈实例对应四个负反馈实例。
3.根据权利要求1所述的基于LDA-MLP的货架商品组合推荐方法,其特征在于,所述步骤5中,所述偏好融合策略为平均值策略或最大值策略或痛苦避免均值策略。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910297823.8A CN110084670B (zh) | 2019-04-15 | 2019-04-15 | 一种基于lda-mlp的货架商品组合推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910297823.8A CN110084670B (zh) | 2019-04-15 | 2019-04-15 | 一种基于lda-mlp的货架商品组合推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110084670A true CN110084670A (zh) | 2019-08-02 |
CN110084670B CN110084670B (zh) | 2022-03-25 |
Family
ID=67415121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910297823.8A Active CN110084670B (zh) | 2019-04-15 | 2019-04-15 | 一种基于lda-mlp的货架商品组合推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110084670B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111160954A (zh) * | 2019-12-16 | 2020-05-15 | 南京理工大学 | 基于图卷积网络模型的面向群组对象的推荐方法 |
CN111259222A (zh) * | 2020-01-22 | 2020-06-09 | 北京百度网讯科技有限公司 | 物品推荐方法、系统、电子设备及存储介质 |
CN111314934A (zh) * | 2020-02-14 | 2020-06-19 | 西北工业大学 | 一种统一最优判决的网络协同探测方法 |
CN111582932A (zh) * | 2020-03-25 | 2020-08-25 | 平安壹钱包电子商务有限公司 | 场景间信息推送方法、装置、计算机设备及存储介质 |
CN112184391A (zh) * | 2020-10-16 | 2021-01-05 | 中国科学院计算技术研究所 | 一种推荐模型的训练方法、介质、电子设备和推荐模型 |
CN113158049A (zh) * | 2021-04-22 | 2021-07-23 | 中国科学院深圳先进技术研究院 | 一种知识增强的推荐方法和系统 |
CN113553000A (zh) * | 2018-07-18 | 2021-10-26 | 成都忆芯科技有限公司 | 降低集成电路功耗的方法及其控制电路 |
WO2021217938A1 (zh) * | 2020-04-30 | 2021-11-04 | 平安国际智慧城市科技股份有限公司 | 基于大数据的资源推荐方法、装置、计算机设备及存储介质 |
CN113761371A (zh) * | 2021-09-08 | 2021-12-07 | 东北大学 | 一种基于匿名化隐私保护的推荐方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150120722A1 (en) * | 2013-10-31 | 2015-04-30 | Telefonica Digital Espana, S.L.U. | Method and system for providing multimedia content recommendations |
CN108363804A (zh) * | 2018-03-01 | 2018-08-03 | 浙江工业大学 | 基于用户聚类的局部模型加权融合Top-N电影推荐方法 |
CN108898459A (zh) * | 2018-06-25 | 2018-11-27 | 中国联合网络通信集团有限公司 | 一种商品推荐方法及装置 |
CN109299370A (zh) * | 2018-10-09 | 2019-02-01 | 中国科学技术大学 | 多对级个性化推荐方法 |
CN109299396A (zh) * | 2018-11-28 | 2019-02-01 | 东北师范大学 | 融合注意力模型的卷积神经网络协同过滤推荐方法及系统 |
-
2019
- 2019-04-15 CN CN201910297823.8A patent/CN110084670B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150120722A1 (en) * | 2013-10-31 | 2015-04-30 | Telefonica Digital Espana, S.L.U. | Method and system for providing multimedia content recommendations |
CN108363804A (zh) * | 2018-03-01 | 2018-08-03 | 浙江工业大学 | 基于用户聚类的局部模型加权融合Top-N电影推荐方法 |
CN108898459A (zh) * | 2018-06-25 | 2018-11-27 | 中国联合网络通信集团有限公司 | 一种商品推荐方法及装置 |
CN109299370A (zh) * | 2018-10-09 | 2019-02-01 | 中国科学技术大学 | 多对级个性化推荐方法 |
CN109299396A (zh) * | 2018-11-28 | 2019-02-01 | 东北师范大学 | 融合注意力模型的卷积神经网络协同过滤推荐方法及系统 |
Non-Patent Citations (2)
Title |
---|
吴云昌,刘柏嵩,王洋洋,费晨杰: ""群组推荐分析与研究综述"", 《电信科学》 * |
李振新: ""基于Phrase-LDA主题模型的茶产品群组推荐研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113553000A (zh) * | 2018-07-18 | 2021-10-26 | 成都忆芯科技有限公司 | 降低集成电路功耗的方法及其控制电路 |
CN111160954A (zh) * | 2019-12-16 | 2020-05-15 | 南京理工大学 | 基于图卷积网络模型的面向群组对象的推荐方法 |
CN111160954B (zh) * | 2019-12-16 | 2022-09-06 | 南京理工大学 | 基于图卷积网络模型的面向群组对象的推荐方法 |
CN111259222A (zh) * | 2020-01-22 | 2020-06-09 | 北京百度网讯科技有限公司 | 物品推荐方法、系统、电子设备及存储介质 |
CN111259222B (zh) * | 2020-01-22 | 2023-08-22 | 北京百度网讯科技有限公司 | 物品推荐方法、系统、电子设备及存储介质 |
CN111314934A (zh) * | 2020-02-14 | 2020-06-19 | 西北工业大学 | 一种统一最优判决的网络协同探测方法 |
CN111314934B (zh) * | 2020-02-14 | 2021-08-10 | 西北工业大学 | 一种统一最优判决的网络协同探测方法 |
CN111582932A (zh) * | 2020-03-25 | 2020-08-25 | 平安壹钱包电子商务有限公司 | 场景间信息推送方法、装置、计算机设备及存储介质 |
WO2021217938A1 (zh) * | 2020-04-30 | 2021-11-04 | 平安国际智慧城市科技股份有限公司 | 基于大数据的资源推荐方法、装置、计算机设备及存储介质 |
CN112184391A (zh) * | 2020-10-16 | 2021-01-05 | 中国科学院计算技术研究所 | 一种推荐模型的训练方法、介质、电子设备和推荐模型 |
CN112184391B (zh) * | 2020-10-16 | 2023-10-10 | 中国科学院计算技术研究所 | 一种推荐模型的训练方法、介质、电子设备和推荐模型 |
CN113158049A (zh) * | 2021-04-22 | 2021-07-23 | 中国科学院深圳先进技术研究院 | 一种知识增强的推荐方法和系统 |
CN113158049B (zh) * | 2021-04-22 | 2022-11-01 | 中国科学院深圳先进技术研究院 | 一种知识增强的推荐方法和系统 |
CN113761371A (zh) * | 2021-09-08 | 2021-12-07 | 东北大学 | 一种基于匿名化隐私保护的推荐方法 |
CN113761371B (zh) * | 2021-09-08 | 2023-08-01 | 东北大学 | 一种基于匿名化隐私保护的推荐方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110084670B (zh) | 2022-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110084670A (zh) | 一种基于lda-mlp的货架商品组合推荐方法 | |
Koohi et al. | A new method to find neighbor users that improves the performance of collaborative filtering | |
Albadvi et al. | A hybrid recommendation technique based on product category attributes | |
CN111242729A (zh) | 一种基于长短期兴趣的序列化推荐方法 | |
CN109710835B (zh) | 一种带有时间权重的异构信息网络推荐方法 | |
CN109978660A (zh) | 一种基于强化学习框架的推荐系统离线训练方法 | |
CN109740924A (zh) | 融合属性信息网络和矩阵分解的物品评分预测方法 | |
CN106157156A (zh) | 一种基于用户社区的协作推荐系统 | |
CN110503508A (zh) | 一种层级多粒度矩阵分解的物品推荐方法 | |
CN112100512A (zh) | 一种基于用户聚类和项目关联分析的协同过滤推荐方法 | |
CN109584003A (zh) | 智能推荐系统 | |
Levinas | An analysis of memory based collaborative filtering recommender systems with improvement proposals | |
Deng et al. | Analysis and prediction of bank user churn based on ensemble learning algorithm | |
CN116304299A (zh) | 一种融和用户兴趣演化和梯度提升算法的个性化推荐方法 | |
Yang et al. | A group preference-based item similarity model: comparison of clustering techniques in ambient and context-aware recommender systems | |
Dwivedi et al. | An Item-based Collaborative Filtering Approach for Movie Recommendation System | |
CN105868422A (zh) | 一种基于弹性维特征向量优化抽取的协同过滤推荐方法 | |
CN113763095A (zh) | 信息推荐方法、装置和模型训练方法、装置 | |
Shen et al. | A new user similarity measure for collaborative filtering algorithm | |
CN116523597A (zh) | 大数据云熵挖掘的电子商务定制化推荐方法 | |
CN110570226A (zh) | 一种联合主题模型和异质信息网络的评分预测方法 | |
CN115525819A (zh) | 一种面向信息茧房的跨领域推荐方法 | |
Fischer et al. | Personalization through user attributes for transformer-based sequential recommendation | |
Wang et al. | Personalized commodity recommendations of retail business using user feature based collaborative filtering | |
CN112767085A (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 |