[paper阅读] 基于Attention的群组推荐

译自 @TRAN DANG QUANG VINH 等人在2018年公布的 Attention-based Group Recommendation.

摘要

群组推荐: 为群组用户推荐物品(例如, 向同事群推荐一个饭店). 群组推荐问题非常有挑战性, 因为一个好的模型应该正确地理解群组决策过程: 用户倾向于追随一小部分用户的决策, 其中这一小部分用户就是传说中的[意见领袖]或者[领域专家].

为了应对这个挑战, 作者们提出使用一个[注意力机制]来获取群组中每个用户的影响. 具体说来, 模型可以学习到群组中每个用户的影响权重, 然后基于其成员的加权偏好向群组推荐物品. 更多的, 模型可以动态调整群组中每个用户的权重, 从而能够提供一个新的/灵活的方法来对复杂的群组决策过程进行建模. 作者们还进行了众多拓展性实验来验证模型的方法.

简介

群组中用户偏好的不同需要在 [不同的偏好] 和 [向群组推荐最受欢迎的物品] 之间做个权衡, 因此群组推荐也是一个非常有挑战的任务.

现状:
主要分为 [基于内存的方法] 和 [基于模型的方法] 两大类. 基于内存的方法可以进一步分为两类: [偏好聚合] 和 [分数聚合] . 偏好聚合策略将所有的用户偏好都聚合在一起形成群组偏好, 然后向群组用户生成推荐. 分数聚合策略则是为每个用户生成一个推荐的列表, 然后将所有单个的列表聚合在一起生成推荐, 常用的聚合方法有: 均值, least misery 以及 maximum satisfaction等.

但是, 上面两种策略都不能在聚合成员兴趣的时候对小组成员的互动进行建模. 相反地, 基于模型的方法对待推荐物品群组的决策过程进行建模. 但是, 现有的模型无法复制群组复杂的决策流程.

在本文中, 作者提出了一个新方法用来解决群组推荐的问题. 本文的解决方案的动机在于: 群组中的成员倾向于跟随群组中最重要的成员(leadersexperts), 而不是同等考虑所有群组成员的意见. 其原因在于: 群组成员在群组的话题上有不同的专业级别, 而一个群组中往往只有很少的用户精通该主题. 基于这个动机, 作者们希望对群组间的用户交互进行建模, 以此来帮助我们探究不同群组成员之间的角色, 从而为群组生成更精确的推荐.

为了实现上面的目标, 作者在协同过滤中引入了[注意力机制]与 [注意力群组推荐] 模型相结合的方法来解决群组推荐中上面提到的两个挑战. 通过使用注意力机制, AGR(Attentive Group Recommendation, 注意力群组推荐)可以学习到其它群组成员的经验在相同群中某个成员决策的影响, 从而优化了群组决策过程的建模过程. 注意力机制的影响不仅仅能够帮助模型探究群组中每个用户的影响, 也能够更好地获取到用户在不同群组之间多方面的影响力, 但是现有方法没有实现该功能的. 本文的主要贡献在于:

  • 提出的AGR模型使用一种新颖的深度学习方法来解决群组推荐的问题, AGR是第一个在群组推荐中使用[注意力机制]的方法
  • AGR可以动态地调整群组中每个用户的权重, 提供用户在不同群组中不同角色更清晰的定位, 并且能够更好地解释群组的最终决策
  • 在四个数据集上组织了许多拓展性实验, 实验结果表明AGR的效果明显优于其它先进的方法

本文接下来的内容如下: 第二部分概述了现有文献; 第三部分描述了一些预备知识, 包括注意力机制和BPR(Bayesian Personalized Ranking, 贝叶斯个性化排序); 第四部分介绍了AGR; 第五个部分展示了四个数据集上的比较实验; 最后一个部分总结了我们的工作.

相关工作

群组推荐

主要分为 [基于内存的方法] 和 [基于模型的方法] 两大类. 基于内存的方法可以进一步分为两类: [偏好聚合] 和 [分数聚合] . 偏好聚合策略将所有的用户偏好都聚合在一起形成群组偏好, 然后向群组用户生成推荐. 分数聚合策略则是为每个用户生成一个推荐的列表, 然后将所有单个的列表聚合在一起生成推荐, 常用的聚合方法有: 均值, least misery 以及 maximum satisfaction等.

最常用的聚合方法为AVG(均值)策略和LM(least misery)策略. 其中, 均值策略将群组中个人的平均分作为最终的推荐分数, 从而最大化整体的群组满意度. 相反, LM策略通过选择出所有个人分数中的最低分数作为最终分数来使用户满意. 两种分数聚合方法都有一些很严重的缺点:

  • AVG策略返回的是一部分成员喜欢的而其它成员不一定喜欢的
  • LM策略返回的则是那些中间, 没有人喜欢或者讨厌的物品

