没有合适的资源?快使用搜索试试~ 我知道了~
智能系统与应用14(2022)200070利用项目特征进行下一项目推荐的两阶段系统Madiraju Srilakshmi, Gourab Chowdhury,Sudeshna Sarkar计算机科学与工程系,印度理工学院,Kharagpur,西孟加拉邦,721302,印度Ar ticlei n f o ab st ract文章历史:收到2021年2022年2月4日修订2022年3月3日接受2022年3月4日在线发布保留字:冷启动问题项目嵌入下一个项目推荐任务的目的是预测用户下一个可能与之交互的项目,给定用户先前的交易。在本文中,我们探讨了使用离散项目的功能,以提高性能的下一个项目的推荐系统。我们设计了一种基于用户事务和项目特征的混合嵌入方法来表示项目,可以捕获项目-项目共现以及项目特征。我们提出了一个两阶段的下一个项目推荐的任务模型。在第一阶段,预测下一个项目的特征,基于该特征生成候选项目。在第二阶段中,对候选项进行排序,并将排名靠前的项推荐给用户。我们的模型能够推荐新的项目,因为候选项目是根据项目的特征来选择的。我们在三个不同的数据集上评估了我们的模型,包括两个公共数据集,并表明我们的模型与几个最先进的下一个项目预测模型相比取得了显着的改进。© 2022作者由Elsevier Ltd.发布。这是CC BY许可下的开放获取文章(http://creativecommons.org/licenses/by/4.0/)1. 介绍电子商务门户通常托管大量的项目,并且推荐系统试图预测用户对这些项目的偏好,并向用户提供相关的项目集推荐系统的主要信息来源是用户-项目交互记录、项目内容和用户个人资料。1. 用户-项目交互可以是购买、点击、查看等形式。某些系统可能具有附加信息,例如用户对给定项目集的评论或评级2. 项目内容可以是结构化或非结构化数据的形式。结构化数据包括离散特征,如类别、颜色、品牌等,和数字特征,如物品的价格项目的图像和为项目编写的评论文本是非结构化内容的示例。3. 用户资料包括用户人口统计特征,例如年龄、性别、位置及职业。推荐系统的标准方法是协同过滤和基于内容的过滤。协作填充系统考虑用户的交互以生成推荐。然而,当用户-项目交互非常少时,这些系统表现不佳。协作过滤方法也无法处理新用户和新项目,这是一个问题。∗通讯作者。电子邮件地址:sreelakshmi@iitkgp.ac.in(M.Srilakshmi),gourab@iitkgp.ac.in(G.Chowdhury),sudeshna@cse.iitkgp.ac.in(S.Sarkar)。这被称为冷启动问题。基于内容的填充方法基于诸如项目特征和用户简档的内容向用户推荐项目。混合推荐系统结合了协作过滤和基于内容的过滤方法来推荐项目。我们考虑的任务,下一个项目的推荐用户项目的交易和项目内容包括离散的项目的功能。项目特征对评价的有效性起着重要的作用这是推荐系统的一个重要组成部分,当用户-项目事务稀疏或项目完全是新的时,这是必不可少的。因此,我们希望利用项目功能以及用户事务历史来学习项目的有效表示,并利用该表示来提高提供给用户的推荐的质量。我们分别从用户-项目事务和项目特征生成嵌入,并将它们连接起来以获得最终嵌入。我们表明,这种嵌入是有效的,当比较流行的嵌入方法,如2Vec(Grbovic等人,2015)和Meta-B2 Vec(Vasile等人,2016年),当多项功能可用时。用于下一个项目预测的典型推荐模型对每个用户的目录中的可用项目进行评分,并推荐顶部项目(Hidasi等人,2015年)的报告。然而,在目录规模巨大的现实世界场景中,为每个用户对目录中的所有项目进行评分具有挑战性。这个问题可以通过两阶段系统来解决(Covington等人,2016年)。在这样的系统中,第一阶段是候选生成阶段,其中选择项目的子集作为候选集合。这减少https://doi.org/10.1016/j.iswa.2022.2000702667-3053/© 2022作者。出版社:Elsevier Ltd这是CC BY许可下的开放获取文章(http://creativecommons.org/licenses/by/4.0/)可在ScienceDirect上获得目录列表智能系统及其应用期刊主页:www.elsevier.com/locate/iswaM. Srilakshmi,G.Chowdhury和S.Sarkar智能系统与应用14(2022)2000702第二阶段评分的项目总数, 被称为候选人排名阶段。在这项工作中,我们提出了一个有效的两阶段模型的下一个项目推荐的任务中的情况下,离散项目的功能。我们的系统预测下一个项目的特征,作为候选生成的基础。这种方法还解决了物品的冷启动问题。由于候选项是基于预测的特征来选择的,因此之前未看到的项也可以被选择。1.1. 方法学贡献这项研究的贡献可归纳如下。• 我们提出了一种混合嵌入方法来表示项目,可以捕获项目-项目共现以及项目的特征。我们表明,这种嵌入有助于提高推荐模型的性能时,COM-兼容的标准技术,如C2 Vec和Meta-C2 Vec。• 我们定义了一种基线方法(一阶段模型),它使用上述项目表示来推荐下一个项目。我们表明,这种方法是更好的和可比的最先进的系统。• 我们提出了一个有效的两阶段模型的任务下一个项目的推荐。我们设计了一个新颖的多任务候选项生成框架,它使用项目特征来生成候选项。我们的方法可以解决项目冷启动问题,这是非常重要的推荐系统。• 我们估计我们的一阶段和两阶段的可训练参数的系统的计算复杂性,并表明,两阶段的模型是不复杂的比一阶段的模型。• 我们用三个不同的数据集进行实验,即,Capillary Ap-parel数 据 集 , Amazon Beauty 评 论 数 据 集 ( McAuley 等 人 ,2015)和Behance数据集(He等人,2016年)。我们比较了两阶段模型与一阶段模型、几种基线方法的结果,表明我们的两阶段模型显著优于它们。本文件其余部分的组织如下。第2描述了相关工作部分3提出所研究的问题和用于实验的数据集。第4节介绍了项目嵌入生成的方法,第5节介绍了一阶段模型,第6节描述了所提出的两阶段模型。第7节给出了实验结果。最后,第8对本文进行了总结。2. 相关工作在本节中,我们首先概述不同的项目嵌入技术。然后,我们回顾下一个项目的推荐系统,只使用用户项目的推荐互动。最后,我们给出了一个概述的方法,利用项目内容以及用户项目的交互下一个项目的预测。2.1. 项目嵌入方法项目表示对推荐系统的有效性起着重要的作用。已经提出了许多技术来通过利用用户-项目事务和项目内容信息(诸如特征、图像、评论文本)来生成良好的项目表示流行的技术之一是B2Vec(Grbovic等人,2015年)的报告。给定用户交互的一系列项目,R2Vec的目标是找到以下内容的低维表示:项,使得在用户事务中共同出现的项在结果向量空间中接近。该方法将skip-gram模型应用于用户事务序列,得到项目嵌入。Meta-12 Vec(Vasile等人, 2016)是一个扩展到2Vec。在该方法中,除了用户事务之外,还利用离散特征形式的项目内容来生成项目嵌入。通过分别对项目和特征之间的每个交互进行建模来学习嵌入。Content2Vec(Nedeigh等人,2017)使用项目的结构化和非结构化内容来生成项目嵌入。项目由从项目-项目共现信息、项目图像和评论文本获得的统一嵌入表示。图像嵌入是使用预训练的AlexNet生成的,产品文本是使用Word2Vec编码的。 基于项-项共现的嵌入是利用Vec算法实现的。这些模块通过使用成对残差单元来组合与Content2Vec和Content2Vec相比,我们提出了一种混合嵌入技术,该技术利用用户事务以及离散项特征来获得项表示。我们的方法是MetaQuotes 2Vec的简化版本与MetaQuotes2Vec不同,我们分别基于transactions学习特征嵌入和项嵌入,并将它们组合起来以获得最终表示。在我们的实验中,我们表明这种方法比MetaQuotes 2Vec更有效。2.2.面向下一项预测的协同推荐系统在本节中,我们回顾了只使用用户-项目交互的下一个项目推荐任务的方法。递归神经网络(RNN)及其变体(LSTM和GRU)已被广泛应用于下一项建议的任务,因为它们捕获了用户事务之间的时间顺序。GRU4Rec(Hidasi等人,Hidasi et al.在2015年提出的RNN模型是第 一 个 使用RNN对用户事务进行建模的工作。RNN在用户会话中的item_ids的独热表示上进行训练,并预测新用户会话的下一个项目。Tan等人(2016)通过适应数据增强技术改进了这种方法,该技术将用户会话拆分为许多子会话进行训练。GRU4Rec ++(Hidasi和Karatzoglou,2018)是GRU4Rec的改进版本,其中包含自定义损失函数,如TOP1损失,BPR损失。Gui和Xu(2018)使用了2Vec嵌入(Grbovic等人,2015)来表示项目,并将它们与基于RNN的模型一起使用。最近的方法如NARM(Li et al., 2017)、STAMP(Liu等人, 2018)和SR-GNN(Wu et al., 2019)采用注意力机制来捕捉用户在给定用户会话中的主要目的。NARM(Li等人,2017)使用全局编码器来使用GRU对完整的用户会话信息进行编码,并且使用本地编码器来使用具有注意力的GRU学习用户在会话中的主要目的。两者的输出嵌入被组合以表示用户会话。通过使用学习会话嵌入和项目嵌入之间的双线性相似性函数来计算项目得分。 STAMP(Liu等人, 2018)将项得分计算为项嵌入和加权用户嵌入的内积。用户嵌入是总体偏好(用户会话中所有项目嵌入的平均值)和当前兴趣(最后点击的项目嵌入)的双线性组合。注意力权重是使用简单的前馈网络在会话序列上学习的。SR-GNN(Wu等人,2019 ) 将 会 话 序 列 建 模 为 图 形 结 构 数 据 。 图 神 经 网 络(GNN)基于会话图学习项目嵌入,可以捕捉项目的复杂转换。然后,每个会话被表示为使用注意力机制的该用户会话的总体偏好和当前偏好的组合。M. Srilakshmi,G.Chowdhury和S.Sarkar智能系统与应用14(2022)2000703联系我们12T12吨吨上述工作的主要局限性是无法推荐新项目。此外,这些方法对目录中的每个项目进行评分以向用户推荐最佳项目,这在现实世界场景中在计算上是昂贵的。在这项研究中,我们提出了一个两阶段的系统,解决了这两个问题,通过利用离散项功能,提高性能表1预处理后的数据统计2.3.用于下一项预测的混合推荐系统已经提出了各种方法来利用项目内容信息以及用户交易历史来提高下一项目推荐的质量。并行RNN(P-RNN)(Hidasi等人,2016)以图像和回顾的形式利用项目内容来帮助用户会话建模。P-RNN由多个RNN组成,每个RNN用于项目的每个表示(例如,一个用于item_ID,一个用于文本,一个用于图像)。 的隐藏状态这些网络被组合以生成所有项目的分数采用带tf-idf权重的词袋模型对文本,卷积神经网络(CNN)用于编码图像。这项工作表明,将项目内容纳入用户行为建模可以显着提高性能。Qian Zhao等人提出了一种基于类别特征的项目分类模型(Zhao等人,2018年,推荐项目。他们引入了一个额外的项目特征预测任务,通过多任务学习(MTL )和分层Softmax(HSM)来增强实际的项目预测。在MTL中,特征预测和项目预测模型共享相同的用户状态。他们表明,特征预测模型通过迁移学习使项目模型学习受益。在HSM中,项模型输出基于特征模型输出。项目的概率计算为特征概率与由特征定义的项目集内的项目3.1. 问题定义下一项推荐是根据用户过去的交互来预测他/她的下一次交互的任务。在这项工作中,我们使用所有用户的交易记录和项目内容信息的离散特征的项目。设I ={i1,i2,. . . ,i m}是项的集合,并且U ={u1,u2,. . . 、un是用 户 的集合,并且F = f1,f2,. . . ,fk是项 目 的集合功能可用。 每个要素都有一组值,每个项与特征的值相关联。设用户u i的交互序列为(xi,xi,. . . ,x i),其中x i是指项目用户在时间步t交互。因此,给定所有用户交互序列,项目特征和具有先前交互序列(xi,xi,. . .,xi),任务是预测下一个可能的交互x1。根据获得的概率值进行排名项目推荐。这项工作与我们在利用离散项目特征来提高推荐系统性能方面的3.2.数据集描述t+1系统.然而,本研究仅限于处理一个类别特征,而我们的系统是设计来处理多个离散项目特征。两阶段系统Covington等人提出了一个两阶段系统,包括候选生成和排名为推荐YouTube视频(Covington等人,2016年)。它们通过映射用户的观看历史和搜索标记来学习用户表示以及诸如年龄、性别的人口统计特征。 的 候选 视频 是 获得 通过 对所述用户嵌入执行最近邻查找。学习使用逻辑回归给出每个视频得分的深度神经网络来对候选视频进行排名类似于这项工作,我们的研究也设计了一个两阶段的系统来产生建议,但特别关注杠杆老化离散项目的功能。我们提出了一种混合嵌入来表示捕获基于用户交易的相似性以及项目特征的项目。此外,我们设计了一个新的多任务框架来预测项目特征,然后使用这些特征来生成候选项目集。与逻辑回归对项目进行排序不同,我们根据用户个人资料与候选项目之间的相似性对候选项目进行排序。3. 预赛在本节中,我们首先正式定义任务。然后,我们介绍了在这项工作中使用的数据集的描述为了评估所提出的方法,三个数据集,即Capil-Lary、亚马逊和Behance都被考虑在内。毛细管数据集是由毛细管技术国际私人有限公司提供的匿名服装数据。AmazonBeauty和Behance数据集由来自全球各个国家的用户交互组成。因此,我们的实验结果不限于任何国家的设置。每个数据集的详细信息如下所述。我们还介绍了应用的预处理步骤。预处理后的数据统计见表1。3.2.1.毛细管服装数据集这个数据集是匿名的,属于服装领域。该数据集包括用户交易记录的1年数据以及项目特征。用户交易数据包括user_id、item_id和transaction_time。该项目的特点是cat-gory,颜色,面料,设计,适合,袖子和大小。所有的特征都是猫的特征。前十个月的数据被用作训练集,其余的用于测试。我们只删除一次交易的用户。我们认为测试集中的一个项目是新的,如果它没有出现在训练集中。某些项目具有多个颜色值。在这种情况下,我们只考虑原色。例如,如果颜色值是黑色和红色,则原色被视为黑色。3.2.2.亚马逊美容评论数据集Amazon Beauty评论数据集是Amazon评论数据集的子集(McAuley等人,2015年),由McAuley et al. 该数据集属于美容领域。我们认为统计毛细管亚马逊Behance互动总数1,063,764198,5021,000,000#训练序列649,714137,967888,944#测试序列97,35229,47847,559#平均序列长度4819用户总数287,62722,36363,497#项目47,89612,101178,788#新项目1,4993268,277#总提及次数新项目4,3176,1498,633#类别总数5233-#总颜色98--设计总数27--总套管数3--#总拟合23--#总面料60--品牌总数-4,174-业主总数--51,487M. Srilakshmi,G.Chowdhury和S.Sarkar智能系统与应用14(2022)2000704我不不我Xi.不用户评论是用户与评论所针对的项目之间的交互。不考虑用户给出的评论文本或评级值我们只考虑项目的离散特征,即,品牌和类别。每件商品都与一个品牌相关联,并属于一个或多个类别。用户交互(评论)按时间排序,前80%的数据用作训练集,其余数据用作测试集。只有一次交互的用户将被删除。3.2.3.Behance数据集Behance 数 据 集 ( He 等 人 , 2016 ) 由 He 等 人 从www.example.com收集并发布Behance.net,这是一个用户可以设计项目并与其他用户分享的网站。用户可以在浏览网站时欣赏其他人创建的项目。向用户推荐项目的任务可以表述为预测用户欣赏系统中项目的概率。每个项目都有一个所有者,有些项目可能有多个所有者。对于每个用户,我们将除了最后一个项目之外的整个欣赏项目序列作为训练集,最后一个项目用于测试。只有一个赞赏的用户将被删除。4. 项嵌入生成设计有效推荐模型的第一步是提出良好的项目表示。已经表明,项目嵌入在提高提供给用户的推荐的质量方面起着关键作用(Grbovic等人,2015年; Nedeigh等人,2017; Vasile等人,2016年)。为了创建有效的项目嵌入,我们希望利用项目特征和用户交易历史。虽然R2vec(Grbovic等人,2015)仅基于用户交易序列生成项目嵌入,Meta-B2 Vec(Vasile等人, 2016)利用离散项目特征以及用户交易序列来获得项目嵌入。我们首先介绍了B2Vec的细节,因为我们在我们提出的嵌入方法中使用了这种技术。然后,我们在4.2节中描述Meta-P2 Vec。关于这一点,我们在第4.3节中提出了我们提出的方法,这是一种简单有效的方法,用于合并多个项目特征。Fig. 1. 2Vec Architecture.term(J),并且将它的负值视为损失函数。4.1.2VecJ =..不logP(xit+j |xt)(1)给定一系列用户事务,2015)学习项的D维表示,使得在用户事务中共同出现的项在所得向量空间中接近。该技术应用skip-gram模型(Mikolovd∈Dtrxi∈d−c≤j≤c,j/=0LC|T = −J(2)其中Dtr是项序列的集合,c是上下文win。例如, 2013)使用项序列的概念来描述项序列道琼斯指数。 概率P(xit+j|x i) of observing a context item将该序列中的项设置为“字符串”,将该序列中的项设置为“字符串”。通过最小化加权交叉熵来学习嵌入Xit+j是的。给定当前项xi使用softmax函数定义,在经验分布和模型化条件分布exp(WT U )在给定目标项(T)的情况下,骗局的规模文本窗口(c)确定有多少项目之前和之后,给定目标项被包括作为上下文项。 在我们的实验中-P(xi|x ) =.p∈I我X i不t+jexp( WTUp)不(三)在此情况下,C被设置为2。其中,W xi U xi 是对应于权重的潜在向量t t图示如图1所示。所示图 1、skip-gram模型采用全连接神经网络矩阵W和U分别用于项目xi,Wi被用作txt训练后的项目xi的最终表示我指的是只有一个隐藏层输入图层设置为具有神经元作为项目的总数(m),因为目标项目的独热编码被给定为输入。隐藏层大小被设置为结果项嵌入的维度(D)。输入层和隐藏层之间的权重矩阵(W)的维数为m×D,该矩阵中的每一行表示项目集(I)中的一个项目。同样,来自隐藏层的连接并且Xt指的是由用户Ui在时间步t4.2.Meta-B2VecMeta-B2 Vec通过单独建模项目和特征之间的每个交互来学习Xt+jM. Srilakshmi,G.Chowdhury和S.Sarkar智能系统与应用14(2022)2000705嵌入。的到输出层的距离可以由大小为D×m的矩阵(U)来描述。在这种情况下,U的每一列表示来自给定损失函数(LMP2V )的Meta-B2 Vec的。项目集。2Vec的目标是最大化以下内容LMP2 V= LC|T + λ(L f(C))|T + LC|f(T)+LT |f(T)+L f(C)|f(T)(4)M. Srilakshmi,G.Chowdhury和S.Sarkar智能系统与应用14(2022)2000706|||我我K不不不12不不{}不6英寸i不在上面的表达式中,T和C指的是目标项和上下文项。f(C),f(T)分别表示上下文项的特征和目标项的特征。λ是正则化参数。使用的损失函数(L)是加权交叉熵。 L C|T和Lf(C)|f(T)通过对条件似然建模来编码损失项目序列和特征序列。LT f(T)是加权的给定item_id的特征,观察到的item_id的条件概率与预测的条件概率之间的交叉熵。能力Lf(C)T和LC f(T)分别表示在给定目标项和给定目标项的特征的情况下对上下文项的特征的条件似然建模所产生的损失在最初的论文中,作者只考虑了一个单项特征f。他们提到,如果有多个特征可用,每个特征在全局损失函数中都有自己的项因此,如果F=f1,f2,. . .,fk是一组项目特征,则损失函数 给定多个特征(F)的Meta-B2 Vec的(LMP2V)是如下:.算法1:生成组合嵌入的步骤。输入:Dtr:用户事务序列F:项目特征集1在Dtr上应用V2Vec。基于项目序列的嵌入=Prod2 V ec( Dtr)2 forfi in Fdo3计算特征f i的特征序列(D f),将D tr中的每一项替换为特征f i的相应值。4对获得的特征序列应用V2Vec。fi嵌入=Prod2 V ec( Df)5端基于序列的嵌入=kf嵌入i=17组合嵌入=基于项目序列的嵌入基于序列的嵌入LMP 2 V = LC|T +λ(L fi(C)|T + LC|fi(T)+LT |fi(T)+L fi(C)|fi(T)(5)i=1因此,对于k个特征,损失函数具有4个k+ 1项,要考虑4种训练序列,即k+1种4.3.建议嵌入我们提出了一个简化的机制,分别学习item_id和features的嵌入,并将它们连接起来到代表项目。设Dtr是项序列的集合。我们应用项序列(Dtr)的2Vec技术来生成item_id的嵌入。这种嵌入被称为基于项序列的嵌入。学习这种嵌入的损失函数(Ltr)如下所示Ltr=LC|T(6)其中T和C分别指目标项和上下文项。 对于每个特征fi∈F,其中F是特征的集合,我们通过用特征fi的相应值替换项目序列中的item_ids来计算特征序列。分别对这些特征序列中的每一个应用V2Vec以学习特征嵌入。叮。下面给出学习特征fi的嵌入的损失函数(Lfi)Lfi=Lfi(C)|fi(T)(7)其中fi(C)和fi(T)分别指与特征fi对应的上下文项的特征值和目标项的特征值。通过组合所有特征嵌入而获得的嵌入被称为基于特征序列的嵌入。 我们将基于项目序列的嵌入和基于特征序列的嵌入连接起来,以获得最终表示(组合嵌入)。该过程的概述如图2所示,步骤详见算法。在我们的实验中,我们发现,当存在更多的项目特征时,该公式比Meta-B2 Vec并且当可用的特征较少时具有可比性。 当特征的可用值。例如,考虑Amazon Beauty数据集中的项目序列(i1,i2,i3)。我们希望生成一个与特征类别的项目序列相对应的 特 征 序 列 。 假 设 category ( i1 ) = ( Makeup , Face ) ,category ( i2 ) = ( Makeup , Hair ) , category ( i3 ) =(Perfumes)。生成的类别序列如下:(化妆、面部、化妆、头发、香水)。为了获得这些特征的特征嵌入,我们取所有特征值嵌入的平均值,并使用均值嵌入来表示特征。5. 一阶段模型我们为任务定义了一个基线方法(一阶段模型)下一个项目预测,它使用建议的嵌入和评分的词汇表中的所有项目为每个用户和推荐的顶部项目给用户。最近的大多数下一个项目推荐系统的方法都使用了带有注意力机制的递归神经网络(RNN)及其变体(GRU和LSTM)来对用户交易序列进行建模。RNN用于对项目之间的时间排序进行建模,并且注意力被应用于在不同时间步长处对项目进行加权。在预测中更相关的项目比输入序列中的其他项目加权更多。我们采用这个框架来直接预测下一个项目。我们使用长短期记忆(LSTM)网络来建模用户事务序列。一个说明一阶段模型的示意图如图所示。3.设ht是LSTM隐藏单元,yt是第t次的输出步对于每个序列(xi,xi,. . .,x i)∈D tr,其中D tr是集合的用户事务序列,我们执行以下步骤来训练一阶段模型。1. 序列中的每一项都用学习的组合嵌入表示。vi=Combined_embedding(xi)(8)是k个特征,我们学习k+1个不同的嵌入。每个嵌入都是独立学习的,损失函数包含2. 隐藏状态ht由前一个隐藏状态ht−1和当前项嵌入vi。一个单一的术语,如在Eqs。 (6)(7). 相比之下,Meta-B2 Vec提出了一个单一的嵌入来表示项目,考虑项目序列和功能和损失函数考虑,ft=σ(Wf ×vi+Uf×ht−1 +bf)(9)得到4个k+ 1项。5.1.1.具有多个值的要素某些要素可能具有多个项目值。为了生成这些特征的特征序列,我们将item_id替换为allit=σ(Wi×vi+Ui×ht−1+bi)(10)ot=σ(Wo×vi+Uo×ht−1+bo)(11M. Srilakshmi,G.Chowdhury和S.Sarkar智能系统与应用14(2022)2000707)M. Srilakshmi,G.Chowdhury和S.Sarkar智能系统与应用14(2022)2000708.不M图2. 项嵌入生成概述。5.用于优化的损失函数是分类交叉熵损失。损失(L)计算如下。ML=yclog(pc)( 18)c=1其中m是唯一项的数量,Y∈IR m是独热表示的地面真值,P∈IR 是估计的概率-softmax的每个类图3. 下一个项目推荐的一阶段模型。ct=(Wc×vi+Uc×ht−1+bc)(12)ct=ft·ct−1+ot·ct(13)ht=ot·(ct)(14)其中,fT、iT和oT分别是输入和输出门。Ct表示细胞状态,σ和ψ分别表示S形和双曲正切函数Wf,Wi,Wo,Wc是输入权值,Uf,Ui,Uo,Uc是递归权值,bf,bi,bo,bc是偏置权值.3. 隐状态(H= h1,h2,. . . ,h,t)被作为输入提供给注意力层以找到注意力权重,并且学习每个时间步长的权重,即,A =(a1,a2,. . . ,a t)。A=softmax(Wa·(H))(15)4. 隐藏状态(M)的加权和作为输入被给出到全连接输出层(O)。 这一层中的神经元数量等于cat-bytes中唯一项的数量,softmax被用作激活函数。M=A·H(16)M. Srilakshmi,G.Chowdhury和S.Sarkar智能系统与应用14(2022)2000709|不具有注意力模型的训练的LSTM用于下一项预测。目标用户先前交互序列中的每个项如果序列中的任何项在训练集中没有看到,我们用基于特征序列的嵌入来表示它,因为基于项序列的嵌入将为NULL。我们将序列输入模型中最后一层的输出是目录中所有项目的概率。的项目 具有最高概率的被推荐给用户。5.1. 限制这种方法有一定的局限性。第一个是为每个目标用户对目录中的所有项目进行评分的开销。当项目集大小很大时,这会变得非常昂贵,这在现实世界的场景中非常常见第二个限制是无法处理新项目。此方法无法处理新项,因为这些项完全是根据用户过去的事务推荐的6. 两阶段模型我们提出了一个两阶段模型,以克服一阶段模型的局限性。通过首先选择项目的子集作为目标用户的候选集,然后通过对该候选集进行排名来推荐顶部项目,可以避免对目录中的大量项目进行评分。在我们的工作中,我们建议预测下一个项目的功能,并使用它们来选择候选项集。由于特征和每个特征中的唯一值的总数远小于pvi1≤i≤t−1O(M)=O(M)项目总数,预测功能需要较少的量M. Srilakshmi,G.Chowdhury和S.Sarkar智能系统与应用14(2022)20007010K..不2. 我们输入M成K充分连接输出层(O1,O2,. . .,O k)来找出k个特征的概率。稠密层中的神经元数量O k等于特征f k中唯一值的数量。所有输出层的激活函数都是softmaxP K|vi=O[M](19)3. 所用的损失函数是所有对象的分类交叉熵。总损失(L)被计算为各个损失(L1,L2,. . . ,Lk)。给定特征fk和总损失(L)的损失函数(Lk)计算如下。见图4。 两阶段模型框图。时间比预测项目。例如,毛细管数据集中的项目总数为47896,要素总数为为7.在整个特征集中,特征的唯一值的最大数量为110,这明显小于项目的总数。获得的候选项的大小可能要小得多比总项集的大小更大。例如,让我们假设预测的下一项的最高特征是:(类别:衬衫,设计:纯色,织物:棉)。在Capillary数据集中,项目总数为47896,具有上述特征的项目为308。如果我们考虑更多的项特征,项集的大小甚至可以进一步减小重要的是,候选集还可以包括在训练集中未遇到的新项目,因为项目是基于预测的特征选择的。 这样,两阶段模型解决了项目的冷启动问题,这是一阶段模型的主要局限性。 例如,目标用户的预测特征是:(类别:T恤,颜色:黑色)。现在,所有的黑色T恤都是我们的候选物品,即使其中一些之前没有被任何用户看到过。 通过这种方式,我们的方法可以解决项目的冷启动问题6.1. 概述我们提出的两阶段模型的概述如图4所示。在第一阶段,有两个模块,即下一个特征预测和候选项生成。在下一个特征预测中,我们预测下一个可能的项目的特征.候选项生成使用预测特征来选择候选项。在第二阶段中,对候选项进行排名,并将排名靠前的项推荐给用户。这两个阶段的详细信息将在下一节中给出6.2.阶段1:下一个特征预测我们使用长短期记忆(LSTM)模型,并使用注意力机制进行下一项特征预测。LSTM是在用户事务序列上训练的,注意力是在LSTM之上应用的。相同的LSTM用于预测下一项的所有特征。当有k个特征时,该模型与k个目标联合训练。参数是共享的,就像在多任务学习中一样。图5中示出了图示特征预测模型的示意图,并且下面给出了详细步骤。1.给定 用户 交易 序列 (Dtr), 我们 计算MKLk=yo,clog(Po,c)( 20)c=1KL=Lj( 21)j=1其中,mk是特征fk中的总值,yo,c是二进制指示符(0或1),如果特征值c是观测值o的正确分类,则Po,c是观测值属于特征值c的概率。使用注意力模型训练的LSTM用于下一个特征预测。模型中每个最终层的输出是相应特征中所有特征值的概率。具有最高概率的特征值被认为是该特征中的下一个可能的特征值6.3.阶段1:项目子集选择我们从特征预测模型中获得所有特征的概率。可以选择每个特征中具有最佳特征值的项目。然而,特征预测模型的精度对于某些特征的前1个预测值是低的。因此,我们可以考虑每个特征的前l个特征值,其中l>1。在l的值和项目子集的大小之间存在折衷。如果我们增加l的值,那么项目子集的大小就会增加,这是不可取的。我们的主要直觉是减少每个用户的评分项目数量。因此,我们必须选择l的值,使得项目集的大小相对较小,并具有令人满意的性能。在我们的实验中,对于Capillary、Amazon和Behance数据集,分别在l值为2、5和20时获得最佳结果。我们取每个特征的排名前l的值,并选择具有这些特征值的项。这个项目子集的大小比完整的项目词汇表小得多。6.4.第二阶段:物品排名在第一阶段选出的候选项目在第二阶段进行排名。我们发现了可编辑项目集中的每个项目与用户配置文件之间的相似性。基于相似性分数对项目进行排名。在我们的工作中,余弦相似性被用作相似性度量。我们尝试了不同的方法来计算用户配置文件。用户ui的用户简档被称为si。• UP-1:第一种方法是将用户交互的最后一项视为用户配置文件。LSTM隐藏状态(M)的加权和,如一阶段模型中所解释的。si=vi(二十二)不1≤i≤t−1M. Srilakshmi,G.Chowdhury和S.Sarkar智能系统与应用14(2022)20007011不.12不我不我 不我不KKK.7.2. 实验装置图5. 使用LSTM和注意力进行特征预测的多任务学习。• UP-2:第二种方法是取用户交互的所有项目嵌入的平均值(直到当前时间步t)。s i= Avg(vi,vi,. . . (23)• 平均精密度(MAP)@20:它是所有测试序列的平均精密度的平均值。由于只有一个目标项,因此平均精度与倒数秩相同用户简档(si)和项目嵌入(vi)之间的余弦相似度计算如下。similarity(s,vi)= s. (1)(|S||(24)6.5.计算复杂度神经网络的计算复杂度可以根据网络中可训练参数的总数来估计。一阶段系统是LSTM网络,而两阶段系统使用LSTM网络作为特征预测模型。具有预测特征的项目被选为候选项目,并使用简单的余弦相似性得分进行候选排序。因此,我们考虑两个模型中可训练参数的数量来比较计算复杂度。一阶段系统和特征预测模型的输入大小、层数和每层中隐藏单元的数量是相同的。唯一的区别是神经元的数量最后一层。由于一阶段模型对所有项目进行评分,dict下一项,最后一层的神经元数量为m, 其中m是目录中的项目总数。 特征预测模型采用多任务学习框架进行特征预测。因此,最后一层中的神经元数量为m,其中k为特征总数,m为每个特征中的值的总数由于在真实世界场景中m>kmk,因此特征预测模型比单阶段系统成本低得多。因此,整个两级系统没有一级系统复杂。7. 实验结果在本节中,我们首先描述我们的实验中采用的评估指标和实验设置的细节。然后,我们提出了所提出的框架的结果7.1. 评估指标我们使用以下指标来评估我们的模型。• Hit Rate(HR)@k:指的是在某些情况下,tual项是所有测试用例中的top-k推荐项。我们对k∈(1,10,20)验证了我们的结果。在本节中,我们报告了在我们的实验中给出最佳结果的参数。我们已经将基于项序列的嵌入的大小对于Capillary、Amazon和Behance数据集的重新排序,分别为30、50和50。每个特征嵌入的大小为20、50和50,因此这些数据集的组合嵌入的大小分别为170、150和100。 我们已经采取了相同的大小,即,一百七十,150和100用于Meta-B2 Vec嵌入以进行公平比较。我们使用Adam优化器,学习率设置为0.001。批量大小设置为512。在LSTM层和注意力层之间有一个dropout层,dropout为25%。我们使用一个具有100个隐藏单元的LSTM层。对于Capillary、Amazon和Behance数据集,我们将LSTM中输入序列的长度分别固定为10、10和20。这些值是基于平均序列长度来选择的。上述规范用于一阶段模型和特征预测模型。我 们 的 一 阶 段 和 两 阶 段 模 型 在 Python ( v3.6 ) 、 Keras(v2.2.4)(Chollet et al.,2015年)和张量(v1.14.0)(Abadi等人,2015年,在Keras的后端。我们使用Gensim(v3.8.0)(RehurekandSojka,2 010)来实现事务序列和特征序列上的P r od2 Vec嵌入。我们也可以使用Gensim为用户配置文件查找类似的项目7.3. 结果和分析在本节中,我们将展示我们在三个数据集上的结果。我们首先将一阶段模型的结果与其他基线方法进行比较。然后,我们提出的特征预测模型的结果最后,我们给出了两阶段模型的结果。7.3.1.一阶段模型与基线模型的性能比较我们将我们的一阶段模型的结果与最近的下一项预测方法进行比较,即,GRU 4 Rec ++(Hidasi和Karat-zoglou,2018),NARM(Li等人,2017)和SR-GNN(Wu等人,2019年)。这些方法纯粹基于用户过去的交互来推荐项目。这些方法的详细信息见第2.2节。我们给出了基于项目序列的嵌入(IS嵌入)、基于特征序列的嵌入(FS嵌入)和组合嵌
下载后可阅读完整内容,剩余1页未读,立即下载
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
会员权益专享
最新资源
- 电力电子系统建模与控制入门
- SQL数据库基础入门:发展历程与关键概念
- DC/DC变换器动态建模与控制方法解析
- 市***专有云IaaS服务:云主机与数据库解决方案
- 紫鸟数据魔方:跨境电商选品神器,助力爆款打造
- 电力电子技术:DC-DC变换器动态模型与控制
- 视觉与实用并重:跨境电商产品开发的六重价值策略
- VB.NET三层架构下的数据库应用程序开发
- 跨境电商产品开发:关键词策略与用户痛点挖掘
- VC-MFC数据库编程技巧与实现
- 亚马逊新品开发策略:选品与市场研究
- 数据库基础知识:从数据到Visual FoxPro应用
- 计算机专业实习经验与项目总结
- Sparkle家族轻量级加密与哈希:提升IoT设备数据安全性
- SQL数据库期末考试精选题与答案解析
- H3C规模数据融合:技术探讨与应用案例解析
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)