贝叶斯方法与深度学习的结合及应用(1)

贝叶斯方法与深度学习的结合及应用(1)

  • 发布时间:2021-01-02 11:31
  • 访问量:

【概要描述】贝叶斯方法是解决数据稀疏、数据样本带有噪音等问题的有效方法,近年来,也有越来越多的研究开始将贝叶斯方法应用到深度学习中。本文通过介绍最新的推荐系统应用研究来展示贝叶斯方法的使用有助于挖掘用户潜在交互。

贝叶斯方法与深度学习的结合及应用(1)

【概要描述】贝叶斯方法是解决数据稀疏、数据样本带有噪音等问题的有效方法,近年来,也有越来越多的研究开始将贝叶斯方法应用到深度学习中。本文通过介绍最新的推荐系统应用研究来展示贝叶斯方法的使用有助于挖掘用户潜在交互。

  • 分类:研究院
  • 作者:壁仞科技研究院
  • 来源:
  • 发布时间:2021-01-02 11:31
  • 访问量:
详情

摘要

贝叶斯方法是解决数据稀疏、数据样本带有噪音等问题的有效方法,与图论的结合又衍生出成具有可解释性的贝叶斯网络,在医疗、生物、系统可靠性和金融风险等领域都有着广泛的应用。近年来,也有越来越多的研究开始将贝叶斯方法应用到深度学习中,如文献[1]指出可以贝叶斯方法为基础的概率图与深度学习构建具有视觉和任务两个功能模块的系统,有关这方面更多的信息可以参考往期文章概率图模型在深度学习的应用。

本文主要介绍了基于贝叶斯方法的图卷积神经网络在推荐系统中的最新应用研究。借助KDD2020的一篇最新研究工作“A framework for recommending accurate and diverse items using Bayesian graph convolutional neural Networks“[2],我们对基于传统贝叶斯方法的图卷积神经网络的推荐系统应用进行了深入学习,该推荐系统在多样性、冷启动等方面的出色表现表明贝叶斯方法有助于挖掘用户潜在物品交互。

 

贝叶斯与图网络结合的推荐系统

 

论文[2]提出了贝叶斯与图神经网络结合的推荐方法(Bayesian Graph Collaborative Filtering,BGCF),将现在流行的图卷积神经网络与历史悠久的贝叶斯方法进行完美的结合。同时,采用了基于node-copy[4]机制的随机图生成模型,这种机制可以有效地根据给定图结构生成相似的其他图结构,但生成的图结构可能包含原图中未曾出现的边,因此生成图中的边更具有多样性。将原图与生成图同时用于模型训练,可以有效地提升模型学习性能。更重要的是,BGCF模型具备训练高效率和扩展性两个特点,因此适用于大规模图网络。在方法上,除了在训练中的损失函数中引入了模型参数的先验分布,而且在推荐模型训练过程中也加入了图结构的不确定性。论文相关代码见文献[3]。

 

目标函数

给定一个包含用户-物品的数据集,推荐系统的主要任务是按照用户的偏好对现有物品进行排序,当然,不同用户的排序情况可能会有所不同。为了对给定用户进行物品排序,文献[2]在构建模型时考虑了模型参数Θ的先验概率分布,主要是基于贝叶斯个性化排序(Bayesian Personalized Ranking,BPR)思想[5]。因此,模型训练的目标转换为给定训练数据集,最大化模型参数Θ,如下式所示。其中,{>u}Ds是从给定训练数据中得到的所有用户的物品全序关系(total order)。显而易见,其中的用户-物品交互信息都是基于ground-truth。在模型参数Θ先验分布选择上,论文[2]采用了常规的高斯分布。

 

利用两个不同用户之间物品排序相互独立的假设,以及结合上式,BPR的训练目标函数可以重新写如下形式,具体推导过程可以参考文献[5]。

 

其中,BPT-OPT是模型参数Θ的函数,因此可以通过传统的SGD方法求导进行模型参数更新。同时,xuij表示用户在物品i和j之间更倾向于i的事件。

 

图结构的不确定性

现有基于图结构的推荐模型都将观测到的用户-物品交互图Gobs当做ground-truth,很明显,这种设置并不总是合理。一方面,这种设置会将交互图中没有连接的交互当做负类,而这种未被观测到的交互可能是未来的潜在交互。另一方面,有一些观测到的交互也可能是不真实的或者是带有噪音。