Baltrunas等人[2]指出: 这两种策略的性能取决于群组的规模以及群组内的相似性. Yahia等人[3] 提出了相关性和不一致的概念, 主张: 群组成员之间对于每个物品的偏好不一致性是不可避免, 作者们通过实验表明: 考虑不一致性会大大地提高AVGLM策略的推荐质量.

接下来稍微介绍下基于模型的群组推荐方法.

Seko等人[4]提出了一个将物品分类与推荐相融合的模型, 主张物品分类会影响群组的决策, 并且不同分类的物品并不是严格可比的. 但是, 这种方法只适用于预先定义好的群组(例如, 夫妻), 而这些群组可以被当做是虚拟的用户, 可以使用单个用户的推荐策略; 但是, 实际生活中的群组通常是临时的, 并且仅仅是通过几次活动形成的.

Carvalho等人[5]则在群组推荐中使用了博弈论, 将每个群组事件看做一个非合作博弈, 或者群组成员中的竞争博弈, 然后提出: 推荐目标应该为游戏的纳什均衡. 然而, 由于纳什均衡的结果是一系列的物品, 因此游戏理论可能会无法推荐单个特定的物品.

概率模型也被广泛应用到群组推荐中. Liu等人[6] 提出了一个PIT(Personal Impact Topic, 个性化影响主题)模型用于群组推荐, 假设最有影响力的用户应该表示群组并且对群组的决策有重要影响. 然而, 这样的假设并不能反映: [如果用户是某个领域的专家, 该用户应该只能影响群组在该领域的最终决策] 这个事实. 例如, 一个电影专家可以在她和朋友一起去看电影时决定群组看的电影, 但是ta不应该决定之后去哪个饭店吃饭, Yuan等人[7]提出了一个COM (Consensus Model, 舆论模型) 用于群组推荐. 模型假设: ① 用户的影响视决策的主题而定(术业有专攻) ② 群组决策过程需要同时考虑 [群组偏好的主题] 以及 [每个用户的个人偏好]. 尽管基于这些假设, COM也有着和PIT相似的缺点: COM假设用户在不同的群组中有相同的概率追随群组的决定.

相反, Gorla等人[8] 假设候选物品的评分同时考虑 [物品与群组中每个成员的相关性] 以及 [物品与整个群组之间的相关性] . 他们提出了一个基于信息匹配的模型用于群组推荐, 但是, 模型的时间复杂度非常高: O({|U|}^2{|I|}^2) , 其中 |U||I| 分别是用户数和物品数. 基于一些实验性的探究, 该方法无法在几天之内完成大数据集的运算. 最近, Hu等人[9] 提出了一个深度框架模型(DLGR), 用于学习群组偏好的/高层次/可理解的特征以避免数据的易损性. DLGR只关注预先定义好的群组而不是临时的群组.

基于深度学习的推荐系统

由于深度学习高质量的推荐, 深度学习技术已经被广泛地用于推荐系统. 深度学习可以获取用户和物品之间的非线性的/有意义的关系, 同时也提供了用户需求和物品特征以及它们之间交互的深入理解. 但是, 很少有工作聚焦于将深度学习技术运用到群组推荐中.

本文提出的AGR模型基于用户的评分历史使用深度学习技术生成推荐. 具体说来, AGR利用注意力机制来调整群组的表示.

预备知识

问题定义

假设分别有 M 个用户和 N 个物品: U={u_1, u_2, …, u_M}, I={I_1, I_2, …, I_N} . 历史日志为: H={\langle g_1, s_1\rangle, \langle g_2, s_2\rangle, …, \langle g_N, s_N\rangle} , 其中, g_n\subset U 表示临时的群组, 而 s_n=i_k 表示该群组选择的物品.

给定一个目标群组 g_t , 模型的目的是: 生成一个 群组 g_t 中的用户成员 u_{g_t, i} 可能感兴趣的 物品推荐列表. 注意: 目标群组可能是一个临时的群组. 群组推荐问题可以定义如下:

输入: 用户 U , 物品 I , 历史日志 H , 以及目标群组 g_t
输出: 一个函数, 能够将一个物品映射为一个能表示特定群组物品评分的实值: f_{g_t}: I \rightarrow \Re

BPR(Bayesian Personalized Ranking, 贝叶斯个性化排序)

在基于矩阵分解的方法中, 经常会使用到BPR解决隐式反馈的推荐. 尽管这个方法之前是被用于个性化排序任务的, 现在也可以用于优化群组推荐任务. 具体的, 对一个群组和两个物品的三元组进行建模: 正向物品(被观察到的物品) 以及 负向物品(未被观察到的物品). 三元组模型假设: 如果群组 i 观察到了物品 j (正向物品), 那么与其它未观察到的物品 k (负向物品)相比, 该群组必定更倾向于该物品. 因此, 模型将正向物品排序的位置高于负向物品.

