基于
神经网络
特征
交叉
协同
过滤
算法
王燕
文章编号:1 6 7 3-5 1 9 6(2 0 2 3)0 1-0 0 9 4-0 9基于图神经网络特征交叉的协同过滤算法王 燕*,赵妮妮,范 林(兰州理工大学 计算机与通信学院,甘肃 兰州 7 3 0 0 5 0)摘要:学习用户和项目有效的向量表示是推荐系统的核心目标,现有的推荐模型大多通过深度神经网络或专门设计的特征交叉,来学习用户-项目间的特征交叉生成用户(项目)向量表示,但并未将用户(项目)特征间的交叉信息编码到嵌入向量中充分利用特征交叉信息,且多个特征交叉信息对于生成最终的用户(项目)向量表示的影响不同.基于此,构建两个图神经网络模块,学习用户(项目)特征间的交叉信息、用户-项目之间的特征交叉信息,并通过计算注意力分数对特征交叉信息进行加权,得到用户(项目)的特征信息;然后通过门控循环神经网络(G R U)聚合原始的特征信息和网络层学习到的特征交叉信息,得到最终的用户(项目)向量表达;最后通过用户向量与项目向量的元素积得到最终的推荐结果.在数据集M o v i e L e n s1 M、B o o k-C r o s s i n g和T a o b a o上验证了模型的有效性.关键词:协同过滤;图神经网络;G R U;双线性特征交叉;注意力机制中图分类号:T P 3 9 1.3 文献标志码:AC o l l a b o r a t i v e f i l t e r i n ga l g o r i t h mb a s e do ng r a p hn e u r a l n e t w o r kc r o s s-f e a t u r eWAN GY a n,Z HAON i-n i,F ANL i n(S c h o o l o fC o m p u t e ra n dC o mm u n i c a t i o n,L a n z h o uU n i v.o fT e c h.,L a n z h o u 7 3 0 0 5 0,C h i n a)A b s t r a c t:L e a r n i n ge f f e c t i v ev e c t o r r e p r e s e n t a t i o n so fu s e r s a n d i t e m s a r e t h e c o r eg o a l o f t h e r e c o mm e n-d a t i o ns y s t e m.M o s t o f t h e e x i s t i n g r e c o mm e n d a t i o nm o d e l su s ed e e pn e u r a l n e t w o r k so r s p e c i a l l yd e s i g n e df e a t u r ec r o s s i n g t o l e a r n t h e f e a t u r e c r o s s i n gb e t w e e nu s e r s a n dp r o j e c t s t og e n e r a t eu s e r(i t e m)v e c t o r r e p-r e s e n t a t i o n s,b u t t h ec r o s s i n f o r m a t i o nb e t w e e nu s e r(i t e m)f e a t u r e s i sn o t c o d e d i n t o t h ee m b e d d i n gv e c-t o r t om a k e f u l lu s eo f t h e f e a t u r ec r o s s i n f o r m a t i o n,a n dm u l t i p l ef e a t u r ec r o s s i n f o r m a t i o nh a sd i f f e r e n te f f e c t so nt h eg e n e r a t i o no f t h ef i n a lu s e r(i t e m)v e c t o rr e p r e s e n t a t i o n.B a s e do nt h i s,t w og r a p hn e u r a ln e t w o r km o d u l e sa r ec o n s t r u c t e dt ol e a r nt h ei n t e r s e c t i o ni n f o r m a t i o nb e t w e e nu s e r(i t e m)f e a t u r e sa n dt h e f e a t u r e i n t e r s e c t i o n i n f o r m a t i o nb e t w e e nu s e r a n d i t e m,f o l l o w i n g t h e f e a t u r e c r o s s i n f o r m a t i o nw e i g h-t e db yc a l c u l a t i n gt h ea t t e n t i o ns c o r e t oo b t a i nt h eu s e r(i t e m)f e a t u r e i n f o r m a t i o n.T h e nt h eo r i g i n a l f e a-t u r e i n f o r m a t i o na n dt h e f e a t u r ec r o s s i n f o r m a t i o nl e a r n e df r o mt h en e t w o r kl a y e ra r ea g g r e g a t e dt h r o u g ht h eg a t e dr e c u r r e n tn e u r a ln e t w o r k(G RU)t oo b t a i nt h e f i n a lu s e r(i t e m)v e c t o re x p r e s s i o n.F i n a l l y,t h ef i n a l r e c o mm e n d a t i o nr e s u l t i so b t a i n e dt h r o u g ht h ee l e m e n tp r o d u c to fu s e rv e c t o ra n di t e mv e c t o r.T h ev a l i d i t yo f t h em o d e l i sv e r i f i e do nt h ed a t a s e t sM o v i e L e n s1 M,B o o k-C r o s s i n g,a n dT a o b a o.K e yw o r d s:c o l l a b o r a t i v e f i l t e r i n g;g r a p hn e u r a l n e t w o r k s;G RU;b i l i n e a r c h a r a c t e r i s t i c c r o s s o v e r;a t t e n t i o n 协同过滤算法是推荐系统中最经典的算法之一,但它面临的挑战是如何学习到更有效的用户和项目向量表示来增强预测性能.神经网络的非线性特性可以更好地捕捉用户和物品之间的特征交互,收稿日期:2 0 2 1-0 8-1 4 基金项目:国家自然科学基金(6 1 8 6 3 0 2 5),甘肃省重点研发计划-工业类(1 8 Y F 1 GA 0 6 0)通讯作者:王 燕(1 9 7 1-),女,甘肃泾川人,教授.E m a i l:w a n g y a n l u t.e d u.c n为解决这一问题提供了方法.H e等1提出了一种神经网络协同过滤模型,融合了矩阵分解方法和多层感知机(m u l t i l a y e rp e r c e p t r o n,ML P),利 用ML P学习用户与物品的交互信息,在保留矩阵分解优势的同时利用ML P对用户与物品的隐特征进行建模,提高推荐性能.针对传统协同过滤算法没有把用户项目交互信息编码进嵌入向量的问题,B e r g等2将矩阵分解模型中的矩阵补全问题定义为用户-项目二部图的连接预测,利用一种变分自编码器完成第4 9卷第1期2 0 2 3年2月兰 州 理 工 大 学 学 报J o u r n a l o fL a n z h o uU n i v e r s i t yo fT e c h n o l o g yV o l.4 9 N o.1F e b.2 0 2 3连接的预测,考虑边信息和网络结构.虽然这些方法展现出了良好的性能,但这些方法还不足以产生令人满意的效果,究其原因是无法捕捉用户-项目交互中的潜在协同信号.由 于 图 神 经 网 络(g r a p h n e u r a ln e t w o r k s,GNN)3-4在图结构数据学习方面的出色表现,研究人员将GNN应用到推荐系统的建模任务中,将用户交互历史序列中的项目构建为图结构,然后利用GNN网络学习到用户与项目之间更深层次的交互信息.L i等5和S u等6利用GNN的关系建模能力捕获复杂的属性交互信息并通过图学习聚合信息,但不同的属性交互应该对最终的结果产生不同的影响,也就是每条交互信息对最终预测结果的重要性不同.通过对现有模型的分析发现,仍存在以下问题亟待解决:(1)没有明确区分用户(项目)特征之间的交叉信息与用户-项目之间特征的交叉信息,以及将这些信息编码进用户(项目)的向量表示;(2)用户(项目)的特征较多,应对各个特征进行重要程度的区分;(3)并不是所有的特征交叉组合对于用户(项目)向量表达的生成都是有效的,需要对其根据重要程度进行区分.针对上述问题,本文提出了基于图神经网络特征交叉的协同过滤模型C F GNN.主要工作如下:(1)提出了一种基于图神经网络特征交叉的协同过滤模型C F GNN,学习用户(项目)的向量表示,模型对用户以及项目向量表示的构建是对称的;(2)考虑到特征重要程度的不同,利用S E N e t机制对不同特征进行加权,对不同重要程度的特征加以区分;(3)由于部分项目特征与用户特征的交叉信息对结果来说并不是有效的,加入一种特征交叉感知注意力机制,衡量特征交叉信息的有效性,使模型能够重点关注对结果影响较大的特征信息;(4)对学习到的用户(项目)特征交叉信息、用户-项目之间的特征交叉信息以及原始信息使用G RU聚合,最终通过用户向量与项目向量的元素积得到最终的推荐结果.1 相关工作1.1 深度学习的推荐模型因子 分 解 机(f a c t o r i z a t i o n m a c h i n e,FM)模型7是最常用的协同过滤算法之一,它解决了稀疏数据的特征组合问题,并提出了新的特征交叉方法,但是受二阶以上特征交叉复杂度的限制,无法提取高阶的组合特征.D e e p FM模型8是利用深度神经网络对FM模型的扩展,其利用FM部分加强浅层网络的特征组合,可以对输入的特征进行两两自动组合.x D e e p FM模型9与D e e p FM的结构相似,模型中的FM部分被替换成一种新的特征交叉子网络,不仅可以对高阶的特征交叉建模,而且具有强大的隐式特征交叉建模的能力.A FM模型1 0将深度学习领域的注意力机制应用到FM模型中,通过学习特征的重要性增强原始的FM模型,但其每个特征只有一个固定的表示,这限制了模型的表达能力.I FM模型1 1利用多层全连接神经网络,根据输