为了解决上述问题,论文[2]将不确定性引入到了图神经网络训练过程中。根据从训练数据集中得到用户-物品的交互图Gobs,以一定概率生成新的图结构Gl。概率的取值与用户在训练数据集中的物品交互相似性有关。然后,用户的最终物品交互由现有历史数据中的交互(表示在图Gobs中)和由相似用户推荐的潜在交互共同决定(表示在图Gl中),具体计算方式如下式所示。

 

 

其中NG是采样图的个数,Gl是采样的图。值得注意的是,Gl可能存在未曾在Gobs中出现的边。通过整合多个采样图,最后可能会向用户推荐该用户未曾在训练数据中交互的物品,形象化表示为图1。根据训练数据显示,用户A只有跟苹果和香蕉的交互信息,而用户B与用户A存在一定的交互相似性,因此可以将用户B交互的西瓜、梨两个新物品推荐给用户A。类似地,也可能从其他用户推荐新物品猕猴桃。最后,系统综合考虑用户A以及其所有相似的其他用户,最后可能会给用户A推荐西瓜、梨、猕猴桃三种物品。显而易见,如果仅仅依靠于A的历史交互信息,诸如西瓜和猕猴桃的新物品肯定不可能推荐给用户A,从而可能忽略了用户A也有可能对这两种物品的偏好,因为这两种物品都未曾在A的历史数据中出现。

 

图1:基于不确定性的图推荐系统示例

 

基于node-copy的图采样

通过采样图可以提高模型性能,接下来需要解决的是如何根据Gobs进行新图的采样。论文[2]采用了一种有效的基于node-copy[4]的采样方法。简单地来说,根据训练数据中两两用户之间物品交互的相似性,以一定概率将一个用户的交互物品推荐给另一个用户。首先,将现有图Gobs进行拷贝作为采样图G的原始图,然后计算是否需要对每个用户推荐其他用户的物品。给定数据集和原始图Gobs,对所有用户推荐的物品表示为随机向量ξ,根据两两用户之间交互行为的独立性,随机向量ξ的概率分布可以写成如下形式:

 

其中,N表示用户的总数。上式定义了采样图G中所有用户分别从哪些用户拷贝的分布。例如ξ=[2,3,4,1]表示采样图G分别将其对应的邻接矩阵按照(2,3,4,1)的行顺序进行重新排序。根据上式的分布得到ξ的样本后,再将其他用户物品以一定概率进行推荐,具体如下式所示。

 

 

其中,1是表示原始图Gobs中的第ξi行拷贝到样本图G的第i行的指示函数。在实际应用中,考虑到可观察图Gobs往往存在高稀疏问题,作者预设ε为较大值,从而确保采样图中能包含更多的边。

 

模型训练

现在可以根据观察到的图Gobs与采样得到的一系列图G,进一步更新每个节点嵌入(embedding)表示,主要分为三步。

(1)更新样本图G节点的嵌入表示。在学习获得用户潜在偏好物品的过程中,采样得到的图G中可能会存在虚假的边。因此,论文[2]采用了一层基于前向传播神经网络的注意力机制。在该机制中,将每个邻接节点k与中心节点j的嵌入表示做点积操作,并将计算结果作为注意力系数ajk。然后利用该系数对图G中的中心节点j的嵌入表示进行更新,如下式所示。

 

 

其中,N(j)表示中心节点j的邻接节点的个数,e是节点的原始嵌入表示,W为模型共享权重矩阵,||是矩阵串接操作。

(2)更新原始图Gobs中的节点嵌入表示。类似的,Gobs也需要进行相应的更新。但与采样图G不同的是,Gobs图中的边都是基于ground-truth。因此,论文[2]采用简单实用的平均聚合操作,即对中心节点j的所有邻接节点进行平均加权操作,如下式所示。

 

 

(3)整合图Gobs和样本图G的节点嵌入表示。通过上面的计算得到了中心节点j的观察到的偏好和潜在偏好,通过对两者的串接操作可以得到最后该节点的嵌入表示,如下式所示。

 

其中,σ是tanh非线性转换函数。