具体的, 目标函数的定义如下:
{\text{arg} \min\limits_\Theta}_{(i,j,k)\in \mathcal{D}_s} {-\ln \sigma (\hat{R}_{ij}(\Theta)-\hat{R}_{ik}(\Theta)) + \lambda {||\Theta||}^2} 公式1

其中, 集合 \mathcal{D}_s 包含每个群组中的所有正向和负向物品对; \Theta 表示模型的参数; \hat{R}_{ij}(\Theta) 为群组 i 对物品 j 的预测评分; \sigma 为逻辑斯蒂回归函数; 而 \lambda 则是正则化参数.

由于群组的实际数据通常比较隐式, BPR非常适用于群组推荐模型.

注意力机制

注意力机制是深度学习领域近期以来最令人兴奋的进展之一. 它已经被成功地运用于了多个机器学习任务中, 例如机器翻译, 图片和视频标注以及语音识别等. 注意力的概念为: 当人们视觉上接触一个物品时, 为了快速响应, 我们倾向于会关注物品的一些重要部分而不是直接关注到所有对象. 图1展示了注意力机制的示例. 注意力模型输入n 个参数, x_1, x_2,…, x_n 以及一个上下文 c , 给定与上下文 c 相关的信息之后, 它会返回一个向量 y , 它是 x_i 的组合. 具体的, 给定上下文 c , 模型会返回每个 x_i 的加权算数均值, 其中权重 \alpha_i 的选择是基于 x_i 的相关性决定的.


1: 注意力机制

本文的模型采用注意力机制来学习一个用户对群组中其它用户的注意力权重, 权重越高表明用户越重要; 因此, 他们对于群组的最终决策越重要. 据文中所说, 提出的AGR是第一个基于注意力的群组推荐模型.

AGR(Attentive Group Recommendation, 注意力群组推荐)

这个部分将会介绍AGR(Attentive Group Recommendation, 注意力群组推荐) 模型. 接下来将会介绍模型的主要动机, 然后描述通用的框架.

模型动机

AGR模型的目标是模拟群组决策的过程, 基于的主要动机包括:
– 群组中的用户通常来自不同的背景, 有着不同的专业技能, 因此在进行群组决策时, 每个用户的意见有着不同的影响
– 用户通常比较赞同那些在群组主题领域的专家而不是其它用户, 例如, 在一个假期旅游计划的群组中, 那些 [到加拿大旅游过的用户的意见] 应该比 [那些考虑将加拿大作为旅行目的地的用户意见] 权重更高.
– 用户在不同群组中发挥的影响力应该是不一样的, 其权重的高低应该依赖于他在相关领域的专业度. 例如, 一个有着丰富电影知识的用户可能会决定该群组去看的电影, 但是无法影响选择露营地址的决策.

总体说来, 作者观察到: 成员之间的交互对群组的决策过程有非常重大的影响: 在进行群组决策之前用户之间经常相互讨论他们的意见. 然而, 在群组推荐现有的方法中并没有探究成员交互的重要性. 本文提出的AGR方法的一个主要贡献点在于: 模型探究了在群组决策的过程中, 一个用户是如何影响另外一个用户的, 以及在这个工程中群组决策的变化.

直观地, 作者们认为在群组决策过程为:

  • 每个用户都会命名一些用户作为群组的主要决策者
  • 然后投票票最多的用户为该群组选择一个物品

这样的投票机制表明: 与该组偏好最相关的领域中的专家用户一般会收到更高的投票. 在这样的前提下, 对于一个由 n 个用户的群组 i , 可以考虑将投票机制(或者群组决策流程) 作为同步发生的n个子流程. 也就是说, 第一个用户进行投票, 第二个用户进行投票, …, 最后一个用户进行投票. 因此, 作者们从一个用户数为 n 的群组 i 中创建了 n 个子群组, 来探究其它用户感知到的每个用户的影响.

通用框架

AGR使用神经网络对 [群组针对候选物品的偏好评分] 进行建模. 接下来, 将介绍上面提到的群组决策过程中的两步.

