基于对比学习的图书推荐系统冷启动研究

2023-02-28 16:10:10董昊烨樊重俊
智能计算机与应用 2023年11期
关键词:冷启动协作框架

董昊烨,樊重俊

(上海理工大学管理学院,上海 200093)

0 引 言

近几年,随着大数据、物联网、人工智能、5G 的蓬勃发展,互联网产生的数据也与日俱增,在面对海量数据的情况下,人类无法迅速精准地找到有价值的信息。 为了解决数据过载的问题,推荐系统应运而生,可以从海量的互联网数据中挖掘出用户可能感兴趣的商品,做出个性化推荐,有效降低了人们在互联网上寻找自己感兴趣信息时所消耗的时间。 随着相关研究的逐渐成熟,推荐系统通过强大的信息过滤技术为很多领域的发展都提供了强有力的帮助,比如,电商领域天猫、亚马逊等平台的应用,娱乐领域快手短视频、qq 音乐等App 的普及,都通过推荐系统大大提升了软件的使用频率和用户数量。

作为大家日常生活中放松、学习、自我提升的重要工具,图书依然是人们不可或缺的精神食粮。 在《2021年中国图书市场研究报告》中显示,图书行业正在逐步加入新的商业模式中,网上书店就是新模式下的产物,且已形成了规模,并逐步占有大部分市场份额,因此线上图书推荐系统的应用必要性也日益凸显。 线上图书推荐系统可以根据每个用户与电子图书的交互数据,分析挖掘用户行为,实现智能化的图书精准推荐。

但与此同时,对于图书推荐系统而言,冷启动的问题也不容忽视。 平台中并非所有图书都有充足的可用历史数据,随着新书籍的不断上架,系统内部没有充足的数据支撑,经典的协同过滤等方案无法利用协同相似度来推断用户对这些图书的偏好,很大程度上降低了推荐准确性。 从而导致用户信赖度降低,失去用户粘性,最终用户数量减少,对企业造成了极大影响,因此,解决推荐系统冷启动问题迫在眉睫。

针对上述问题,论文提出了一种基于对比学习的冷启动推荐框架,可以显著提高图书冷启动情况下的推荐准确性,对此问题的研究具有迫切的意义。

1 相关工作

1.1 对比学习

对比学习作为自监督学习的代表性算法,目前已经广泛应用于计算机视觉[1-7]和自然语言处理[5-6]领域。 就是通过从一些负样本对中识别出正对,最大化了不同表示之间的互信息,从而发现不同视图之间共享的语义信息。 为此,Oord 等学者[8]提出了一种概率对比损失以最大限度地保留观测和上下文信号之间的互信息。 对于推荐系统,一些模型[9]采用对比学习来优化用户和项目的表示。 然而,这些方法更侧重于协作或内容空间的表示。

相比之下,将协作嵌入和特征表示视为2 个不同的方面,并最大化彼此间的互信息,以便于从内容信息中捕捉协作信号。

1.2 推荐系统冷启动

解决推荐系统冷启动问题的常见方法是利用辅助信息和上下文信息[10],以及来自其他领域的信息[11]来推荐物品,但是随着《通用数据保护条例》的颁布,数据在政策的限制下分散在不同的平台中,可获取的信息越来越少。 传统的基于内容推荐的方法使用用户特征和项目特征来扩充数据,虽然提高了推荐的准确率,但会造成很明显的“长尾效应”。 文献[12]提出了一种局部集体嵌入学习方法,通过项目的属性和过去的用户偏好进行矩阵分解,在新闻推荐领域得到了很好的效果,但在其他领域推荐精度亟待提高。 Gao 等[13]提出了一种融合CNN 和GAN 模型的基于Deep Q-Network 的推荐框架,在DRCGR 中还提供了一种将卷积序列嵌入的推荐模型,以捕获用户正反馈的序列偏好。 Feng 等学者[14]使用奇异值分解模型对未评级项目进行预处理,以增加显式反馈数据的密度,再将提取的特征进行融合,得到最终的用户特征矩阵和产品特征矩阵。 本文将通过最大化互信息来明确显示的建模内容与协同过滤信息之间的相关性。

2 对比学习冷启动框架

研究提出了一个基于对比学习的冷启动推荐框架。 如图1 所示。 该框架主要由3 部分组成:对比对组织、对比嵌入网络、对比优化。 在下文中,将详细介绍每一部分的设计内容。

图1 对比学习推荐系统框架示意图Fig. 1 The framework diagram of comparative learning recommendation system

2.1 对比对组织

对比学习的核心思想是构造正负样本,将语义相似的实例所组成的正样本从语义不相似的实例所组成的负样本中识别出来,并将正样本和负样本在特征空间中进行对比,学习样本的特征表示。 因此,在图书推荐系统中,将用户和图书组成U - B和M - N对比对进行学习研究。

2.1.1U - B对比对

研究中从历史数据中进行寻找,将观察到的用户(user) —书籍(book) 对视为正样本,如图2 所示。 同时,随机抽取K项尚未被用户U购买的书籍,如(c1,c2,c3,…,ck),并与用户配对以建立负样本对。 形式上,可以将正U - B和负U - B对定义为:

