Graph Neural Network
<2부> Recommendation 개요
https://arxiv.org/pdf/2011.02260.pdf
Graph Neural Network 에 기반한 추천 알고리즘 Survey 논문 (2021년) 을 기반으로 Overview
Graph construction, Aggregation, Update, Final Node Representation 관점에서 각각의 연구들은 어떤
문제를 제기하고, 어떤 해결 방법들을 제시하였는지 정리. (기본 개념은 자료 Part1 참조)
Original Graph Graph Construction Aggregation
sum, avg ...
Update & Application
분류 등
기본 개념 정의
Graph Neural Net 기반 추천 알고리즘 카테고리 정의
그래서 오늘 설명의 목차는 아래와 같음
1.General Recommendation
1.1 Graph Construction
1.2 Neighbor Aggregation
1.3 Information Update
1.4 Final Node Representation
1.5 Social Network Enhanced
1.6 Knowledge Enhanced
2. Sequential Recommendation
3. Other Recommendations
1. GENERAL RECOMMENDATION
[GENERAL RECOMMENDATION]
General recommendation aims to model user preferences
by leveraging user-item interaction data, thus provide a list
of recommendations reflecting the static long-term
interests of each user. In addition to the information of
user-item interactions, auxiliary information (if available) is
often leveraged to enhance the user/item representation.
Two typical types of auxiliary information are social
network and knowledge graph. It is worth noting that
different types of information have different characteristics
of graph structures. Specifically, the user-item bipartite
graph has two types of nodes and the neighbors of each
node are homogeneous; social network is a homogeneous
graph; knowledge graph has various entities and relations.
Considering that different characteristics of graph structure
require corresponding GNN strategies, we categorize them
by the type of information used. In this section, we
summarize the overall framework, introduce how existing
works deal with the main issues under each subcategory,
and discuss both their advantages and possible limitations.
For convenience, we briefly summarize the works in table 2
기본적으로 Central Node를 중심으로 몇 Hop 을 이웃으로 정의할 것인지, 너무 많은 경우 Sampling 을
어떻게 할 것인지, 정보가 부족한 경우에는 Multi-hop 의 정보를 반영하여 활용할 것인지 등에 대한
연구가 진행되고 있다.
Original Graph Graph Construction Aggregation
sum, avg ...
Update & Application
분류 등
1-1. GENERAL RECOMMENDATION - Graph Construction
1-1. GENERAL RECOMMENDATION - Graph Construction
두 가지 문제를 제시 함. Graph 구성시 정보를 취합할 이웃 노드가 너무 부족할 경우와 너무 많은 경우.
(1) 주변의 정보가 너무 적은 경우 : 새로운 노드를 추가하거나, 가상의 노드를 만들어서 해결. 예를들어
Disentangled Graph Collaborative Filtering 연구에서는 u1 -> i1 -> u2 와 같이 Multi Hop 의 연관 정보를
활용하여 Embedding 을 강화하고자 하였다. (Having used the first-hop neighbors, we further stack
more graph disentangling layers to gather the influential signals from higher-order neighbors. In
particular, such connectivities carry rich semantics. For instance, the second-order connectivity like u1
→ i2 → u3 suggests the intent similarity between u1 and u3 when consuming i2)
Xiang Wang, Hongye Jin, An Zhang, Xiangnan He, Tong Xu, and Tat-Seng Chua. 2020. Disentangled Graph Collaborative Filtering. In Proceedings of
the 43rd International ACM SIGIR Conference on Research and Development in Information Retrieval (Virtual Event, China) (SIGIR ’20). Association
for Computing Machinery, New York, NY, USA, 1001–1010. https://doi.org/10.1145/3397271.3401137
1-1. GENERAL RECOMMENDATION - Graph Construction
(2) 주변의 정보가 너무 많은 경우 : sampling strategies are proposed to make GNN efficient and
scalable to large-scale graph based recommendation tasks. PinSage [145] designs a random-walk
based sampling method to obtain the fixed size of neighborhoods with highest visit counts. In
this way, those nodes that are not directly adjacent to the central node may also become its neighbors.
Rex Ying, Ruining He, Kaifeng Chen, Pong Eksombatchai, William L. Hamilton, and Jure Leskovec. 2018. Graph Convolutional Neural Networks for
Web-Scale Recommender Systems. In Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining (London,
United Kingdom) (KDD ’18). Association for Computing Machinery, New York, NY, USA, 974–983. https://doi.org/10.1145/3219819.3219890
1-2. GENERAL RECOMMENDATION - Neighbor Aggregation
Central Node 의 정보를 Update 하기 위하여 주변의 정보를 모으는데, 주변 노드의 정보를 그냥 평균처리
할 것인지, 전부 Sum 할 것인지, Attention 등을 활용하여 중요도를 반영할 것 인지 등에 대한 연구
Original Graph Graph Construction Aggregation
sum, avg ...
Update & Application
분류 등
1-2. GENERAL RECOMMENDATION - Neighbor Aggregation
각각의 논문들에서 Neighbor Aggregation 에 어떤 방법을 사용했는지, 크게 3가지 + @ (PinSage
조회수)
정도로 나누어 지는 것을 보임.
The aggregation step is of vital importance of information propagation for the graph structure, which
decides how much neighbors’ information should be propagated. Mean-pooling is one of the most
straightforward aggregation operation [98, 101, 104, 151, 152], which treats neighbors equally,
Mean-pooling is easy for implementation but might be inappropriate when the importance of neighbors is
significantly different. Following the traditional GCN, some works employ “degree normalization” [10, 31,
134], which assigns weights to nodes based on the graph structure,
Considering that the interacted items are not equally representative to reflect user preferences,
researchers employ attention mechanism to differentiate the importance of neighbors [123]. Motivated by
common sense that the embeddings of items in line with the user’s interests should be passed more to the
user (analogously for the items), NGCF [119] employs element-wise product to augment the items’
features the user cares about or the users’ preferences for features the item
[Mean Pooling] [Degree Normalization] [Attention Mechanism]
1-2. GENERAL RECOMMENDATION - Information update
Central Node 의 이웃 노드를 정의하고, 이웃 노드의 정보를 모았으면, 정의한 Central Node 에 정보를
Update 해야 함. 관련하여, 그냥 교체, Update 시 기존 Central Node 정보 반영, Update 시 기존의 Central
Node 정보와 Aggregated 된 정보를 Concat 하는 형태 등이 연구에 사용되고 있음
Original Graph Graph Construction Aggregation
sum, avg ...
Update & Application
분류 등
1-3. GENERAL RECOMMENDATION - Information update
With the aggregated neighbor representation and the central node representation, how to update the
representation of the central node is essential for iterative information propagation. Some works [31,
104, 121, 151] use the aggregated representation of neighbors as the new central node representation,
i.e, discard the original information of the user or item node completely, which might overlook the
intrinsic user preference or the intrinsic item property. The others take both the central node itself and its
neighborhood message into consideration to update node representations. Some studies combines
these two representations linearly with sum-pooling or mean-pooling operation [97, 119, 134, 152].
Inspired by the GraphSage [28], some works [55, 98, 145] adopt concatenation function with nonlinear
transformation to integrate these two representations as follows:
h (𝑙+1) 𝑢 = 𝜎 W(𝑙) · (h (𝑙) 𝑢 ⊕ n (𝑙) 𝑢 ) + b (𝑙) ,
where 𝜎 denotes the activation function, e.g., ReLU, LeakyReLU, and sigmoid. Compared to linear
combination, concatenation operation with feature transformation allows more complex feature
interaction. Note that some works [10, 31] observe that nonlinear activation contributes little to the
overall performance, and they simplify the update operation by removing the non-linearities, thereby
retaining or even improving performance and increasing computational efficiency.
(a)완전히 central node를 Replace, (b) 기존 central node를 반영하여 update, (c) (a)/(b) 두가지를
Sum/Mean
하는 형태로 사용, (d) Central Node와 Neighbor 를 Concat 하여 사용하는 형태 정도로 요약됨.
추가적으로 어떤 연구에서는 non-linear Function 을 제거하는 연구도 진행됨(성능 기여도 낮다고 함)
1-4. GENERAL RECOMMENDATION - Final Node Representation
최종적으로 Update 된 Central Node 정보를 사용하여 예측/분류 등에 사용하기 위한 단계로 그냥 Central
Node 정보만 사용할지 연결된 주변 노드의 정보를 사용할지 등에 대한 연구가 진행 되었다.
Original Graph Graph Construction Aggregation
sum, avg ...
Update & Application
분류 등
1-4. GENERAL RECOMMENDATION - Final Node Representation
Central Node 를 Embedding 하고 나면, 해당 Vector 를 사용하여 예측,분류,클러스터링 등 다양한 응용을
하게 되는데, 마지막 노드의 Embedding 이 관련된 모든 Node 의 정보를 포함하고 있다는 보장이 없기
때문에
아래와 같은 몇 가지 트릭을 사용한다. (a) 관련된 Node 들을 Concat , (b) Mean, (c) Sum, (d) Weighted
Mean
기본적으로 관련된 노드를 얼마나 많이 사용할 것인가에 대한 문제는 over smoothing 문제와 연결되기
때문에 적절한 조정이 필요함
• Concatenation is one of the most widely adopted strategies [10, 42, 119, 152, 159],
• Some works employ mean-pooling operation [72],
• Some integrate the representations of all layers with sum-pooling [121],
• Either mean-pooling or sum-pooling integration treats the representations from different layers equally.
Some integrate the representations of all layers with the layer-wise weighted pooling [31, 31, 130],
1-5. GENERAL RECOMMENDATION - Social network enhanced
지금까지는 User 와 ITEM 간의 관계만을 고려하였다면, USER 간의 관계를 추가적으로 반영하여 주는
것이
추천에 있어서 더 좋은 성능을 낼 수 있다고 한다.
...
...
...
USER
ITEM
u1
Social
Network
u2
i1 i2
+
1-5. GENERAL RECOMMENDATION - Social network enhanced
With the emergence of online social networks, social recommender systems have been proposed to utilize
each user’s local neighbors’ preferences to enhance user modeling [25, 40, 74, 75, 132]. All these works
assume users with social relationship should have similar representations based on the social influence
theory that connected people would influence each other (인접한 User간에는 구매에 영향을 준다라는
가정에 기반함) Social 정보를 추천에 반영하는데 있어 크게 해결해야 하는 두 가지 문제가 있음
Q1) Influence of Friends. Do friends have equal influence? If not, how to distinguish the influence
of different friends? (친구가 있는데? 친구들이 모두 같은 영향도를 갖는가?)
Q2) Preference Integration. Users are involved in two types of relationships,
i.e., social relationship with their friends and interactions with items. How to integrate the user
representations from the social influence perspective and interaction behavior?
(Social 정보와 추천 정보를 어떻게 조합하지?)
1-5. GENERAL RECOMMENDATION - Social network enhanced
Q1) Influence of Friends. Do friends have equal influence? If not, how to distinguish the influence of different
friends? (친구가 있는데? 친구들이 모두 같은 영향도를 갖는가?)
Influence of friends. Generally, social graph only contains information about whether the users are friends or
not, but the strength of social ties is usually unknown. To propagate the information of friends, it is essential to
decide the influence of friends. DiffNet [132] treats the influence of friends equally by leveraging mean-pooling
operation(그냥 동일하게 해석). However, the assumption of equal influence is not in accordance with the actual
situation, and the influence of a user is unsuitable to be simply determined by the number of her friends. Indeed,
users are more likely to be influenced by the friends with strong social ties or similar preferences. Therefore,
most works [17, 131, 135] differentiate the influence of neighbors by measuring the relationship between the
linked friends with attention mechanism(Attention 을 사용). Compared to the mean-pooling operation, the
attention mechanism boosts the overall performance, which further valids the assumption that different friends
have different influence power. Moreover, a recent work, named ESRF [147], argues that social relations are not
always reliable. The unreliability of social information lies in two aspects: on the one hand, the users with explicit
social connections might have no influence power; on the other hand, the obtained social relationships might be
incomplete. Considering that indiscriminately incorporating unreliable social relationships into recommendation
may lead to poor performance, ESRP leverages the autoencoder mechanism to modify the observed social
relationships by filtering irrelevant relationships and investigating the new neighbors. (노출된 관계로 부족해서
새로운 관계를 찾기 위해 AutoEncoder를 사용)
1-5. GENERAL RECOMMENDATION - Social network enhanced
Q2) Preference Integration. Users are involved in two types of relationships,
i.e., social relationship with their friends and interactions with items. How to integrate the user
representations from the social influence perspective and interaction behavior?
(Social 정보와 추천 정보를 어떻게 조합하지?)
[별도 구성시의 장점]
The advantage of the first strategy lies in two aspects: on the one
hand, we can differentiate the depth of diffusion process of two
networks since they are treated separately(학습 프로세스를 분리 할
수 있다); on the other hand, any advanced method for user-item
bipartite graph can be directly applied(바로 적용이 가능하다. ps.
Social Network는 기본적으로 그래프로 표현 가능하기도 함), and for
social network, a homogeneous graph, GNN techniques are extremely
suitable for simulating the influence process since they are originally
proposed for homogeneous graphs.
1-5. GENERAL RECOMMENDATION - Social network enhanced
Q2) Preference Integration. Users are involved in two types of relationships,
i.e., social relationship with their friends and interactions with items. How to integrate the user
representations from the social influence perspective and interaction behavior?
(Social 정보와 추천 정보를 어떻게 조합하지?)
[통합 그래프 구성]
The advantage of integrating the two graphs into one unified network is
that both the higher order social influence diffusion in the social network
and interest diffusion in the user-item bipartite graph can be simulated in
a unified model,(하나의 그래프에서 두 가지 정보를 종합적으로 해석할
수 있다는 것이 장점) and these two kinds of information simultaneously
reflect users’ preferences. At each layer, DiffNet++ [131] designs a
multi-level attention network to update user nodes. Specifically, it firstly
aggregates the information of neighbors in the bipartite graph (i.e.,
interacted items) and social network (i.e., friends) by utilizing the GAT
mechanism respectively. Considering that different users may have
different preferences in balancing these two relationships, it further
leverages another attention network to fuse the two hidden states of
neighbors. Up till now, there is no evidence to show which strategy
always achieves better performance. (둘중 어느 방식이
더 좋은지에 대한 연구는 아직 없음)
1-6. GENERAL RECOMMENDATION - Knowledge graph enhanced
지금까지는 User 와 ITEM 간의 관계만을 고려하였다면, Item 의 속성에 해당하는 Knowledge Graph 를
연계하는 방법에 대한 연구도 진행되고 있다. : (1) the rich semantic relatedness among items in a
knowledge graph can help explore their connections and improve the item representation;(아이템간의 관계
표현을 강화하고 아이템 자체의 표현을 강화 할 수 있다) (2) knowledge graph connects a user’s historically
interacted items and recommended items, which enhances the interpretability of the results (과거의 구매
이력과 추천간의 관계를 Knowledge 그래프로 통해서 해석력을 강화 할 수 있을 것이다.)
1-6. GENERAL RECOMMENDATION - Knowledge graph enhanced
Graph Construction. Considering the complexity of the knowledge graph and the necessity of fusing the
information of the knowledge graph and user-item graph, some studies construct the graph first. How to
balance simplicity and informativeness? How to effectively incorporate the user into knowledge graph?
(다른 정보를 넣는건 좋은데, 구성은 어떻게 하고 그 복잡성은 어떻게 해결할 것인가? )
Some works directly apply GNN over the original knowledge graph [114], while some simplify the graph
structure or construct the subgraph at the first stage based on the information of knowledge graph and
user-item bipartite graph. The motivation comes from two aspects: one is that the knowledge graph
contains multiple entities and relationships, and is always of large scale, which increases the challenge of
applying GNN on the graph representation learning; another is that it is essential to incorporate user role
into the knowledge graph in order to fully utilize knowledge graph for recommendation, and simply taking
user nodes as another type of entities in knowledge graph may introduce unrelated information and is not
effective enough. (KG 는 주로 방대하기 때문에, 그대로 적용하는 것은 챌린징한 문제가 됨. 그래서 KG 를
간략화하는 방향으로 연구가 주로 진행 됨)
1-6. GENERAL RECOMMENDATION - Knowledge graph enhanced
KG 의 복잡성을 해결하기 위한 연구 중에 IntentGC 의 사례를 예시로 설명하고자 함. 해당 연구는 크게
3가지 특징이 있다고 함 .(1)Fully exploiting auxiliary information, (2)Faster graph convolution, (3)Dual graph
convolution in heterogeneous networks 라고 함.
Jun Zhao, Zhou Zhou, Ziyu Guan, Wei Zhao, Wei Ning, Guang Qiu, and Xiaofei He. 2019. IntentGC: A Scalable Graph Convolution Framework Fusing Heterogeneous Information for Recommendation. In Proceedings of the 25th
ACM SIGKDD International Conference on Knowledge Discovery & Data Mining (Anchorage, AK, USA) (KDD ’19). Association for Computing Machinery, New York, NY, USA, 2347–2357. https://doi.org/10.1145/3292500.3330686
[Fully exploiting auxiliary information]
과거의 연구들은 대체 정보를 단순화 모든 대체 정보를 사용함
We translate auxiliary relationships of first order proximity into more robust weighted relationships of
second order proximity. For instance, if user1 submits a query word “Spiderman”, we think there is a
connection between user1 and “Spiderman” (first order proximity). If user1 and user2 both submit query
words “Spiderman”, “Ironman”, “Thor”, we think there is a more robust relationship between user1 and
user2 (second order proximity), as they are probably fans of Marvel movies.
(1차 적인 관계 ==> 2차적인 관계를 반영하는 것이 추천 성능 향상에 도움이 됨)
1-6. GENERAL RECOMMENDATION - Knowledge graph enhanced
Faster graph convolution: To remove the limitation of training on clustered mini-graphs for large-scale
graphs, we propose a novel convolutional network named IntentNet, which is not only more efficient but
also more effective than GraphSage. The IntentNet takes a faster graph convolution mechanism. The key
idea of IntentNet is to avoid unnecessary feature interactions by dividing the functionality of graph
convolution into two components: a vector-wise convolution component for neighborhood feature
propagation and a fully-connected network component for node feature interaction. (정확한 내용의 이해를
위해서 해당 논문을 따로 학습할 예정) Benefiting from this mechanism, we deploy a distributed architecture
for simple mini-batch training (sampling nodes).
https://arxiv.org/pdf/1907.12377.pdf
2. Categories of graph neural network based recommendation models
[SEQUENTIAL RECOMMENDATION]
Sequential recommendation predicts users’ next
preferences based on their most recent activities,
which seeks to model sequential patterns among
successive items, and generate accurate
recommendations for users [84]. Inspired by the
advantage of GNN, it is becoming popular to utilize
GNN to capture the transition pattern from users’
sequential behaviors by transforming them into the
sequence graph. Most of the existing works focus on
inferring temporal preference only from the sequence.
Side information can be utilized to enhance the
sequential information as well, although there is little
work in this field. (별로 연구된 내용이 많지 않음)
3. Other Recommendations
CTR(Click Through Rate) 추천된 대상의 클릭 여부를 예측하는 문제 , POI(Point of Interest) 지도 기반의
추천 문제, Group 단일 개인이 아닌 그룹을 추천하는 문제, Bundle 하나의 아이템이 아닌 여러개의 아이템
묶음을 추천하는 문제 등 다양한 문제에 Graph Neural Network 를 적용하려는 연구가 진행 중
Next ..
- 추천 알고리즘 개별 논문에 대한 학습 예정 (PinSage, IntentGC .. etc)
- Heterogeneous Information Network 에 대한 적용 학습 예정