为了模拟群组决策过程的第一步, 考虑引入一个影响权重 \alpha(i, l, m) , 用来标识群组 i 中用户 l 对用户 m 的投票偏好. 值的意义是: 如果用户 m 在群组中是一个重要的用户, 那么她应该获取到来自用户 l 的高权重 \alpha(i,l,m) ( 动机2 ). 假设 \alpha(*, l,m) 在所有用户 l 和用户 m 同在的组中是一个常数, 那么可以根据每一个 (l,m) 用户对估计影响权重 \alpha(*, l, m) . 但是, 很显然这个假设与我们的 动机3 相冲突, 因为用户 l 在不同的群组中接收到来自用户 m 的影响应该是不同的. 基于 动机3, 用户 m 在那些与她专业相关的主题群组中的影响力应该大于那些她不熟悉主题的群组. 因此, 投票的时候, 用户 l 倾向于在那些用户 m 为专家的群组中提名 m 为主要的群组决策者, 而不是在那些用户 m 不熟悉的群组中. 因此, 影响权重 \alpha(*, l,m) 应该随着变化的群组偏好进行动态计算, 在这里, 通过使用注意力机制动态学习 \alpha(*, l, m) , 可以检测到群组中最重要的/权重高于其它人的用户. 然后, 群组决策的第二步就可以非常容易进行了.

在本文中, 作者们提出使用一个基于注意力的模型来估计群组中用户的影响权重. 具体的, 给定群组 i 中的群组成员, 当用户 l 浏览群组中其它用户时, 那么她倾向于只关注很少一部分专家用户, 而忽略其它用户, 这与前面部分介绍的注意力机制的基本思想非常相似. 因此, 在这里作者们使用一个注意力网络来计算 \alpha(i, l, m) , 以度量在用户 l 的意见中用户 m 在群组 i 中的重要性. 最终, 通过组合左右子群组中的输出结果, 就可以计算得到群组 i 中所有用户的重要性权重( 动机1), 然后有针对性地为该群组生成推荐.