图2 U-B 部分框架Fig. 2 U-B part frame

与负样本对相比,正样本对包含相似的协同信号,因此,这样更有助于发现由交互动作所传递的协作信号。

2.1.2M - N对比对

与U - B对比对不同,M - N对比对采用了自判别任务来最大化项目的2 种不同表示的相互信息。 如图2 所示,为了构建配对b将其设为锚点,并将其与自身连接作为正对,这揭示了同一项目b的2 个表示之间的语义相似性。

相反,锚点与其他项目组织的否定对在语义上是不相似的。 由图1 看到,将项目配对在一起从而获得M - N对比对:

其中,(b,b) 是正对,其他为负对。

2.2 对比嵌入网络

基于对比学习样本,设计了U - B、M - N对比嵌入网络来表示用户和书籍,并定义了关系密度函数来计算每个样本对的相关性。

2.2.1U - B对比嵌入网络

为了对用户-图书交互矩阵进行建模,从由参数矩阵定义的查找表中获取对应的id 嵌入(如eu,eb):

然后,通过一个共享的CF 编码器来学习用户-图书的协作嵌入(见图2),可以通过各种模型来实现,例如基于MF[15-17]模型、基于图神经网络[18-20]模型等。 在此项工作中,运用了简单且有效的实现方法,基于LightGCN[18]和MF[16],将其表述为:

其中,ε是将id嵌入(eb,eu) 作为输入的CF编码器;Nu表示用户u已经购买的图书集合;Nb表示与图书b进行过交互的用户集合。 在获得了用户-图书对(即zu和zb)的协作嵌入后,定义了关系密度函数p(zu,zb) 来衡量其相关性:

其中,τ为温度系数[1],用内积来计算相关性,将其他非负函数的探索留在未来的工作中。

2.2.2M - N对比嵌入网络

此嵌入网络用于对图书协作信号和内容信息两个方面之间的相关性进行评分。M - N部分框架如图3 所示,即由2 块区域构成:分别对图书的特征表示和协同嵌入进行建模。 其中,协同嵌入的方式与2.2.1 节U - B对比嵌入网络中的方法相同。

图3 M-N 部分框架Fig. 3 M-N part frame

为了表示图书的内容信息,应用了一个预先训练好的深度学习模型进行特征提取[21],获得M - N对比对中图书c的特征向量xc,再运用多层感知器进行特征编码获得hc:

其中,W(.)表示编码器的可训练矩阵;b(.)表示编码器的偏置向量;hc是图书的期望特征表示,提取了内容特征且最大限度地保留了与协作信号相关的信息。 在这种特征表示下,可以计算用户和冷启动项目之间的相关性。

在通过上述方法获得hc与zb后,使用以下关系密度函数对其相关性进行评分:

20世纪以来,现代科学研究逐渐呈现出学科高度综合化的特征,跨学科研究已经演变成为科学研究实践的重要形式之一[6]。创业研究也不例外,由此我们可以判别每篇跨学科研究文献涉及的学科领域,图中节点大小反映的是该节点所代表的学科发文量的多少,节点之间的连线反映了节点共现关系,也即是说明具有共现关系的这些节点所代表的学科在同一篇文献中出现,这篇文献进行了相应的跨学科研究。统计发现,160种学科共产生了5147种学科共现关系。

为了保持内容信息的完整,可将向量进行归一化处理,测量单位空间中的比值。

2.3 最终目标函数

为了使交互信息最大化,运用对比学习的方法来优化模型的参数,结合定义的关系密度函数,得到最终的目标函数:

3 实验与结果

在本节中,首先介绍了用于本次实验的数据集,并描述了实验设计。 然后,为了评估本文提出对比学习冷启动推荐框架的准确性,将提出的方法与热启动、冷启动和所有项目的真实数据中的样本进行了比较,得到了最终的实验结果。

3.1 实验设置

3.1.1 数据集

为了评估本文提出“图书冷启动推荐系统”的有效性,分别在2 个真实的数据集中进行了广泛的实验,包括由弗莱堡大学Cai-Nicolas Ziegler 发布的Book-Crossing Dataset 和由Amazon product 中提供的一些用户—图书的购买数据,信息见表1。

表1 数据集摘要Tab. 1 Data set summary

对于每个数据集,随机抽取了一些图书作为冷启动项目,并按照1 ∶1 的比例分为冷启动条件下的验证集和测试集。 此外,将其他的图书交互数据按照8 ∶1 ∶1 的比例分为训练集、热启动验证集、热启动测试集。 结合所有的验证集对目标函数的超参数进行优化,并通过测试集对最终模型的性能进行评估。

3.1.2 对比参照

(1)DropoutNet[22]。 该方法改变了模型训练方式,在训练过程中加入了dropout 的机制,使得模型不过度依赖ID embedding,而是其他内容特征。 从而减小了不好的ID embedding 的影响。

(2)Heater[23]。 该方法使用误差平方和损失(SSE) 来对内容信息中的协作嵌入进行建模,同时利用随机训练的方法来提升有效性。

