Lecture 4.4 - Matrix Factorization and Node Embeddings
CS224W Lecture 4. Graph as Matrix
- Recall: Node Embeddings & Embedding matrix
- Matrix Factorization
- RandomWalk-based Similarity
- Limitations
- Algorithms 정리
Lecture 4. Graph as Matrix
Recall: Node Embeddings & Embedding matrix
이전 강의에서 배웠던 embedding matrix $\mathbf{Z}$에 대해 다시 떠올려봅시다. 이 매트릭스는 그래프의 각 노드들을 잠재변수 공간(embedding space)으로 encoding하는 행렬로 열의 차원은 embedding하는 크기, 행의 차원은 그래프에 있는 노드의 수가 됩니다. 이 매트릭스의 한 열은 특정 노드 $u$의 embedding vector $\mathbf{z}_u$를 나타내게 됩니다.
이러한 Node embedding에서 objective는 그래프상에서 실제로 유사한 노드들의 simliarity가 embedding vector들의 내적(inner product)값도 높도록 만드는 것입니다.
Matrix Factorization
Embedding matrix를 Matriz Factorization 관점에서 다시 생각해봅시다. 그래프를 노드들간의 연결이 되어 있으면 1, 아니면 0으로 나타낸 인접행렬 $\mathbf{A}$을 embedding matrix $\mathbf{Z}$로 factorization 한다고 생각해볼 수 있습니다. 즉 $\mathbf{Z}^{\mathrm{T}}$와 $\mathbf{Z}$의 내적으로 인접행렬 $\mathbf{A}$를 만드는 것입니다.
하지만 embedding matrix $\mathbf{Z}$의 행의 수, 즉 embedding dimension $d$는 노드의 수 $n$보다 작으므로 완벽한 factorization을 할 수 없고 대신에 이를 최적화 기법을 사용하여 근접(approzimate)시킬 수 있습니다. 이 최적화를 목적함수는 다음과 같습니다.
결론은 edge connectivity로 정의된 node similarity을 나타내는 decoder($\mathbf{Z}$)의 내적은 $\mathbf{A}$의 matrix factorization과 동일하다는 것입니다.
RandomWalk-based Similarity
DeepWalk와 node2vec 알고리즘에서는 random walks를 기반으로한 좀 더 복잡한 node similarity를 사용합니다. 2개의 알고리즘 모두에서 matrix factorization을 사용하고 있습니다. DeepWalk에서 사용하는 node simliarity는 다음과 같이 정의됩니다. (node2vec은 이보다 조금 더 복잡합니다. 자세한 내용을 확인하고 싶으면 Network Embedding as Matrix Factorization paper를 참고)
Limitations
Matrix factorization과 random walk로 node embedding을 할 경우 몇가지 제약(단점)이 있습니다.
- 그래프에 새로운 노드가 생겼을 때 대응하지 못합니다. training과정에서 보지 못한 노드가 생겼을 때 scratch부터 다시 계산해야 합니다.
-
구조적인 유사성을 파악하지 못합니다. 아래의 그림에서
1-2-3
과11-12-13
은 그래프에서 비슷한 구조를 가지고 있지만 각 노드마다 unique한 embedding 값으로 인해 구조적인 유사성을 파악하지 못합니다.
-
노드, 엣지, 그래프의 feature 정보를 활용할 수 없습니다. DeepWalk나 node2vec에 쓰인 embedding은 노드에 있는 feature 정보를 활용할 수 없습니다. 이는 추후에 배울
Deep Representation Learning
으로 해결할 수 있습니다.
Algorithms 정리
- PageRank: 그래프에서 노드의 importance를 측정하는 알고리즘이며 인접행렬의 power iteration으로 계산할 수 있다.
- 총 3가지 관점에서 해석할 수 있다.
- (1) Flow formulation
- (2) Random walk & Stationary distribution
- (3) Linear Algebra - eigenvector
- Personalized PageRank(PPR): PageRank에서 좀 더 발전시킨 알고리즘으로 random walk로 구한 특정 노드의 중요성을 더 고려하여 teleport를 하는 알고리즘
- Random walks 기반 Node Embeddings은 Matrix factorization으로 표현될 수 있다.
그래프를 행렬로 이해하는 것은 위의 알고리즘들을 이해하는데 매우 중요하다는 것을 알 수 있습니다.
Original Lecture Video : CS224W: Machine Learning with Graphs 2021 Lecture 4.4 - Matrix Factorization and Node Embeddings