CIKM23|基于会话推荐的因果关系引导图学习
论文链接:https://www.researchgate.net/profile/Dianer-Yu/publication/373143453_Causality-guided_Graph_Learning_for_Session-based_Recommendation/links/652b3fe006bdd619c48fdd00/Causality-guided-Graph-Learning-for-Session-based-Recommendation.pdf
这篇论文读完还是有点疑惑,是针对4.1.1节,使用GRU 提取时序信息 和 MLP 生成软掩码生成了因果图和快捷图的部分。 那么后续的包括后门调整都是在基于这两个图上进行的,没有直接捕捉到因果关系(文章用的是相似度计算),而是更多地依赖于物品的交互模式和历史数据。
1 动机
当前的会话推荐系统(在捕捉用户的时序偏好时,主要依赖图形模型来分析用户的交互数据,然而:
1:当前的图方法容易受到快捷路径的影响,从而影响了对用户真实偏好的准确估计。快捷路径:在图结构中,两个项目之间存在直接的连接,但这种连接并没有考虑到项目之间的顺序依赖关系和中间交互(用户可能通过商品C(作为中介)而交互了A和B,意味着A和B的关系并不是直接的)。
2:忽视潜在的因果关系,因果推理可以识别哪些路径是真正反映用户偏好的“因果路径”,从而避免依赖那些仅仅是偶然发生的快捷路径。
上图显示了会话图包含的快捷路径,用户可以在其中快速地从初始项导航到最终项,而无需使用中间项。
2 贡献
提出CGSR从因果关系的角度有效地阻止了快捷路径对会话图的影响,从而提高了推荐性能和可解释性:
1:通过因果推理中的后门调整机制,生成一个只包含项目间因果关系的蒸馏会话图,以阻止快捷路径的影响,保留了反映用户真实偏好的因果关系。
2:在聚合方面,通过对提取的会话图进行不同边缘类型的高阶聚合来估计会话偏好,从而探索丰富的语义来学习用户的真实意图。
3 因果图
因果图用于表示变量之间因果关系的工具。因果图通过节点和有向边(表示因果关系,箭头从原因指向结果)来描述变量之间的因果关系,上图为CGSR的因果图:
- 图表示 A:会话图的表示,通常是通过图神经网络得到的图结构。
- 快捷路径 B:表示会话图中那些因数据偏见或偶然因素导致的非真实因果关系的边(即快捷路径)。
- 因果特征 C:表示用户的真实偏好与物品之间的因果关系。
- 图数据 D:会话图中的数据,描述了物品交互的顺序和模式。
- 预测 Y:最终的推荐结果,即预测用户下一个可能交互的物品。
因果图中,快捷路径(B)作为干扰因子存在,它连接了因果特征(C)和推荐结果(Y),并可能产生虚假的相关性。因此使用后门调整,对中间变量的条件作用阻止了对因果关系的准确推断的虚假关联:
后门调整的目的是通过控制混杂变量 B,来消除它对 C 和 Y之间因果关系的干扰。通过控制 B,可以模拟直接干预 C的效果。因此,为了探究如果干预变量 C,会对结果变量 Y 产生什么影响,需要在控制混杂变量 B 的条件下,观察 C 和 Y之间的因果关系。给定 C,需要考虑混杂变量 B的分布 ,从而推断 C 对 Y 的因果效应。
4 模型
给定从所有会话生成的预训练初始会话图,CGSR包括两个组件。对于蒸馏,使用后门调整来阻止初始会话图中的捷径路径,从而得到包含项目之间因果关系的蒸馏会话图。对于聚合,在提炼的会话图上通过高阶聚合生成高质量的会话首选项表示,从高阶连接中捕获丰富的语义。
4.1因果蒸馏
分别构建了因果图和快捷图来捕捉因果特征和快捷特征。通过对这些图的表示进行后门调整,有效地阻断快捷路径。
4.1.1因果图和快捷图
首先使用GRU提取项目的时序信息,得到每个item节点的特征表示:
使用了多层感知器分别从节点(项目)和边(连接)的角度测量注意力得分:
接下来就是原文部分:基于两个得分生成soft masks Ma和Mx
因此,生成了因果图和快捷图。原文:总而言之,因果图捕获了用户偏好的因果关系,而琐碎图表示了快捷关系
4.1.2 图表示的分解
从原始的会话图中分离出因果特征和快捷特征。因果图:捕捉会话中物品之间的因果关系。快捷图 :捕捉会话图中由数据噪声或共现引起的快捷路径。使用GAT:
因果图损失函数SUP是训练数据上的交叉熵损失:是实际的用户偏好(交互),通过最小化真实分布 和预测分布之间的差异,。快捷图的损失函数UNI使用KL散度将预测均匀地推到所有项目上的统一分类损失,减少由噪声或共现引起的快捷路径的影响:是均匀分布:
4.1.3 因果干预
在上面两个生成的图上实现后门调整。消除会话图中快捷路径的影响。将目标因果图与快捷图的每个分层配对以创建干预图,在表征层面进行隐式干预:
通过逐元素相乘,模拟因果干预。并映射函数生成调整后的图表示。并且损失函数指导干预,D为训练数据集,T为快捷图的分层集,y为真实标签。最终的损失函数:
通过优化损失函数,可以成功地阻止捷径路径的影响,并生成一个蒸馏的会话图,该图专门捕获了项目之间的因果关系。这个经过提炼的图可以用来执行下一项预测任务。
4.2 基于蒸馏会话图的聚合
通过在提炼的会话图上执行来自不同边缘类型的高阶聚合来预测用户的偏好。不同边缘类型包括Rout外向邻居(与项目 i 有连接关系的其他项目),Rin入向邻居(所有指向项目 i 的边的集合)以及用户的邻居集合Ru
4.2.1 生成会话表示
首先计算相邻项目之间的相似度分数并归一化:
其次,基于归一化相似度使用gnn来聚合来自每个特定边缘类型的邻居的消息,为会话偏好生成高质量的项目表示:
取所有消息平均值更新项目表示,以捕捉不同类型的交互对用户会话偏好的总体影响:
相同的操作应用于用户端:
在每一层聚合的项目和用户表示组合起来,以创建最终的全局级项目和用户表示:
U𝑢和 I𝒊 分别表示最终的全局级用户和项目表示,由于U𝑢和 I𝒊 的贡献可能不同,采用一种控制机制𝑔来限制从用户和项目传播的信息,以形成最终的会话首选项表示Su:
4.2.2 推荐
下图是论文的流程图:
5 模型可解释性
为了验证模型在阻断快捷路径和提高模型可解释性方面的有效性,对Diginetica进行了一个案例研究,如下图所示。图中的边用实线或虚线表示,其中实线对应因果图中的边,虚线对应平凡图中的边。这两个图是基于初始会话图的软掩码和节点特征构建的,可以更深入地理解图的结构。每条边的标准化相似度分数表示两个连续项目之间的相似度。
用户25与项目1189的交互被作为推荐系统的起点,接下来模型根据项目1189的相似性推荐其他项目。分析过程中,项目1189的边被分成了三类:橙色的𝑟𝑛,黑色的𝑟𝑜𝑢𝑡,蓝色的𝑟𝑟。然后,推荐人根据边缘相似度分数寻找与项目1189最相似的项目。在这个过程中,项目65407和57539之间的边缘得到了异常高的分数,导致模型过度强调它们之间的关系,推荐项目7492(快捷路径)。
通过对会话图进行整体因果检查,发现项目49272具有最高的总分,表明它与其他项目之间存在较强的因果关系。通过这种因果图的整体检查,能够发现项目49272比项目65407和57539更符合推荐的真实因果关系。
那么按照该论文的方法:通过逐元素相乘来模拟因果干预,通过调整快捷图中的路径权重,减少捷径路径的影响。 并依此生成新的图表示 ,通过损失函数,有效去除捷径路径的影响。