(3)DUIF[24]。 与基于CF 的模型不同,这种方法在不对CF 信号建模的情况下学习用户对项目特征的应用,从根本上避免了冷启动问题。

(4)MF-BPR[17]。 该方法根据过去的交互学习潜在向量(即协作嵌入)来表示用户和项目,并通过测量所学习的表示之间的相似性来预测其相似性。

(5)LightGCN[18]。 基于图卷积网络[25-26],学习高阶CF 信号,并将其注入到协作嵌入中,优化推荐。

3.1.3 度量标准

分别对2 个数据集中的热启动项、冷启动项和所有项目(热启动项与冷启动项相结合)进行评估,采用广泛应用于推荐系统领域的评价指标:召回率(recall@K) 以及归一化折损累计增益(NDCG@K)。 默认情况下,设置K =10。

3.1.4 参数设置

为了公平起见,将所有模型的协同嵌入维数设置为64。 在超参数方面,使用网格搜索的方法[27-28]:学习率在{0.000 1,0.001,0.01,0.1} 中调整,正则化权重在{0.000 1,0.001,0.1} 中搜索。此外,采用提前停止策略[27],如果在验证集上连续10 次迭代recall@10 没有增加,则停止训练。

3.2 结论

3.2.1 关于目标函数的性能比较

在本文中,提出了一个基于对学习方法的目标函数,并运用了一个具有灵活编码器的通用框架。为了证明目标函数的合理性,将配备了基于MF和基于GCN的CF编码器(CENMF和CENGCN)与MF - BPR和LightGCN进行比较,通过BPR损失函数进行优化。 分析实验结果见表2、表3,得到结论为:

CENMF和CENGCN无论在冷启动、还是热启动情况下均显著优于MF - BPR和LightGCN,因此本文所提出的目标函数能够有效地对协作嵌入进行建模,并提取与协作信号相关的特征。

3.2.2 关于冷启动的建议

分析实验结果,得到以下结论:

分析表3,在recall@10 和NDCG@10 的结果中,对于训练集中未出现过的图书(即冷启动项目),DUIF的性能大大优于其他方法。 因为基于内容的模型中,用户是通过细化其交互的图书特征来表示的,这些特征通过与未观察到的图书相关联,因此是合理的。 然而在基于内容过滤的模型中,用户的协作嵌入和图书的特征表示之间存在差距。

通过分析表2 的结果,可以发现针对冷启动设计的方法(DropoutNET、Heater)在冷启动的场景中优于MF - BPR和LightGCN,这些方法均从图书特征中捕捉到了协作信号,有助于预测用户与冷启动图书之间的交互。

本文提出的图书冷启动推荐框架在所有情况下(冷启动、 热启动、 冷启动与热启动相结合)recall@10 和NDCG@10 均是优于上述最强性能的。 其中,recall@10 在2 个数据集上比最强基线分别提高了109.72%、58.21%,NDCG@10 分别比基线提高了51.25%、115.29%。 可以归因于以下2个方面:

(1)具有U - B对比学习方法的图书冷启动推荐框架有助于协同嵌入的建模。

(2)M - N互信息保留了更多与协作信号相关信息的特征表示。

3.3 深入分析

为了进一步探索本文提出的方法如何优化推荐,还进行了额外的实验来研究训练过程的梯度幅度。 不同数量的对比负对中测试所提出的方法,并计算等式中的梯度幅度。 记录了每个时期的梯度幅度状态,并在图4 中展示了在Book-Crossing 数据集Recall@10 的相关学习曲线。

图4 在Book-Crossing 数据集Recall@10 的相关学习曲线Fig. 4 Related learning curve in the Book-Crossing dataset Recall@10

通过分析平均梯度和性能,研究发现本文提出的方法比MF-BPR 获得了更大的梯度幅度,性能也随着负对的增加而提高。

4 结束语

本文专注于图书冷启动推荐问题,在对比学习的基础上制定了一个新的目标函数来最大化U - B和M - N两种互信息,从而进一步设计了一个由对比对、对比嵌入网络、对比优化三部分组成的冷启动推荐框架。 本文在2 个数据集上进行了广泛的实验,实验结果验证了方法的有效性,无论在冷启动、还是暖启动方面推荐准确度均有较大的提升。 该方法不仅提供了一种解决冷启动的方法,也在运用对比学习解决冷启动的方向上带来了一定的启发。 此外,未来会进一步研究互信息最大化在其它领域的有效应用。

猜你喜欢
冷启动协作框架
轻型汽油车实际行驶排放试验中冷启动排放的评估
框架
基于学习兴趣的冷启动推荐模型
客联(2021年2期)2021-09-10 07:22:44
广义框架的不相交性
团结协作成功易
协作
读者(2017年14期)2017-06-27 12:27:06
WTO框架下
法大研究生(2017年1期)2017-04-10 08:55:06
协作
读写算(下)(2016年9期)2016-02-27 08:46:31
一种基于OpenStack的云应用开发框架
可与您并肩协作的UR3