Graph neural network 2부 recommendation 개요

  • 1.
    Graph Neural Network <2부>Recommendation 개요
  • 2.
    https://arxiv.org/pdf/2011.02260.pdf Graph Neural Network에 기반한 추천 알고리즘 Survey 논문 (2021년) 을 기반으로 Overview
  • 3.
    Graph construction, Aggregation,Update, Final Node Representation 관점에서 각각의 연구들은 어떤 문제를 제기하고, 어떤 해결 방법들을 제시하였는지 정리. (기본 개념은 자료 Part1 참조) Original Graph Graph Construction Aggregation sum, avg ... Update & Application 분류 등 기본 개념 정의
  • 4.
    Graph Neural Net기반 추천 알고리즘 카테고리 정의
  • 5.
    그래서 오늘 설명의목차는 아래와 같음 1.General Recommendation 1.1 Graph Construction 1.2 Neighbor Aggregation 1.3 Information Update 1.4 Final Node Representation 1.5 Social Network Enhanced 1.6 Knowledge Enhanced 2. Sequential Recommendation 3. Other Recommendations
  • 6.
    1. GENERAL RECOMMENDATION [GENERALRECOMMENDATION] General recommendation aims to model user preferences by leveraging user-item interaction data, thus provide a list of recommendations reflecting the static long-term interests of each user. In addition to the information of user-item interactions, auxiliary information (if available) is often leveraged to enhance the user/item representation. Two typical types of auxiliary information are social network and knowledge graph. It is worth noting that different types of information have different characteristics of graph structures. Specifically, the user-item bipartite graph has two types of nodes and the neighbors of each node are homogeneous; social network is a homogeneous graph; knowledge graph has various entities and relations. Considering that different characteristics of graph structure require corresponding GNN strategies, we categorize them by the type of information used. In this section, we summarize the overall framework, introduce how existing works deal with the main issues under each subcategory, and discuss both their advantages and possible limitations. For convenience, we briefly summarize the works in table 2
  • 7.
    기본적으로 Central Node를중심으로 몇 Hop 을 이웃으로 정의할 것인지, 너무 많은 경우 Sampling 을 어떻게 할 것인지, 정보가 부족한 경우에는 Multi-hop 의 정보를 반영하여 활용할 것인지 등에 대한 연구가 진행되고 있다. Original Graph Graph Construction Aggregation sum, avg ... Update & Application 분류 등 1-1. GENERAL RECOMMENDATION - Graph Construction
  • 8.
    1-1. GENERAL RECOMMENDATION- Graph Construction 두 가지 문제를 제시 함. Graph 구성시 정보를 취합할 이웃 노드가 너무 부족할 경우와 너무 많은 경우. (1) 주변의 정보가 너무 적은 경우 : 새로운 노드를 추가하거나, 가상의 노드를 만들어서 해결. 예를들어 Disentangled Graph Collaborative Filtering 연구에서는 u1 -> i1 -> u2 와 같이 Multi Hop 의 연관 정보를 활용하여 Embedding 을 강화하고자 하였다. (Having used the first-hop neighbors, we further stack more graph disentangling layers to gather the influential signals from higher-order neighbors. In particular, such connectivities carry rich semantics. For instance, the second-order connectivity like u1 → i2 → u3 suggests the intent similarity between u1 and u3 when consuming i2) Xiang Wang, Hongye Jin, An Zhang, Xiangnan He, Tong Xu, and Tat-Seng Chua. 2020. Disentangled Graph Collaborative Filtering. In Proceedings of the 43rd International ACM SIGIR Conference on Research and Development in Information Retrieval (Virtual Event, China) (SIGIR ’20). Association for Computing Machinery, New York, NY, USA, 1001–1010. https://doi.org/10.1145/3397271.3401137
  • 9.
    1-1. GENERAL RECOMMENDATION- Graph Construction (2) 주변의 정보가 너무 많은 경우 : sampling strategies are proposed to make GNN efficient and scalable to large-scale graph based recommendation tasks. PinSage [145] designs a random-walk based sampling method to obtain the fixed size of neighborhoods with highest visit counts. In this way, those nodes that are not directly adjacent to the central node may also become its neighbors. Rex Ying, Ruining He, Kaifeng Chen, Pong Eksombatchai, William L. Hamilton, and Jure Leskovec. 2018. Graph Convolutional Neural Networks for Web-Scale Recommender Systems. In Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining (London, United Kingdom) (KDD ’18). Association for Computing Machinery, New York, NY, USA, 974–983. https://doi.org/10.1145/3219819.3219890
  • 10.
    1-2. GENERAL RECOMMENDATION- Neighbor Aggregation Central Node 의 정보를 Update 하기 위하여 주변의 정보를 모으는데, 주변 노드의 정보를 그냥 평균처리 할 것인지, 전부 Sum 할 것인지, Attention 등을 활용하여 중요도를 반영할 것 인지 등에 대한 연구 Original Graph Graph Construction Aggregation sum, avg ... Update & Application 분류 등
  • 11.
    1-2. GENERAL RECOMMENDATION- Neighbor Aggregation 각각의 논문들에서 Neighbor Aggregation 에 어떤 방법을 사용했는지, 크게 3가지 + @ (PinSage 조회수) 정도로 나누어 지는 것을 보임. The aggregation step is of vital importance of information propagation for the graph structure, which decides how much neighbors’ information should be propagated. Mean-pooling is one of the most straightforward aggregation operation [98, 101, 104, 151, 152], which treats neighbors equally, Mean-pooling is easy for implementation but might be inappropriate when the importance of neighbors is significantly different. Following the traditional GCN, some works employ “degree normalization” [10, 31, 134], which assigns weights to nodes based on the graph structure, Considering that the interacted items are not equally representative to reflect user preferences, researchers employ attention mechanism to differentiate the importance of neighbors [123]. Motivated by common sense that the embeddings of items in line with the user’s interests should be passed more to the user (analogously for the items), NGCF [119] employs element-wise product to augment the items’ features the user cares about or the users’ preferences for features the item [Mean Pooling] [Degree Normalization] [Attention Mechanism]
  • 12.
    1-2. GENERAL RECOMMENDATION- Information update Central Node 의 이웃 노드를 정의하고, 이웃 노드의 정보를 모았으면, 정의한 Central Node 에 정보를 Update 해야 함. 관련하여, 그냥 교체, Update 시 기존 Central Node 정보 반영, Update 시 기존의 Central Node 정보와 Aggregated 된 정보를 Concat 하는 형태 등이 연구에 사용되고 있음 Original Graph Graph Construction Aggregation sum, avg ... Update & Application 분류 등
  • 13.
    1-3. GENERAL RECOMMENDATION- Information update With the aggregated neighbor representation and the central node representation, how to update the representation of the central node is essential for iterative information propagation. Some works [31, 104, 121, 151] use the aggregated representation of neighbors as the new central node representation, i.e, discard the original information of the user or item node completely, which might overlook the intrinsic user preference or the intrinsic item property. The others take both the central node itself and its neighborhood message into consideration to update node representations. Some studies combines these two representations linearly with sum-pooling or mean-pooling operation [97, 119, 134, 152]. Inspired by the GraphSage [28], some works [55, 98, 145] adopt concatenation function with nonlinear transformation to integrate these two representations as follows: h (𝑙+1) 𝑢 = 𝜎 W(𝑙) · (h (𝑙) 𝑢 ⊕ n (𝑙) 𝑢 ) + b (𝑙) , where 𝜎 denotes the activation function, e.g., ReLU, LeakyReLU, and sigmoid. Compared to linear combination, concatenation operation with feature transformation allows more complex feature interaction. Note that some works [10, 31] observe that nonlinear activation contributes little to the overall performance, and they simplify the update operation by removing the non-linearities, thereby retaining or even improving performance and increasing computational efficiency. (a)완전히 central node를 Replace, (b) 기존 central node를 반영하여 update, (c) (a)/(b) 두가지를 Sum/Mean 하는 형태로 사용, (d) Central Node와 Neighbor 를 Concat 하여 사용하는 형태 정도로 요약됨. 추가적으로 어떤 연구에서는 non-linear Function 을 제거하는 연구도 진행됨(성능 기여도 낮다고 함)
  • 14.
    1-4. GENERAL RECOMMENDATION- Final Node Representation 최종적으로 Update 된 Central Node 정보를 사용하여 예측/분류 등에 사용하기 위한 단계로 그냥 Central Node 정보만 사용할지 연결된 주변 노드의 정보를 사용할지 등에 대한 연구가 진행 되었다. Original Graph Graph Construction Aggregation sum, avg ... Update & Application 분류 등
  • 15.
    1-4. GENERAL RECOMMENDATION- Final Node Representation Central Node 를 Embedding 하고 나면, 해당 Vector 를 사용하여 예측,분류,클러스터링 등 다양한 응용을 하게 되는데, 마지막 노드의 Embedding 이 관련된 모든 Node 의 정보를 포함하고 있다는 보장이 없기 때문에 아래와 같은 몇 가지 트릭을 사용한다. (a) 관련된 Node 들을 Concat , (b) Mean, (c) Sum, (d) Weighted Mean 기본적으로 관련된 노드를 얼마나 많이 사용할 것인가에 대한 문제는 over smoothing 문제와 연결되기 때문에 적절한 조정이 필요함 • Concatenation is one of the most widely adopted strategies [10, 42, 119, 152, 159], • Some works employ mean-pooling operation [72], • Some integrate the representations of all layers with sum-pooling [121], • Either mean-pooling or sum-pooling integration treats the representations from different layers equally. Some integrate the representations of all layers with the layer-wise weighted pooling [31, 31, 130],
  • 16.
    1-5. GENERAL RECOMMENDATION- Social network enhanced 지금까지는 User 와 ITEM 간의 관계만을 고려하였다면, USER 간의 관계를 추가적으로 반영하여 주는 것이 추천에 있어서 더 좋은 성능을 낼 수 있다고 한다. ... ... ... USER ITEM u1 Social Network u2 i1 i2 +
  • 17.
    1-5. GENERAL RECOMMENDATION- Social network enhanced With the emergence of online social networks, social recommender systems have been proposed to utilize each user’s local neighbors’ preferences to enhance user modeling [25, 40, 74, 75, 132]. All these works assume users with social relationship should have similar representations based on the social influence theory that connected people would influence each other (인접한 User간에는 구매에 영향을 준다라는 가정에 기반함) Social 정보를 추천에 반영하는데 있어 크게 해결해야 하는 두 가지 문제가 있음 Q1) Influence of Friends. Do friends have equal influence? If not, how to distinguish the influence of different friends? (친구가 있는데? 친구들이 모두 같은 영향도를 갖는가?) Q2) Preference Integration. Users are involved in two types of relationships, i.e., social relationship with their friends and interactions with items. How to integrate the user representations from the social influence perspective and interaction behavior? (Social 정보와 추천 정보를 어떻게 조합하지?)
  • 18.
    1-5. GENERAL RECOMMENDATION- Social network enhanced Q1) Influence of Friends. Do friends have equal influence? If not, how to distinguish the influence of different friends? (친구가 있는데? 친구들이 모두 같은 영향도를 갖는가?) Influence of friends. Generally, social graph only contains information about whether the users are friends or not, but the strength of social ties is usually unknown. To propagate the information of friends, it is essential to decide the influence of friends. DiffNet [132] treats the influence of friends equally by leveraging mean-pooling operation(그냥 동일하게 해석). However, the assumption of equal influence is not in accordance with the actual situation, and the influence of a user is unsuitable to be simply determined by the number of her friends. Indeed, users are more likely to be influenced by the friends with strong social ties or similar preferences. Therefore, most works [17, 131, 135] differentiate the influence of neighbors by measuring the relationship between the linked friends with attention mechanism(Attention 을 사용). Compared to the mean-pooling operation, the attention mechanism boosts the overall performance, which further valids the assumption that different friends have different influence power. Moreover, a recent work, named ESRF [147], argues that social relations are not always reliable. The unreliability of social information lies in two aspects: on the one hand, the users with explicit social connections might have no influence power; on the other hand, the obtained social relationships might be incomplete. Considering that indiscriminately incorporating unreliable social relationships into recommendation may lead to poor performance, ESRP leverages the autoencoder mechanism to modify the observed social relationships by filtering irrelevant relationships and investigating the new neighbors. (노출된 관계로 부족해서 새로운 관계를 찾기 위해 AutoEncoder를 사용)
  • 19.
    1-5. GENERAL RECOMMENDATION- Social network enhanced Q2) Preference Integration. Users are involved in two types of relationships, i.e., social relationship with their friends and interactions with items. How to integrate the user representations from the social influence perspective and interaction behavior? (Social 정보와 추천 정보를 어떻게 조합하지?) [별도 구성시의 장점] The advantage of the first strategy lies in two aspects: on the one hand, we can differentiate the depth of diffusion process of two networks since they are treated separately(학습 프로세스를 분리 할 수 있다); on the other hand, any advanced method for user-item bipartite graph can be directly applied(바로 적용이 가능하다. ps. Social Network는 기본적으로 그래프로 표현 가능하기도 함), and for social network, a homogeneous graph, GNN techniques are extremely suitable for simulating the influence process since they are originally proposed for homogeneous graphs.
  • 20.
    1-5. GENERAL RECOMMENDATION- Social network enhanced Q2) Preference Integration. Users are involved in two types of relationships, i.e., social relationship with their friends and interactions with items. How to integrate the user representations from the social influence perspective and interaction behavior? (Social 정보와 추천 정보를 어떻게 조합하지?) [통합 그래프 구성] The advantage of integrating the two graphs into one unified network is that both the higher order social influence diffusion in the social network and interest diffusion in the user-item bipartite graph can be simulated in a unified model,(하나의 그래프에서 두 가지 정보를 종합적으로 해석할 수 있다는 것이 장점) and these two kinds of information simultaneously reflect users’ preferences. At each layer, DiffNet++ [131] designs a multi-level attention network to update user nodes. Specifically, it firstly aggregates the information of neighbors in the bipartite graph (i.e., interacted items) and social network (i.e., friends) by utilizing the GAT mechanism respectively. Considering that different users may have different preferences in balancing these two relationships, it further leverages another attention network to fuse the two hidden states of neighbors. Up till now, there is no evidence to show which strategy always achieves better performance. (둘중 어느 방식이 더 좋은지에 대한 연구는 아직 없음)
  • 21.
    1-6. GENERAL RECOMMENDATION- Knowledge graph enhanced 지금까지는 User 와 ITEM 간의 관계만을 고려하였다면, Item 의 속성에 해당하는 Knowledge Graph 를 연계하는 방법에 대한 연구도 진행되고 있다. : (1) the rich semantic relatedness among items in a knowledge graph can help explore their connections and improve the item representation;(아이템간의 관계 표현을 강화하고 아이템 자체의 표현을 강화 할 수 있다) (2) knowledge graph connects a user’s historically interacted items and recommended items, which enhances the interpretability of the results (과거의 구매 이력과 추천간의 관계를 Knowledge 그래프로 통해서 해석력을 강화 할 수 있을 것이다.)
  • 22.
    1-6. GENERAL RECOMMENDATION- Knowledge graph enhanced Graph Construction. Considering the complexity of the knowledge graph and the necessity of fusing the information of the knowledge graph and user-item graph, some studies construct the graph first. How to balance simplicity and informativeness? How to effectively incorporate the user into knowledge graph? (다른 정보를 넣는건 좋은데, 구성은 어떻게 하고 그 복잡성은 어떻게 해결할 것인가? ) Some works directly apply GNN over the original knowledge graph [114], while some simplify the graph structure or construct the subgraph at the first stage based on the information of knowledge graph and user-item bipartite graph. The motivation comes from two aspects: one is that the knowledge graph contains multiple entities and relationships, and is always of large scale, which increases the challenge of applying GNN on the graph representation learning; another is that it is essential to incorporate user role into the knowledge graph in order to fully utilize knowledge graph for recommendation, and simply taking user nodes as another type of entities in knowledge graph may introduce unrelated information and is not effective enough. (KG 는 주로 방대하기 때문에, 그대로 적용하는 것은 챌린징한 문제가 됨. 그래서 KG 를 간략화하는 방향으로 연구가 주로 진행 됨)
  • 23.
    1-6. GENERAL RECOMMENDATION- Knowledge graph enhanced KG 의 복잡성을 해결하기 위한 연구 중에 IntentGC 의 사례를 예시로 설명하고자 함. 해당 연구는 크게 3가지 특징이 있다고 함 .(1)Fully exploiting auxiliary information, (2)Faster graph convolution, (3)Dual graph convolution in heterogeneous networks 라고 함. Jun Zhao, Zhou Zhou, Ziyu Guan, Wei Zhao, Wei Ning, Guang Qiu, and Xiaofei He. 2019. IntentGC: A Scalable Graph Convolution Framework Fusing Heterogeneous Information for Recommendation. In Proceedings of the 25th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining (Anchorage, AK, USA) (KDD ’19). Association for Computing Machinery, New York, NY, USA, 2347–2357. https://doi.org/10.1145/3292500.3330686 [Fully exploiting auxiliary information] 과거의 연구들은 대체 정보를 단순화 모든 대체 정보를 사용함 We translate auxiliary relationships of first order proximity into more robust weighted relationships of second order proximity. For instance, if user1 submits a query word “Spiderman”, we think there is a connection between user1 and “Spiderman” (first order proximity). If user1 and user2 both submit query words “Spiderman”, “Ironman”, “Thor”, we think there is a more robust relationship between user1 and user2 (second order proximity), as they are probably fans of Marvel movies. (1차 적인 관계 ==> 2차적인 관계를 반영하는 것이 추천 성능 향상에 도움이 됨)
  • 24.
    1-6. GENERAL RECOMMENDATION- Knowledge graph enhanced Faster graph convolution: To remove the limitation of training on clustered mini-graphs for large-scale graphs, we propose a novel convolutional network named IntentNet, which is not only more efficient but also more effective than GraphSage. The IntentNet takes a faster graph convolution mechanism. The key idea of IntentNet is to avoid unnecessary feature interactions by dividing the functionality of graph convolution into two components: a vector-wise convolution component for neighborhood feature propagation and a fully-connected network component for node feature interaction. (정확한 내용의 이해를 위해서 해당 논문을 따로 학습할 예정) Benefiting from this mechanism, we deploy a distributed architecture for simple mini-batch training (sampling nodes). https://arxiv.org/pdf/1907.12377.pdf
  • 25.
    2. Categories ofgraph neural network based recommendation models [SEQUENTIAL RECOMMENDATION] Sequential recommendation predicts users’ next preferences based on their most recent activities, which seeks to model sequential patterns among successive items, and generate accurate recommendations for users [84]. Inspired by the advantage of GNN, it is becoming popular to utilize GNN to capture the transition pattern from users’ sequential behaviors by transforming them into the sequence graph. Most of the existing works focus on inferring temporal preference only from the sequence. Side information can be utilized to enhance the sequential information as well, although there is little work in this field. (별로 연구된 내용이 많지 않음)
  • 26.
    3. Other Recommendations CTR(ClickThrough Rate) 추천된 대상의 클릭 여부를 예측하는 문제 , POI(Point of Interest) 지도 기반의 추천 문제, Group 단일 개인이 아닌 그룹을 추천하는 문제, Bundle 하나의 아이템이 아닌 여러개의 아이템 묶음을 추천하는 문제 등 다양한 문제에 Graph Neural Network 를 적용하려는 연구가 진행 중
  • 27.
    Next .. - 추천알고리즘 개별 논문에 대한 학습 예정 (PinSage, IntentGC .. etc) - Heterogeneous Information Network 에 대한 적용 학습 예정