论文下载地址: https://doi.org/10.1145/3289600.3290989
发表期刊:WSDN
Publish time: 2019
作者及单位:
数据集: 正文中的介绍
代码:
其他:
其他人写的文章
简要概括创新点: (1)Session几乎必用RNN(其他文章也尝试LSTM,GRU…)
(2)不同的Session, user current interest不同(dynamic),friends’ influence也不同(context-dependent social influences),上Attention。
(3)朋友的影响也分短期(friends’ short-term preferences)和长期(long-term)的,拼接后过ReLu
- We propose an approach to model both users’ session-based interests as well as dynamic social influences. (我们提出了一种方法来建模 用户基于会话的兴趣 以及 动态的社会影响 。)
- That is, which subset of a user’s friends influence her (the influencers) according to her current session. (也就是说,根据用户的当前会话,哪个用户的朋友子集会影响她(影响者)。)
- Our recommendation model is based on dynamic-graph-attention networks. (我们的推荐模型基于 动态图注意网络 。)
- Our approach first models user behaviors within a session using a recurrent neural network (RNN) [7]. (我们的方法首先使用 递归神经网络(RNN) 对 会话中 的 用户行为 进行建模[7]。)
- According to user’s current interests—captured by the hidden representation of the RNN—we capture the influences of friends using the graph-attention network [33]. (根据 RNN的隐藏表示 捕捉到的 用户当前兴趣 ,我们使用 图注意网络 捕捉 朋友的影响 [33]。)
- To provide session-level recommendations, we distinguish the model of friends’ short-term preferences from that of the long-term ones. (为了提供会话级建议,我们将朋友的 短期偏好模型 与 长期偏好 模型区分开来。)
- The influence of each friend, given the user’s current interests, is then determined automatically using an attention mechanism [1, 40]. (然后,根据用户当前的兴趣,使用 注意机制 自动确定 每个朋友的影响[1,40]。)
- To summarize, we make the following contributions: (总之,我们做出以下贡献:)
- We propose to study both dynamic user interests and context-dependent social influences for the recommendation in online communities. (我们建议研究在线社区中推荐的 动态用户兴趣 和 上下文相关的社会影响 。)
- We propose a novel recommendation approach based on dynamic-graph-attention networks for modeling both dynamic user interests and context-dependent social influences. The approach can effectively scale to large data sets. (我们提出了一种 基于动态图注意网络 的推荐方法,用于建模 动态用户兴趣 和 下文相关的社会影响。该方法可以有效地扩展到大型数据集。)
- We propose a model based on graph convolutional networks for session-based social recommendation in online communities. (我们提出了一个基于 图卷积网络 的在线社区 基于会话 的社会推荐模型。)
- Our model first learns individual user representations by modeling the users’ current interests. (我们的模型首先通过对 用户当前兴趣 的建模来学习 单个用户的表示)
- Each user’s representation is then aggregated with her friends’ representations using a graph convolutional networks with a novel attention mechanism. (然后,每个 用户的表示 与 她的朋友的表示 使用一个带有新颖 注意机制 的 图卷积网络 进行聚合。)
- The combined representation along with the user’s original representation is then used to form item recommendations. (然后,将 组合表示 与 用户的原始表示 一起用于形成项目推荐。)
- DGREC is composed of four modules (Figure 2). (DGREC由四个模块组成(图2)。)
- (1) First (§4.1), a recurrent neural network (RNN) [7] models the sequence of items consumed in the (target) user’s current session. (首先(§4.1),递归神经网络(RNN)[7]对(目标)用户当前会话中消费的项目序列进行建模。)
- (2) Her friends’ interests are modeled using a combination of their short- and long-term preferences (§4.2). (她的朋友的兴趣是通过结合他们的短期和长期偏好来建模的(§4.2))
- The short-term preferences, or items in their most recent session, are also encoded using an RNN. (短期偏好或最近会话中的项目也使用RNN编码。)
- Friends’ long-term preferences are encoded with a learned individual embedding. (朋友的长期偏好是通过一个学习过的个体嵌入编码的。)
- (3) The model then combines the representation of the current user with the representations of her friends using a graph-attention network (§4.3). (然后,该模型使用图形注意力网络(第4.3节)将 当前用户的表示 与她的 朋友的表示 结合起来。)
- This is a key part of our model and contribution: our proposed mechanism learns to weigh the influence of each friend based on the user’s current interests. (这是我们的模型和贡献的关键部分:我们提出的机制学习根据用户当前的兴趣权衡每个朋友的影响。)
- (4) At the final step (§4.4), the model produces recommendations by combining a user’s current preferences with her (context-dependent) social influences. (在最后一步(§4.4),该模型通过将用户的当前偏好与她 (依赖于上下文的)社会影响 相结合来产生建议。)
- 细节
- 用了Adam dropout
(1) Online communities such as Facebook and Twitter are enormously popular and have become an essential part of the daily life of many of their users. Through these platforms, users can discover and create information that others will then consume. In that context, recommending relevant information to users becomes critical for viability. However, recommendation in online communities is a challenging problem: (Facebook和Twitter等在线社区非常受欢迎,已成为许多用户日常生活的重要组成部分。通过这些平台,用户可以发现并创建其他人将要使用的信息。在这种情况下,向用户推荐相关信息对于生存能力至关重要。然而,在线社区中的推荐是一个具有挑战性的问题:)
(2) We propose a recommender system for online communities based on a dynamic-graph-attention neural network. (我们提出了一个 基于动态图注意神经网络 的 在线社区 推荐系统。)
• Information systems → Social recommendation; • Computing methodologies → Ranking; Learning latent representations;
Dynamic interests; social network; graph convolutional networks; session-based recommendation
(1) Online social communities are an essential part of today’s online experience. Platforms such as Facebook, Twitter, and Douban enable users to create and share information as well as consume the information created by others. Recommender systems for these platforms are therefore critical to surface information of interest to users and to improve long-term user engagement. However, online communities come with extra challenges for recommender systems. (在线社交社区是当今在线体验的重要组成部分。Facebook、Twitter和豆瓣等平台使用户能够创建和共享信息,以及消费他人创建的信息。因此,这些平台的推荐系统对于用户感兴趣的表面信息和提高长期用户参与度至关重要。然而,在线社区给推荐系统带来了额外的挑战。)
(2) First, user interests are dynamic by nature. A user may be interested in sports items for a period of time and then search for new music groups. (首先,用户兴趣本质上是动态的。用户可能会对体育项目感兴趣一段时间,然后搜索新的音乐组。)
(2) Motivating Example. Figure 1 presents the behavior of Alice’s and her friends’ in an online community. Behaviors are described by a sequence of actions (e.g., item clicks). To capture users’ dynamic interests, their actions are segmented into sub-sequences denoted as sessions. We are therefore interested in session-based recommendations [28]: within each session, we recommend the next item Alice should consume based on the items in the current session she has consumed so far. Figure 1 presents two sessions: session (a) and (b). In addition, the items consumed by Alice’s friends are also available. We would like to utilize them for better recommendations. We are thus in a session-based social recommendation setting. (激励性的例子。图1展示了Alice和她的朋友在一个在线社区中的行为。行为通过一系列动作(例如,点击项目)来描述。为了捕捉用户的动态兴趣,他们的动作被分割成子序列,表示为会话。 因此,我们对基于会话的建议感兴趣[28]:在每个会话中,我们根据Alice到目前为止在当前会话中消费的项目,推荐Alice应该消费的下一个项目。图1显示了两个会话:会话(a)和会话(b)。此外,爱丽丝的朋友们消费的物品也可以买到。我们希望利用它们提出更好的建议。因此,我们处于基于会话的社会推荐环境中。)
(3) In session (a), Alice browses sports items. Two of her friends: Bob and Eva, are notorious sports fans (long-term interests), and they are browsing sports’ items recently (short-term interests). Considering both facts, Alice may be influenced by the two and, e.g., decides to learn more about Ping Pong next. In session (b), Alice is interested in “literature & art” items. The situation is different with session (a) since none of her friends have consumed such items recently. But David is generally interested in this topic (long-term interests).In this case, it would make sense for Alice to be influenced by David, and say, be recommended a book that David enjoyed. These examples show how a user’s current interests combining with the (short- and long-term) interests of different friends’ provide session-based social recommendations. In this paper, we present a recommendation model based on both. (在会话(a)中,爱丽丝浏览运动项目。她的两个朋友:鲍勃和伊娃是臭名昭著的体育迷(长期兴趣),最近他们在浏览体育项目(短期兴趣)。考虑到这两个事实,爱丽丝可能会受到这两个因素的影响,例如,她决定下一步学习更多关于乒乓球的知识。在会话(b)中,爱丽丝对“文学与艺术”项目感兴趣。session(a)的情况有所不同,因为她的朋友最近都没有消费过此类物品。但是大卫通常对这个话题感兴趣(长期兴趣)。在这种情况下,爱丽丝受大卫的影响是有道理的,比如说,被推荐读一本大卫喜欢的书。这些例子展示了用户当前的兴趣与不同朋友的(短期和长期)兴趣相结合如何提供基于会话的社交推荐。 在本文中,我们提出了一个基于两者的推荐模型。)
(4) The current recommendation literature has modeled either users’ dynamic interests or their social influences, but, as far as we know, has never combined both (like in the example above). (目前的推荐文献要么模拟了用户的动态兴趣,要么模拟了他们的社会影响,但据我们所知,从未将两者结合起来(如上面的例子)。)
(5) We propose an approach to model both users’ session-based interests as well as dynamic social influences. (我们提出了一种方法来建模 用户基于会话的兴趣 以及 动态的社会影响 。)
(6) We conduct extensive experiments on data sets collected from several online communities (Douban, Delicious, and Yelp). Our proposed approach outperforms the well-known competitive baselines by modeling both users’ dynamic behaviors and dynamic social influences. (我们对从几个在线社区(Douban、Delicious和Yelp)收集的数据集进行了广泛的实验。通过对用户的动态行为和动态社会影响进行建模,我们提出的方法优于著名的竞争基线。)
(7) To summarize, we make the following contributions: (总之,我们做出以下贡献:)
(8) Organization. §2 discusses related works. In §3 we give a formal definition of the session-based social recommendation problem. Our session-based social recommendation approach is described in §4. §5 presents the experimental results, followed by concluding remarks in §6. (组织§2讨论了相关工作。在§3中,我们给出了基于会话的社会推荐问题的正式定义。我们基于会话的社会推荐方法如§4所述。第5节介绍了实验结果,然后是第6节中的结束语。)
(1) Modeling user interests that change over time has already received some attention [5,19,39]. Most of these models are based on (Gaussian) matrix factorization [26]. (对用户兴趣随时间变化的建模已经受到了一些关注[5,19,39]。这些模型大多基于(高斯)矩阵分解 [26]。)
However, these approaches assume that the interest of users changes slowly and smoothly over long-term horizons, typically on the order of months or years. (然而,这些方法假设用户的兴趣在长期范围内缓慢而平稳地变化,通常是几个月或几年。)
(1) Graph convolutional networks (GCNs) inherits convolutional neural networks (CNNs). CNNs have achieved great success in computer vision and several other applications. (图卷积网络(GCN)继承了卷积神经网络(CNN)。CNN在计算机视觉和其他一些应用方面取得了巨大成功)
(2) We propose a dynamic-graph-attention network. Compared to previous work, (我们提出了一种动态图注意网络。与之前的工作相比,)
(1) Let U U U denote the set of users and I I I be the set of items.
Each user u u u is associated with a set of sessions by the time step T T T, I T u = { S → 1 u , S → 2 u , . . . , S → T u } I^u_T = \{\overrightarrow{S}^u_1, \overrightarrow{S}^u_2, .. ., \overrightarrow{S}^u_T\} ITu={S1u,S2u,...,STu},
Within each session, S → t u \overrightarrow{S}^u_t Stu consists of a sequence of user behaviors { i t , 1 u , i t , 2 u , . . . , i t , N u , t u } \{i^u_{t,1},i^u_{t,2}, ..., i^u_{t, N_{u,t}}\} {it,1u,it,2u,...,it,Nu,tu},
For each user u u u, given a new session S → T + 1 u = { i T + 1 , 1 u , . . . , i T + 1 , n u } \overrightarrow{S}^u_{T+1} = \{i^u_{T+1,1}, ..., i^u_{T+1,n}\} ST+1u={iT+1,1u,...,iT+1,nu},
the goal of session-based recommendation is to recommend a set of items from I I I that the user is likely to be interested in during the next step n + 1 n + 1 n+1, i.e., i T + 1 , n + 1 u i^u_{T+1,n+1} iT+1,n+1u. (基于会话的推荐的目标是从 I I I中推荐一组用户在下一步 n + 1 n+1 n+1中可能感兴趣的项目)
(2) In online communities, users’ interests are not only correlated to their historical behaviors, but also commonly influenced by their friends. (在网络社区中,用户的兴趣不仅与他们的历史行为相关,而且通常受到朋友的影响。)
(3) To provide an effective recommendation to users in online communities, we propose to model both users’ dynamic interests and context-dependent social influences. We define the resulting problem as follows: (为了向在线社区中的用户提供有效的推荐,我们建议对 用户的动态兴趣 和 上下文相关的社会影响 进行建模。 我们将由此产生的问题定义如下:)
(1) As is discussed previously, users are not only guided by their current preferences but also by their friends’ preferences. (如前所述,用户不仅受当前偏好的引导,还受朋友偏好的引导。)
We propose a novel dynamic graph attention model Dynamic Graph Recommendation (DGREC) which models both types of preferences. (我们提出了一种新的动态图注意模型 动态图推荐(DGREC),它对这两种偏好都进行了建模。)
(2) DGREC is composed of four modules (Figure 2). (DGREC由四个模块组成(图2)。)
(1) Friends’ long-term preferences reflect their average interests . Since long-term preferences are not time-sensitive, we use a single vector to represent them. Formally, (朋友的长期偏好反映了他们的平均兴趣。由于长期偏好对时间不敏感,我们使用单个向量来表示它们。正式地)
where friend k k k’s long-term preference s k l s^l_k skl is the k t h k_{th} kth row of the user embedding matrix W u W_u Wu (其中,朋友 k k k的长期偏好 s k l s^l_k skl是用户嵌入矩阵 W u W_u Wu的 k t h k_{th} kth行)
(2) Finally, we concatenate friends’ short- and long-term preferences using a non-linear transformation:
(1) We described how we obtain representations of target user (§ 4.1) and her friends (§ 4.2). (我们描述了如何获得目标用户(§4.1)和她的朋友(§4.2)的表示。)
(2) We obtain this combined representation using a novel graph attention network. (我们使用一种新的图形注意网络来获得这种组合表示。)
(3) Below we detail how we design the node features as well as the accompanying graph-attention mechanism. (下面我们将详细介绍如何设计节点功能以及相应的图形注意机制。)
(1) With the node features defined as above, we then pass messages (features) to combine friends’ and the target user’s interests. (通过上面定义的节点特性,我们可以 传递消息(特性) 来结合朋友和目标用户的兴趣。)
(2) Kipf and Welling [18] introduce graph convolutional networks for semi-supervised node representation learning. In these networks, the convolutional layers “pass” the information between nodes. The number of layers L L L of the networks corresponds to the number of iterations of message passing. (Kipf和Welling[18]介绍了用于 半监督节点表示学习 的 图卷积网络。在这些网络中,卷积层在节点之间“传递”信息。网络的层数 L L L对应于消息传递的迭代次数。)
(3) The fixed symmetric normalized Laplacian is widely used as a propagation strategy in existing graph convolutional networks [6, 18]. 在现有的图卷积网络中,固定对称归一化拉普拉斯算子 被广泛用作一种 传播策略 [6,18]。()
Intuitively, α u k ( l ) \alpha^{(l)}_{uk} αuk(l) is the level of influence or weight of friend k k k on user u u u (conditioned on the current context h u ( l ) h^{(l)}_u hu(l)). (直观地说, α u k ( l ) \alpha^{(l)}_{uk} αuk(l)是朋友 k k k对用户 u u u的影响程度或权重(取决于当前上下文 h u ( l ) h^{(l)}_u hu(l))。)
Note that we also include a self-connection edge to preserve a user’s revealed interests. α u ( l ) \alpha^{(l)}_u αu(l):then provide the weights to combine the features: (请注意,我们还包括一个自我连接边缘,以保护用户的公开兴趣 α u ( l ) \alpha^{(l)}_u αu(l):然后提供权重以组合特征:)
where h ~ u ( l ) \tilde{h}^{(l)}_u h~u(l) is a mixture of user u u u’s friends’ interests at layer l l l, followed by a non-linear transformation: h u ( l + 1 ) = R e L U ( W ( l ) h ~ u ( l ) ) h^{(l+1)}_u = ReLU(W^{(l)} \tilde{h}^{(l)}_u) hu(l+1)=ReLU(W(l)h~u(l)). (其中 h ~ u ( l ) \tilde{h}^{(l)}_u h~u(l)是用户 u u u的朋友在层 l l l的兴趣的混合,然后是非线性转换: h u ( l + 1 ) = R e L U ( W ( l ) h ~ u ( l ) ) h^{(l+1)}_u = ReLU(W^{(l)} \tilde{h}^{(l)}_u) hu(l+1)=ReLU(W(l)h~u(l))。)
(1) Since a user’s interest depends on both her recent behaviors and social influences, her final representation is obtained by combining them using a fully-connected layer: (由于用户的兴趣取决于其最近的行为和社会影响,因此通过使用一个完全连接的层将它们结合起来,可以获得用户的最终表现:)
(2) We then obtain the probability that the next item will be y y y using a softmax function: (然后,我们使用softmax函数获得下一项为 y y y的概率:)
(3) We also tested our model with two popular context-independent propagation strategies that do not use an attention mechanism: (我们还用两种流行的不使用注意机制的上下文无关传播策略测试了我们的模型)
(1) We study all models using data collected from three well-known online communities. Descriptive statistics for all data sets are in Table 1. (我们使用从三个著名在线社区收集的数据研究所有模型。所有数据集的描述性统计数据见表1。)
(2) Douban. A popular site on which users can review movies, music, and books they consume. (豆瓣。一个受欢迎的网站,用户可以在上面查看他们消费的电影、音乐和书籍。)
(2) Delicious. An online bookmarking system where users can store, share, and discover web bookmarks and assign them a variety of semantic tags. (美味的一个在线书签系统,用户可以在其中存储、共享和发现网络书签,并为它们分配各种语义标记。)
(3) Yelp. An online review system where users review local businesses (e.g., restaurants and shops). (一个在线评价系统,用户可以在该系统中评价当地企业(如餐厅和商店))
(4) We also tried different segmentation strategies. (我们还尝试了不同的细分策略。)
(1) We compare DGREC to three classes of recommenders:
ItemKNN [22] (A): inspired by the classic KNN model, it looks for items that are similar to items liked by a user in the past. (受经典KNN模型的启发,它寻找与用户过去喜欢的物品相似的物品。)
BPR-MF [27] (A): matrix factorization (MF) technique trained using a ranking objective as opposed to a regression objective. (矩阵分解(MF)技术使用排序目标而不是回归目标进行训练。)
SoReg [24] (B): uses the social network to regularize the latent user factors of matrix factorization. (使用社交网络来正则化矩阵分解的 潜在用户因素。)
SBPR [41] (B): an approach for social recommendations based on BPR-MF. The social network is used to provide additional training samples for matrix factorization. (基于BPR-MF的社会推荐方法。社交网络用于为矩阵分解提供额外的训练样本。)
TranSIV [38] (B): uses shared latent factors to transfer the learned information from the social domain to the recommendation domain. (使用共享的潜在因素将学习到的信息从社交领域转移到推荐领域。)
RNN-Session [13] (C ): recent state-of-the-art approach that uses recurrent neural networks for session-based recommendations. (最近最先进的方法,使用 循环神经网络 进行 基于会话 的推荐。)
NARM [21] (C ): a hybrid model of both session-level preferences and the user’s “main purpose”, where the main purpose is obtained via attending on previous behaviors within the session. ( 会话级偏好 和 用户“主要目的” 的混合模型,其中主要目的是通过参与会话中以前的行为来实现的。)
(1) We evaluate all models with two widely used ranking-based metrics: (我们使用两个广泛使用的基于排名的指标评估所有模型:)
(2) Recall@K measures the proportion of the top-K recommended items that are in the evaluation set. (测量评估集中top-K推荐项目的比例。)
(3) NDCG is a standard ranking metric. (NDCG是一个标准的排名指标。)
To justify and gain further insights into the specifics of DGREC’s architecture, we now study and compare variations of our model. (为了证明DGREC架构的合理性并进一步深入了解其细节,我们现在研究并比较我们模型的各种变化。)
(1) DGREC aggregates friends’ interests using a multi-layer graph convolutional network. (DGREC使用多层图卷积网络聚合朋友的兴趣。)
More convolutional layers will yield influences from higher-order friends. (更多的卷积层将产生来自高阶朋友的影响。)
In our study so far we have used two-layer graph convolutional networks. (到目前为止,在我们的研究中,我们使用了两层图卷积网络。)
To validate this choice we compare the performance to one- and three-layer networks but maintain the number of selected friends to 10 and 5 in the first and third layer, respectively. (为了验证这一选择,我们将性能与一层和三层网络进行比较,但在第一层和第三层,选择的朋友数分别保持在10和5。)
Table 4 shows a significant decline in performance when using a single layer. This implies that the interests of friends’ friends (obtained by 2 layers) is important for recommendations. (表4显示了使用单层时性能的显著下降。这意味着朋友的朋友的兴趣(通过两层获得)对于推荐很重要。)
(2) Next, we test our model using three convolutional layers to explore the influences of even higher-order friends. The influence of the third layer on the performance is small. (接下来,我们使用三个卷积层来测试我们的模型,以探索更高阶朋友的影响。第三层对性能的影响很小。)
(1) DGREC uses an attention mechanism to weigh the contribution of different friends based on a user’s current session. (DGREC使用一种注意力机制,根据用户当前会话来衡量不同朋友的贡献。)
(2) We hypothesized that while friends have varying interests, user session typically only explores a subset of these interests. As a consequence, for a target user, different subsets of her friends should be relied upon in different situations. We now explore the results of the attention learned by our model. (我们假设,虽然朋友有不同的兴趣,但用户会话通常只探索这些兴趣的一个子集。因此,对于目标用户,在不同的情况下应该依赖其朋友的不同子集。现在,我们探索通过我们的模型学习注意力的结果。)
(3) First, we randomly select a Douban user from those who have at least 5 test sessions as well as 5 friends and plot her attention weights (Eq. 6) within and across session(s) in Figure 5. (首先,我们从至少有5次测试的人和5个朋友中随机选择一个豆瓣用户,并在图5中绘制出她在测试过程中的注意力权重(等式6)。)
图5:不同时段(左)和一个时段(右)内注意力权重的热图。对于这两个图,y轴代表目标用户的朋友。x轴代表(1)左侧目标用户的八个会话,以及(2)右侧会话#7中的项目顺序。