关注我们,一起学习~
title:Price DOES Matter! Modeling Price and Interest Preferences in Session-based Recommendation link:https://arxiv.org/pdf/2205.04181v1.pdf code:https://github.com/Zhang-xiaokun/CoHHN from:SIGIR 2022
1. 导读
懒人可跳至“2.懒人阅读”
现有的基于会话的推荐方法只关注建模用户的兴趣偏好,而忽略了价格因素。而将价格偏好纳入基于会话的推荐存在以下挑战。
- 首先,很难处理来自物品的各种特征的异构信息来捕捉用户的价格偏好。
- 其次,在确定用户选择时,很难对价格和兴趣偏好之间的复杂关系进行建模。
本文提出了会话推荐的新方法CoHHN。
- 对于第一个挑战,设计异构超图来表示异构信息和它们之间的丰富关系。然后设计一种双通道聚合机制来聚合异构超图中的各种信息。之后,通过注意力层提取用户的价格偏好和兴趣偏好。
- 对于第二个挑战,设计一个协同引导的学习方案,以模拟价格和兴趣偏好之间的关系并增强彼此的学习。
2. 懒人阅读
本文作者主要是考虑了价格因素对推荐效果的影响,以往的方式可能更多的是对价格最为一个特征来进行建模,本文是通过对用户的价格偏好进行建模,并结合用户的兴趣偏好,综合判断用户可能与什么商品交互。
- 异构超图,这个超图中包含的节点由三种类型,商品的ID,商品的类型和离散化后的商品的价格
- 超图中的边也有三种,分别是同一商品的不同特征,同一会话的不同商品ID,同一会话的不同商品价格节点
- 双通道聚合,基于构建的超图,进行同类型和跨类型节点embedding信息聚合
- 基于多头自注意力机制,从序列中挖掘与用户的原始兴趣偏好和原始价格偏好
- 协同引导学习,价格偏好和兴趣偏好之间是存在相互影响的,因此作者在这里对两者进行交互,发掘两者关系
- 最后计算交互概率和交叉熵损失函数
3. 基础定义
3.1 问题定义
本文的重点是对用户的价格和兴趣偏好进行建模,以改进会话推荐方法。令
表示商品的集合,
是商品的总数。一个商品
包含一些特征,包括商品ID、价格和类别。
表示一个匿名用户的会话。CoHHN 可以看作是一个函数f,其输入是当前会话S。输出是
,y表示交互的可能性。
3.2 价格离散化
物品的绝对价格不足以确定该物品是否昂贵。例如,200 美元对于一部手机来说可能很便宜,但对于一盏灯来说,同样的价格会非常高。因此,必须根据商品类别将商品价格离散为不同的价格水平,以便可以在不同类别之间进行比较。价格分布更接近 logistic 分布,而不是广泛使用的均匀分布。如图 1 所示, logistic 分布的概率密度函数在中间呈现高偏好,在两边呈现低偏好。在价格集中的地方,用户可以选择的价格相近的商品越多,价格敏感度更高,价格等级的划分越细,反之亦然。每个价格水平所包含的项目数量应处于相同的比例。因此,如图 1 所示,将价格离散化为ρ个级别,其中每个区间对应的概率相等。形式上,对于价格为
且其类别的价格范围为[min, max]的商品
,确定其价格级别如下,
其中
是 logistic 分布的的累积分布函数,公式如下,
3.3 超图构建
为了从异构信息中提取用户的价格和兴趣偏好,设计异构超图
,V是节点集合,E是超边集合。每个节点
拥有一个类型τ并且具有相同类型的节点形成一组同质节点
。节点类型包括商品价格 (
)、商品ID(
) 和商品类别 (
),所有这些都与价格和兴趣偏好密切相关,因此
。每个超边
连接两个或多个任意类型的节点。定义以下三种类型的超边来表示各种节点之间的多类型关系:
- (1)特征超边:连接一个商品的所有特征;
- (2)价格超边:连接会话中所有商品的价格节点。
- (3)会话超边:连接会话中所有商品的ID节点。
利用特征超边来传播异构节点的embedding,价格和会话超边分别用于提取用户的价格和兴趣偏好。如果两个节点通过超边连接,则它们是相邻的。构建异构超图的过程如图 2 的最左侧所示。
4. 方法
image.png
4.1 双通道聚合机制
在构建的异构超图中,目标节点可以与多种类型的节点相邻。很明显,相同类型的节点包含同质的信息,不同的类型有不同的语义。因此,将消息聚合总结为两个通道,即类型内通道和类型间通道。在类型内通道中,对于一个目标节点,相同类型的相邻节点具有不同的重要性。在跨类型通道中,不同类型可能对目标节点产生不同的影响。双通道聚合机制来聚合来自两个通道的信息。
4.1.1 类型内聚合
是类型为t的目标节点的embedding。其具有某种类型的相邻节点形成一个集合
。类型内聚合旨在区分
中节点的重要性,并聚合来自这些节点的信息以表示该类型(