形式上, AGR通过两个因子向量对每个用户 l 进行建模: 用户潜在向量 u_l 和用户-上下文向量 c_l . 注意力模型使用上下文向量 c_l 来估计其它用户对用户 l 的影响( {u_1, u_2,…,u_{l-1}, u_{l+1}, …, u_n}. 更具体地说, 首先将群组 g_i 分割成了 n 个子群组, 其中, 每个子群组 g_{i,l} 包括群组 g_i 中除了用户 l 之外其它所有的用户. 然后, 针对每个子群组运行一个注意力子网络, 输出为该子群组的表示. 这个表示就作为在用户 l 角度下的子投票流程的输出结果. 每个注意力子网络的表示(或者输出)的计算方式为: g_{i,l}=\sum_{m\neq l}{\alpha(i, l, m)u_m} , 因此, 群组 i 的表示为 g_i=\sum_{l} g_{i,l} . 其中, g_{i,l}=\sum_{m\neq l}{\alpha(i, l, m)u_m} . 考虑: g_i=\sum_{l} g_{i,l} , 也就是说, 投票模式将所有用户的投票都看成等价的了.

2中展示了AGR的架构. 对于一个给定的群组 g_i, 创建了 n 个注意力子网络. 每个注意力子网络 l 的输入为 [用户-上下文向量 c_l ] (填充色为橙色的圈)和 [成员潜在向量的集合( {u_1, u_2,…,u_{l-1}, u_{l+1}, …, u_n} )] ( 线条颜色为蓝色的圈), 然后返回每个用户 m ( m\neq l) (绿色框白色填充的圈) 的注意力权重 \alpha(i, l, m) . 最后, 每个注意力子网 l 的输出计算为 加权和: g_{i,l} = \sum {\alpha(i, l, m)u_m} (绿色框白色填充的正方形), 表示给定用户上下文 c_l 的群组. 群组 g_i 的最终表示计算为它们的总和: g_i=\sum_l {g_{i,l}} (绿色填充的正方形). 最后, 使用BPR用于优化群组推荐任务.


2 注意力群组推荐

注意力子网络: 每个注意力子网络都会对 [每个成员 l ] 和 [群组其它成员] 之间的交互进行建模, 以学习用户 l 对群组中其它成员的投票偏好. 给定一个用户-上下文向量 c_l 以及一个用户潜在向量的集合 {u_1, u_2, …, u_n} – {u_l} , 可以使用一个两层的网络来计算注意力分数 \alpha(i, l, m) , 公式如下:
\alpha(i, l, m) = w ^ t \phi (W_c c_l + W_u u_{m, m\neq l + b}) + c, l,m = \overline{1,n} 公式2

其中, 矩阵 W_cW_u 以及偏好 b 为第一层的参数, 向量 w 和偏好 c 为第二层的参数. 在这里既可以简单地使用线性变换 \phi(x) = x , 也可以使用一个ReLU 函数: \phi(x) = \max(0,x).

最后使用Softmax函数来获得最终的注意力权重, 并且对\alpha(i, l, m) 进行归一化:
\alpha(i, l, m) = \frac{\exp(\alpha(i, l, m))}{\sum_{m=1, m\neq l}^n {\exp(\alpha(i, l, m))}} 公式3

预测评分: 在获得群组 i 的表示之后, 群组 i 针对物品 j 的预测评分计算方式如下:
\hat{R}_{ij} = \lgroup_l{g_{i,l}} ^T v_j = \lgroup _l \sum_{m\neq l}{\alpha(i, l, m) u_m} ^T v_j
其中, v_j 为物品 j 的物品潜在向量.

目标函数: AGR 利用 BPR 成对的学习目标来优化 正向物品和负向物品之间的成对排序. 公式1 的目标函数可以被重写为:

{\text{arg} \min\limits_\Theta}_{(i,j,k)\in \mathcal{D}_s} {-\ln \sigma (\lgroup _l \sum_{m\neq l}{\alpha(i, l, m) u_m} ^T v_j-\lgroup _l \sum_{m\neq l}{\alpha(i, l, m) u_m} ^T v_k) + \lambda {||\Theta||}^2}

其中, \Theta 表示模型的参数; \alpha(i, l, m) 为用户 l 在群组 i 中对用户 m 的投票权重. 然后使用 Adam (Adaptive Moment Estimation, 自适应动量估计) 优化目标函数.

实验

在这一部分, 作者们在4个数据集上将 AGR与其它6种基线技术的实验结果进行了比较. 下面, 本文将会列出 学习到的注意力权重 来评估 群组决策 中主要用户的权重, 这些的结果将会为群组推荐结果提供一些解释, 这是AGR的一个额外的优点. 一般说来, 实验目标是回答下面几个研究问题:

  • RQ 1: 与现有方法相比, AGR 的表现如何?
  • RQ 2: AGR学习到的动态权重是否与现有方法学习到的固定权重更合适? 注意力模型是否足够高效?
  • RQ 3: 在群组大小不同的情况下, AGR 的表现如何?

实验设置

数据集: 作者们在4个真实的数据集上组织了实验.

第一个数据集来自一个EBSN(Event-based social network, 基于事件的社交网络) — Plancast. Plancast 允许用户直接追随其它用户的事件日历. Plancast 中的事件包括一个用户群组和一个地点. 因此, 在这里, 作者们将活动看做一个群组, 参加活动的每个用户看做是群组中的用户. 群组中的用户将会选择一个地点(候选物品) 举办这次活动. 目标是: 为活动群组推荐一个举办地点.

第二个数据集是从EBSN Meetup 中爬取的数据, 下载地址. 在这里, 作者们选择了NYC的数据, 包含着在纽约发生的活动, 作为实验的数据集. 与Plancast相似, 模型的目标是向一个给定的群组推荐一个地点来组织活动.

最后两个数据集从MovieLens 1M 数据 中处理得到. MovieLens 1M 数据大概包含来自6000多个用户对大约4000部电影超过百万的评分. 与论文[2]中的方法一样, 作者们从 MovieLens 1M 数据中提取出了连个数据集: MovieLens-SimiMovieLens-Rand. MovieLens-Simi 中奖那些有较高内部群组相似性的用户分到了相同的群组, 而 MovieLens-Rand 则将用户进行了随机分组. 因此, MovieLens-SimiMovieLens-Rand 呈现了两种典型的现实情况: 群组中要么是包含有相同偏好的用户, 要么是不相关的用户. 例如, 亲近朋友的群组有较高的内部群组相似性, 而在同一辆公交车上的用户则可以看做是一个随机组.

1中表示了这4个数据集的一些统计信息. 作者们将每个数据集随机分成了训练/调参以及验证组, 对应的比例分别为: 70%/10%/20%.

1: 数据集统计

数据集 Plancast Meetup MovieLens-Simi MovieLens-Rand
总用户数 41,065 42,747 5,759 5,802
总群组数 25,447 13,390 29,975 54,969
总物品数 13,514 2,705 2,667 3,413
平均群组大小 12.01 16.66 5.00 5.00
用户的平均记录数 7.44 5.22 26.03 47.37
物品的平均记录数 1.88 4.95 11.24 16.11

度量标准

本文采用了3中不同的方式进行度量:
– 准确率 ( prec@K ): precision@Ktop-K的推荐中群组选择过的推荐占比, 对所有测试群组中的 precision@K 求平均得到 prec@K
– 召回率 ( rec@K ): recall@K 为相关的物品(真物品集)中在top-K个推荐中被检索回来的占比, 对所有测试群组中的 recall@K 求平均得到 rec@K
NDCG (Normalized discounted cumulative gain, 归一化折损累计增益) ( ndcg@K ): 使用这个度量标准来评估推荐列表中真实物品的排序, 对所有测试群组中的NDCG值 求平均得到 ndcg@K 度量.

其中, K 为推荐数. 在这里, 作者们分别评估了 K={5, 10, 20} 时的推荐准确率.

对于上面三种度量而言, 数值越高表明推荐效果越好.

推荐方法

这个部分将会比较6种推荐方法: CF-AVG, CF-LM, CF-RD, PIT, COM, MF-AVG 以及本文提出的AGR. 在基线模型中, CF-AVG, CF-LM, CF-RD都是分数聚合的方法, PITCOM 都是比较流行的概率模型, 而MF-AVG则是一个矩阵分解模型.

  • CF-AVG(User-based CF with averaging strategy, 基于用户的协同过滤与均值策略相结合): 将基于用户的协同过滤用来计算每一个用户对候选物品 i 的偏好评分, 然后将所有用户的偏好评分求平均值来获得物品 i 的群组推荐评分
  • CF-LM(User-based CF with least-misery strategy, 基于用户的协同过滤与最低不满意策略相结合): 与CF-AVG相似, CF-LM先使用基于用户的协同过滤来计算每个用户对候选物品 i 的评分, 但是, 物品 i 对应的分数为群组中所有用户对该物品的最低评分
  • CF-RD(User-based CF with relevance and disagreement strategy, 基于用户的协同过滤与相关性/不一致性策略相结合): 将基于用户的协同过滤用来计算每一个用户对候选物品 i 的偏好评分. 群组推荐评分的计算方法为: 将该物品的相关性和不一致性评分求和. 相关性分数使用 CF-AVG 或者CF-LM求得, 而不一致性分数是物品在群组成员中的相关性(成对不一致均值方法)差异均值, 或者是群组成员中关于该物品相关性的数学方差(不一致性方差法)
  • PIT(Personal impact topic model, 个性化影响主题模型): PIT是一个作者-主题模型. 假设每个用户有一个影响力权重, 用来标识用户对群组最终决策的影响, PIT选择有相对较高影响力评分的用户作为群组的代表. 被选中的用户基于他的偏好来选择一个主题, 最后基于该主题为群组生成一个推荐的物品
  • COM(Consensus model, 一致性模型): COM基于两个假设: ① 个性化的影响是基于主题的; ② 群组的主题偏好和个人的偏好都会影响最终的群组决策. 第一个假设允许COM 基于群组-主题和主题-用户的分布对主题依赖的个性化影响进行推导; 而第二个假设允许COM聚合群组的主题偏好和用户个性化变量中推导得到的个人偏好权重
  • MF-AVG(Average Matrix Factorization, 矩阵分解均值) : MF-AVG是一个矩阵分解模型. MF-AVG将群组所有成员对某个物品的平均评分作为群组对于该物品的推荐评分. MF-AVG假设所有用户对群组的最终决策贡献力一致, 同等考虑所有个性化的影响权重. 换句话说, MF-AVG可以被看作在一致性背景下的本模型的方法, 只不过使用 g=\sum_i {w_iu_i} , 其中 w_i = \frac{1}{n} . 此外, 作者还优化了VPR成对排序目标函数来预测群组推荐分数
  • AGR(Attentive Group Recommendation, 注意力群组推荐): 本文中介绍的模型, 将注意力子网络结合在一起创建了一个注意力网络来学习每个用户的动态个性化影响权重.

参数设置: 对于PITCOM, 作者们调整了主题的数目, 然后其它超参的默认值. 对于MF-AVGAGR模型, 首先使用均值为0.标准差为0.05的高斯分布随机地初始化参数, 然后使用Adam优化目标函数. 测试的batch size[128,256,512] , 学习率为 [0.001,0.005,0.01,0.05,0.1] , 不同的正则化参数为: [[0.001,0.01,0.1,0]. 然后实验性地设置了MF-AVGAGR的嵌入维度大小为50. 最后, 在参数设置分别为: batch size: 256, 学习率为0.001和正则化参数为0.01的情况下, 能够得到较优的结果.

整体的性能比较(RQ 1)


3 群组推荐方法的 prec@K (p <0.0001)


4 群组推荐方法的 rec@K (p <0.0001)


5 群组推荐方法的 ndcg@K (p <0.0001)

这个部分将AGR与其它基线模型的实验结果进行了比较. 图3,图4和图5比较了四个数据集上 K={5,10,20}prec@K, rec@K 以及 ndcg@K 的值. 从这三个图中可以发现:
AGR 实现的性能在所有方法中最优, 包括聚合分数的方法(CF-AVG, CF-LM, CF-RD) 和概率模型方法( PIT, COM)
– 尽管两个MovieLens数据集的群组信息是手动生成的, 而不是和MeetupPlancast一样自动生成的, 本文的模型仍然可以在随机的数据集上展示模型的灵活性
AGRMF-AVG模型与之前流行的概率模型相比有比较好的结果. MF-AVGMeetupPlancast 数据集上的性能优于 PITCOM, 但是差于 MovieLens-SimiMovieLens-Rand 数据集. 一个解释是: MF-AVG的简化设定无法对真实群组交互的复杂性进行建模

prec@5 度量值表明: AGRMeetip/Plancast/MovieLens-Simi以及MovieLens-Rand四个数据集上比最好的基线方法分别提高了 6.22\%, 17.91\%, 27.71\% 以及 21.36\% . 在 rec@5 的指标上, 也可以看到相同的提高. 一般说来, AGR的推荐效果稳定由于基线方法, 并且所有结果的 p 值小于 0.0001 .

值得注意的是: PIT的性能无法与其它基线模型相比. 一个可能的原因在于: Meetup 或者 Plancast 群组通常有大量的参与者, 他们中的大部分只参与了一些群组, 因此只有非常有限的历史数据, 因此 PIT学习到的用户影响并不可靠. PIT性能不好的另一个可能原因在于: PIT基于的假设无法适用于MovieLens数据的上下文: 因为 MovieLens用户在选择电影的时候通常是相互独立的, 在MovieLens的群组中并没有代表用户.

也可以观察到: AGRMeetup数据集上对基线模型的提升不如其它三个数据集上那么明显. 一个解释是: Meetup群组通常只有很少的地点选择, 而群组成员们倾向于选择他们最熟悉的地址, 使得向群组推荐地址变得相对容易. Meetup的用户在举办活动和选择地点之前会形成一个庞大的群组, 而其它服务(类似 Plancast ) 允许用户追随其它用户的事件日历和选择参加参加已有的活动. 因此, Plancast的群组可能会比Meetup的群组更加多样, 并且Plancast的活动地点的预测也比Meetup的难度大一些.

总的说理啊, AGR在一系列数据及上都实现了可观的推荐结果. 实验结果表明了在给定不同数据类型的前提下, AGR进行群组推荐的灵活性.

注意力机制的角色 (RQ 2)

作者们还进一步对AGRMF-AVG模型的性能进行的成对t检验表明: AGRMF-AVG相比持续提高了 5\% . AGR 使用注意力机制来计算权重, 而MF-AVG则为每个群组成员都分配了一个归一化的常数权重. 作者们在 top-K 推荐列表上 ( K\in [10, 100] ) 对两个模型进行了成对 t检验的性能比较来看AGR方法的效果是不是持续优于 MF-AVG的效果.

2 MF-AVGAGR 的性能比较

2比较了AGRMF-AVG的性能. 可以看到: MF-AVG的均值池化策略效果总是差于AGR的注意力机制. MF-AVGMovieLens-Rand数据上较优的性能是因为: MovieLens-Rand群组满足MF-AVG的假设: MovieLens-Rand中随机分组的用户比较可能对群组的最终决策起到同样的作用. 而所有测试中的 p 值都比较稳定, 表明AGR的性能持续稳定优于MF-AVG的性能.

注意力权重可视化: 正如上面提到的, AGR的一个优点在于: 该方法可以计算注意力权重用于进一步分析. 图6中可视化了随机选取的两个实验组中AGRPIT学习到的注意力权重. 由于与AGR相似, PIT中学习了每个用户个性化的影响权重, 而COM并没有学习每个用户个性化的影响权重, 因此, 在这个部分作者只比较了PITAGR模型的结果, 而没有将COM列入比较范围.


6 PITAGR学习到的注意力权重

6(a) 和 图 6(b) 中展示了两个随机选择/有相同用户no.4122("u_4122")的群组中 分别使用 PITAGR 模型计算得到的若干用户的注意力权重. 图6(a) 中展示了三个用户在第一个群组(群组 A) 中的个性化影响权重. 根据两个模型, 用户 no.4122在群组A中都有最高的权重, 因此, 会控制群组A的群组决策. 但是, 在图6(b) 中, PIT模型会继续假设用户 no.4122是群组 B中最有影响力的用户, 但是AGR却能够检测到群组B决策中其它比用户no.4122发挥更重要作用的用户. 由于PIT的个性化影响参数无法区分一个用户在不同群组中的角色, 因此可能会无法识别群组中有影响力的用户, 但是AGR的注意力机制能够获得在群组决策过程中动态的用户影响.

群组大小对模型性能的影响 (RQ 3)

为了研究不同群组大小对每个推荐方法性能的比较, 作者们在MeetupPlancast 群组上使用四个不同级别的群组大小( 1-5 个成员, 5-10 个成员, 11-15个成员 以及 16-20个成员) 进行了实验. 各种设置与前面部分描述的一致, 然后基于群组大小将群组划分到不同的分桶中. 由于群组成员大于20个的群组数量非常少, 在这个实验中, 作者排除了那些分组. 图 7中绘制了 rec@5ndcg@5 曲线的结果. 注意: 由于MovieLens-SimiMovieLens-Rand的群组大小是固定的, 作者就没有研究这两个数据集上不同群组大小对性能的影响了.


7 不同群组大小下的性能

7中表明: 在不同群组大小的设定下, AGR的性能仍然优于其它基线方法. 可以观察到如下现象:
– 当群组大小增加的时候, AGR的推荐效果提升更加明显, 在 Meetup数据集上, 在群组成员为11-1516-20的情况下, AGR比基线模型分别提高了 1.90\%2.93\%, 而这个数值在Plancast 数据集上分别为: 19.30\%20.97\%. 这就意味着AGR在群组大小越大的情况下实现的效果越好
– 在群组大小不大的情况下, CF方法的效果也不错, 因为群组中的低多样性促进了平滑的聚合. 而随着群组中成员人数的增多, 就需要相对复杂一些的方法(例如: 概率模型或者神经网络模型) 来生成充足的推荐.

结论

本文的作者希望使用一个深度学习的方法来解决群组推荐的问题, 从而提出了AGR(Attentive Group Recommendation, 注意力群组推荐)模型, 利用注意力机制来学习群组中每个用户的影响权重, 最后生成群组推荐. AGR的主要贡献在于: 一方面, 模型能够动态学习到每个给定用户在不同群组中不同的影响权重; 另一方面, 模型还考虑了群组中用户之间的交互. 因此, AGR能够对群组决策过程进行更好地建模. 据作者们所知, AGR是第一个将注意力机制运用于群组推荐的模型. 而在四个真实数据集上的拓展性实验结果表明: AGR的性能持续优于现有的群组推荐方法.

扩展方向: 可以考虑融合一些其它辅助信息到上下文中来训练注意力模型, 其中, 辅助信息可以是: 社交关系, 文本信息 (活动描述) 或者时间信息等.

参考文献

[1] Tran Dang Quang Vinh, Tuan-Anh Nguyen Pham, Gao Cong, and Xiao-LiLi. 2018. Attention-based Group Recommendation. 1,1 (July 2018), 15 pages.
[2] Linas Baltrunas,Tadas Makcinskas,and Francesco Ricci.2010. Group recommendations with rank aggregation and collaborative filtering. In Proceedings of the 2010 ACM Conference on Recommender Systems, RecSys 2010, Barcelona, Spain, September 26-30, 2010.119–126.
[3] Sihem Amer-Yahia, Senjuti Basu Roy, Ashish Chawla, Gautam Das, and Cong Yu. 2009. Group Recommendation: Semantics and Efficiency. PVLDB2,1(2009),754–765.
[4] Shunichi Seko, Takashi Yagi, Manabu Motegi, and Shin-yo Muto. 2011. Group recommendation using feature space representing behavioral tendency and power balance among members.InProceedings of the 2011 ACM Conference on Recommender Systems, RecSys 2011, Chicago, IL, USA, October 23-27, 2011.101–108.
[5] Lucas Augusto Montalvão Costa Carvalho and Hendrik Teixeira Macedo. 2013. Users’ satisfaction in recommendation systems for groups : an approach based on noncooperative games . In 22nd International World Wide Web Conference , WWW’13 ,Rio de Janeiro, Brazil, May 13-17, 2013, Companion Volume.951–958.
[6] Xingjie Liu, Yuan Tian, Mao Ye, and Wang-Chien Lee. 2012. Exploring personal impact for group recommendation. In 21st ACM International Conference on Information and Knowledge Management, CIKM’12, Maui, HI, USA, October 29 – November 02, 2012.674–683.
[7] Quan Yuan, Gao Cong, and Chin-Yew Lin. 2014. COM: a generative model for group recommendation. In The 20th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, KDD ’14, New York, NY, USA – August 24 – 27, 2014.163–172.
[8] Jagadeesh Gorla, Neal Lathia, Stephen Robertson, and Jun Wang. 2013. Probabilistic group recommendation via information matching. In 22nd International World Wide Web Conference, WWW ’13, Rio de Janeiro, Brazil, May 13-17, 2013.495–504.
[9] Liang Hu, Jian Cao, Guandong Xu, Longbing Cao, Zhiping Gu, and Wei Cao. 2014. Deep Modeling of Group Preferences for Group-Based Recommendation. In Proceedings of the Twenty-Eighth AAAI Conference on Artificial Intelligence, July 27 -31, 2014, Québec City, Québec, Canada.1861–1867.

打赏

mickey

记录生活,写给几十年后的自己。