이것저것 기록

[graph] graph pooling에 대한 기록 본문

Data Science/ML & DL

[graph] graph pooling에 대한 기록

anweh 2021. 1. 1. 16:45

"...but what if we want to make predictions at the graph level? In other words, we have been assuming tat the goal is to learn node representations Zu, but what if we want to learn an embedding Zg for the entire graph G?" 

 

  1. Graph Pooling의 정의
    • 기존 영상 처리에서 활용되었던 Pooling 방법론을 그래프 관점에 적용시킨 것이다. 
    • 기존 영상 처리에서의 Pooling은 한마디로 중요한 정보는 남기고, 불필요한 정보는 날리는 역할을 한다. 그래프의 관점에서도 똑같다. 그래프에서 중요한 역할을 하는 노드의 정보는 남기고 불필요한 노드의 정보는 축소하는 것이다. 
  2. Graph Pooling의 목적
    • Pool together the node embeddings in order to learn an embedding for the entire graph 
  3. Graph Pooling 방법
    • node-level의 AGGREGATE과 비슷하게 graph pooling 또한 learning over set에 대한 문제로 생각해볼 수 있다. 
    • pooling function (f(p)) 를 배우는 과정이다. f(p)는 노드 임베딩의 세트로부터 단일 그래프 임베딩을 생성하는 함수이다. 
    • (3.1) Set Pooling Approach
      • A sum (or mean) of the node embeddings: 그래프의 크기가 작다면 노드 임베딩들의 합이나 평균으로도 충분하다. 

(3.1)의 식

  • (3.2) Graph Coarsening Approach
    • (3.1) 방법론의 큰 한계점은 그래프의 구조를 고려하지 않았다는 점이다. 그래프의 토폴로지를 고려한 방법론에는 graph clustering (or coarsening)이 있다. 
    • 이 방법론 같은 경우에 f(c), which maps all the nodes in the graph to an assignment over c clusters를 학습하는 것이다. 

(3.2)의 식 

 

Comments