以上基于node-copy以及训练的三个步骤可以形象化表示为图2。可以看出,K个新图的采样可以并行进行,因此可以充分借助现有GPU高性能计算来实现模型训练的提速。

 

图2:可观察图Gobs的采样和其与采样图整体训练过程示意图

 

实验结果

 

作者从多个方面对BGCF模型进行了测试。针对不同级别的物品多样性(在图3中表示为x轴的Novelty),作者在Amazon-Movies和Amazon-CDs数据上的测试结果显示BGCF都获得比NGCF更高的准确率。同时,作者将用户按照历史点击次数分为三个群体:少于40次,在40-100次之间,多余100次,并将BGCF模型与BPR、NGCF、PinSage-lstm三种方法的性能进行比较,结果如图4所示。实现发现,相比于其他三种方法,BGCF在所有用户群体上都获得了性能上的提升。此外,在稀疏用户群体(点击次数少于40次)的性能提升最为明显。

 

图3:多样性测试结果

图4:不同群体的性能表现

 

以上两个实验是基于公开Amazon数据集,训练数据与测试数据往往将每个用户的数据按比例进行分配,即训练集和测试都拥有某个用户的信息。然而在实时推荐系统中,也需要对训练数据中没有出现过的用户进行推荐,这也被称之为冷启动。因此,作者从App商店收集了40天内的下载数据,前33天的数据用于训练,剩余用于测试,从而确保测试中有新用户。同时,通过对下载app和未观察到的app建立二元分类器,并且计算和比较不同模型的LogLoss值,其结果如图5所示。可以看出,BGCF比选择的六种算法的分类效果都要好,而且也缓解了冷启动问题。


图5:BGCF与其他六种算法的LogLoss

 

总结

 

本文主要介绍了传统贝叶斯方法结合图卷积神经网络在推荐系统中的最新应用。事实上,具有250多年历史的贝叶斯方法与最新的深度学习方法的联系越来越紧密,并在诸如本文的推荐系统等应用领域取得了非常不错的效果。论文[2]考虑了模型参数的先验概率分布,学习得到单一、确定的一组参数。随着深度学习的广泛应用研究,也有越来越多的研究关注贝叶斯深度学习。后续我们将对贝叶斯方法的应用进行更深入、更全面的剖析,并探讨其目前的局限(如算力需求)及可能的发展方向。由于水平有限,文中存在不足的地方,请各位读者批评指正,也欢迎大家参与我们的讨论。

 

参考文献

 

[1]Wang, Hao, and Dit-Yan Yeung. "A survey on Bayesian deep learning." ACM Computing Surveys (CSUR) 53.5 (2020): 1-37.

[2]Sun, Jianing, et al. "A framework for recommending accurate and diverse items using Bayesian graph convolutional neural networks."Proceedings of the 26th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. 2020.

[3]https://gitee.com/mindspore/mindspore/tree/master/model_zoo/official/gnn/bgcf

[4]Pal, Soumyasundar, Florence Regol, and Mark Coates. "Bayesian graph convolutional neural networks using node copying." arXiv preprint arXiv:1911.04965 (2019).

[5]Rendle, Steffen, et al. "BPR: Bayesian personalized ranking from implicit feedback." arXiv preprint arXiv:1205.2618 (2012).

 

 

近期文章

流体力学与物理导引神经网络

流体力学与物理导引神经网络

现代科学中众多复杂的关键应用依赖着对流体运动的精确预测。然而,由于流体力学方程数值求解的复杂性,基于传统数值方法的高分辨率长周期数值模拟运算量大且难以保证数值稳定性。本文将深入介绍PINN方法在流体计算中的应用并分析其与传统数值方法的差别。
2021-10-25
物理导引神经网络方法分析

物理导引神经网络方法分析

随着GPU能力的提升,支撑深度学习的软硬件生态得到了快速发展。通过深度学习来解决科学计算问题成了一种趋势,其中用深度学习来求解偏微分方程的方法也逐渐兴起。尤其引人注意的是一种称为物理导引神经网络的方法,其为科学计算领域注入了新的活力。
2021-10-18

联系我们

这是描述信息

招贤纳士

公众号二维码
这是描述信息

 版权所有   ©   上海壁仞科技有限公司   |    沪ICP备19047354号