전체 글
GCN, GraphSAGE, GAT 설명
Graph Convolutional Network(GCN) 가장 기초적인 GNN 이후 발전 모델 중 하나로 GNN과 비교해서 공식을 살펴보면 그 차이를 명확하게 알 수 있다. GCN의 달라진 점은 Aggregation에 있는데 기본 GNN에서는 단순히 neighbor의 평균을 내었다면 GCN에서는 자신 Node와 Neighbor들의 합을 자신 Node의 Neighbor 개수와 Neighbor Node의 Neighor 개수로 곱한 것의 Root 값으로 나눈다. 이건 단순한 GCN에 대한 설명이고, GCN도 Spectral Graph Convolution인지 Spatial Convolution인지 부터 다양한 접근이 가능하다. 참조: https://arxiv.org/abs/1609.02907 Semi-Sup..
Basic GNN 설명
GNN의 핵심은 Neighborhood Aggregation으로 이야기할 수 있다. 즉, Node의 neighborhood를 Neural Network를 이용하여 Aggregation함으로 Neural Network를 학습하는 것이다. 아래 왼쪽 Graph에서는 A부터 F까지 6개의 Node가 있다. 이를 Node A와 Node A의 neighborhood 관계로 표현하면 아래 오른쪽과 같이 표현할 수 있다. Node들은 각 Layer에서 Embedding을 갖게되고 가장 아래 Layer인 Layer0에서는 input feature를 사용하게된다. GNN의 특징 중의 하나는 각 Layer 마다 input의 개수가 다르다는 것이다. 위의 그림은 Node의 A를 기준으로하여 그렸지만 Node B가된다면 In..
Denoising User-aware Memory Network for Recommendation
Problem Definition DUMN(Denosing User-aware Memory Network)은 User의 real click preference를 예측하는 것을 목표로 한다. User의 선호를 파악하여 Click preference를 예측하는 연구를 CTR(Click-Through Rate) Prediction이라 하고 초기 model인 CF method부터 딥러닝을 활용한 다양한 모델들이 존재한다. Motivation Sequence-based recommendation system에서 implicit feedback에 noise가 있다는 사실은 대부분 고려되지 않는다. Noise가 존재한다는 것은 representation이 bias를 야기할 수도 있고, suboptimal recomm..
Iterative Deep Graph learning for Graph Neural Networks
Abstract 이 논문에서는 Iterative Deep Graph learning for Graph Neural Networks(IDGL)이라는 새로운 end-to-end graph learning framework를 제안한다. IDGL은 iteratively learning과 graph embedding이 결합된 방법으로 더 나은 node embedding을 기반으로 더 나은 graph-structure을 학습할 수 있다(그 반대도 가능). IDGL의 특징을 4가지 정도 이야기하는데 다음과 같다. Iterative method가 downstream prediction task에 충분히 최적화되면 dynamically stop 한다. Graph learning problem을 similarity met..
K-Core & Katz index
KAIST AI 대학원 신기정 교수님의 수업인 데이터마이닝 및 소셜 네트워크 분석 수업 필기입니다. K-Core Idea : nodes with degree less than k are removed until all remaining nodes in the network have at least k degree (k보다 작은 차수를 가진 노드는 네트워크의 모든 나머지 노드가 최소한 k 차수를 가질 때까지 제거) k-core : subgraph where all nodes have 2 degree of at leat k (모든 노드가 최소 k의 2차수를 갖는 부분 그래프) node coreness : a measure that quantifies the participation of a node to t..
Kronecker Graph Model
KAIST AI 대학원 신기정 교수님의 수업인 데이터마이닝 및 소셜 네트워크 분석 수업 필기입니다. Kronecker Graph Model Self-similarity를 통한 recursive model => Power law, real-world graph structure hyperparameter에 민감하지 않고 stably Graph를 생성 Recursive graph Adjacency matrix간의 Kronecker Product을 통해 Graph 생성 \(G_k\)가 \(G_1\)의 k times의 Kronecker product라고 할 때 \(G_k\)는 \(N_1^k\) node와 \(E_1^k\) edges를 갖게 된다. 즉, Constant diameter가 되게 된다. 이를 해결하기..
Community Guided Attachment & Forest Fire Model
KAIST AI 대학원 신기정 교수님의 수업인 데이터마이닝 및 소셜 네트워크 분석 수업 필기입니다. Community Guided Attachment Model 마지막 leaf node들이 어느 Community에 속해있는지를 토대로 link probability로 edge를 생성 Assume Community structure : Group 안에는 friendship이 높고, Group 밖에는 friendship이 낮음 Self Similarity : Perfect balanced Tree Structure Linking probability(Difficulty Function) $$ f(h) = c^{-h} $$ \(h\) : tree distance of two nodes \(c\) : Diffic..
Generative Adverarial Network(GAN)
1시간만에 GAN(Generative Adversarial Network) 완전 정복하기 - 최윤제 을 정리한 것입니다. https://www.youtube.com/watch?v=odpjk7_tGY0&list=LL&index=1 GAN의 목표와 기본구조 GAN의 목표는 실제 데이터와 구별할 수 없을 정도로 비슷한 데이터를 생성해내는 generative model을 찾는 것이다. 따라서 우리의 Training Data의 분포를 학습하는 Generative model을 만드는 것이다. GAN은 기본적을 Generator와 Discriminator라는 2가지 AI model로 이루어져 있다. Generator의 역할을 최종적으로 우리가 이용할 model이면서 새로운 데이터를 만들어내는 역할을 한다. Discr..