728x90 반응형 CS224W26 [CS224w] Dataset Split Why Splitting Graphs is Specialimage dataset을 생각해보자. 각 data point는 하나의 image이다. 5번째 image가 1번째 image에 영향을 주지 않는다.그러나 graph에서는 다른다. 각 node는 독립이 아니라 다른 node에 영향을 줄 수 있다. (message passing을 생각해보자) Transductive settinginput graph를 전체 데이터셋으로 간주한다. 예를 들어 training time에는 전체 그래프를 이용하여 embedding을하고, node 1과 node 2로 label을 학습한다.validation time에는 전체 그래프를 이용하여 embedding을 하고 node3과 node4 label로 evaluate한다.따라서.. 2023. 5. 29. [CS224w] Training Graph Neural Networks Supervised vs UnsupervisedSupervised Labels on GraphsNode label $\mathbf{y}_{v}$: citation network에서 어떤 subject가 node에 속하는지Edge label $\mathbf{y}_{uv}$: transaction network에서 edge가 fraud인지 아닌지Graph label $\mathbf{y}_{G}$: 분자 그래프에서 신약이 될 가능성 예측 Unsupervised Signals on Graphs그러나 대부분 우리는 그래프 구조는 갖고 있지만 external label이 없는 경우가 많다.self-supervised learning을 고려한다. Node label $\mathbf{y}_{v}$: Node stati.. 2023. 5. 24. [CS224w] Prediction with GNNs 지금까지 공부한 내용은 그래프, GNN, Node embedding이다.이렇게 얻은 결과는 node embedding 집합이다. $\{ \mathbf{h}_v^{(L)}, v \in G \}$ 이제 GNN으로 Prediction Task를 할 것이다.크게 3가지 prediction이 있고 node-level, edge-level, graph-level prediction으로 나눌 수 있다.Node-level predictionnode-level prediction의 경우, 노드 임베딩을 직접 이용할 수 있다.$L$개의 layer를 가진 GNN을 통과하여 $d$차원 노드임베딩을 얻을 수 있다,\[ \{ \mathbf{h}_v^{(L)} \in \mathbb{R}^d, \forall v \in G \} \].. 2023. 4. 26. GAT, GraphSAGE GAT, Graph Attention NetworksIdeaGCN의 경우, 모든 이웃 노드들로부터 동일한 가중치를 갖는다.그렇지만 경우에 따라 이웃 노드를로부터 얻는 정보의 가중치가 다를 수 있다. (많은 경우가 그럴 것이다.)이제 이웃 노드들로부터 얻는 임베딩 $\mathbf{h}_u^{l}$에 가중치 $\alpha{vu}$를 곱한다.이 수식은 GCN을 보다 일반화 한것으로 볼 수 있다.GCN이라면 $\alpha{vu} \cfrac{1}{|N(v)|}$ 으로 간주할 수 있다.Not all neighbors are equally important !Computing the attention weight노드 $u$가 노드 $v$에 메시징을 할 때, 그 중요도를 $e_{vu}$라 하고 attention we.. 2023. 4. 19. [GCN] Graph Convolutional Network Ideanode의 neighborhood는 computation graph를 정의한다.message는 relational information과 attribute information 모두 포함할 수 있다.Neighborhood Aggregationnode는 이웃 노드의 정보를 neural network를 통해 정보를 집계한다. 모든 노드는 이웃 노드로부터 정의된다.그렇다면 어떤 Neural Network를 사용할 것인가? 어떻게 집계할 것인가?GCN, Graph Convolutional NetworkBasic Approach어떤 neural network를 사용할 것인가? → weight matrix를 사용하는 기본형태. $\mathbf{B}$와 $\mathbf{W}$를 사용할 것이다.어떤 종류의 집계.. 2023. 4. 18. [CS224w] Colab 1 - Node Embeddings 강의자료 1~3 기반 colab 프로그래밍 과제이다. 1. Introduction 2. Feature Engineering for Machine Learning in Graphs 3. Node Embeddings Dataset Zachary's karate(가라테) club network라는 그래프 데이터를 이용할 것이다. NetworkX에 내장되어있으니 간단히 불러온다. import networkx as nx G = nx.karate_club_graph() print(type(G)) # print(G.is_directed()) # False 그래프를 그려볼 수 있다. 실행할 때마다 그래프 그림이 달라지지만, 당연히 같은 그래프이다. nx.draw(G, with_labels=True) Question 1.. 2023. 3. 6. 이전 1 2 3 4 5 다음 728x90 반응형