GNN/임베딩: Node2Vec
ㅁ GNN/임베딩
ㅇ 정의:
그래프의 구조적 정보를 벡터 공간으로 변환하여 노드 간의 관계를 학습하는 기술.
ㅇ 특징:
– 노드 간의 유사성을 벡터로 표현 가능.
– 그래프 데이터의 구조적 특성을 보존.
– 다양한 그래프 기반 응용에 활용 가능.
ㅇ 적합한 경우:
– 소셜 네트워크 분석.
– 추천 시스템에서의 사용자-아이템 관계 분석.
– 지식 그래프에서의 엔티티 간 관계 학습.
ㅇ 시험 함정:
– 그래프 임베딩과 일반적인 임베딩 기법의 차이를 혼동할 수 있음.
– 노드 임베딩의 적용 사례를 정확히 이해하지 못할 가능성.
ㅇ 시험 대비 “패턴 보기” 예시:
– O: “Node2Vec은 그래프의 구조적 정보를 벡터 공간으로 변환하는 데 유용하다.”
– X: “Node2Vec은 텍스트 데이터의 임베딩을 수행한다.”
================================
1. Node2Vec
ㅇ 정의:
그래프의 노드를 벡터로 임베딩하기 위해 랜덤 워크 기반의 샘플링을 활용하는 기법.
ㅇ 특징:
– 랜덤 워크 기반으로 노드 간의 관계를 학습.
– DFS와 BFS를 혼합한 샘플링 전략 사용.
– 노드의 지역적 및 전역적 구조를 모두 학습 가능.
ㅇ 적합한 경우:
– 그래프 데이터에서 노드 분류.
– 링크 예측 및 군집화.
– 그래프 기반 추천 시스템.
ㅇ 시험 함정:
– DFS/BFS의 개념과 Node2Vec의 샘플링 방식 혼동.
– Word2Vec과의 유사성만을 지나치게 강조.
ㅇ 시험 대비 “패턴 보기” 예시:
– O: “Node2Vec은 그래프에서 랜덤 워크를 이용해 노드 임베딩을 생성한다.”
– X: “Node2Vec은 그래프의 엣지 임베딩만을 생성한다.”
ㅁ 추가 학습 내용
Node2Vec의 주요 하이퍼파라미터인 p와 q는 랜덤 워크의 방향성을 제어하는 데 중요한 역할을 합니다.
p는 랜덤 워크가 이전 노드로 되돌아가는 확률을 제어합니다. p 값이 높을수록 이전 노드로 되돌아가는 경로를 선택할 가능성이 낮아지고, p 값이 낮을수록 이전 노드로 되돌아가는 경로를 선택할 가능성이 높아집니다. 이를 통해 네트워크의 지역적 특성을 더 잘 탐색할 수 있습니다.
q는 랜덤 워크가 새로운 노드를 탐색하는 확률을 제어합니다. q 값이 높을수록 랜덤 워크가 새로운 노드로 이동할 가능성이 높아지고, q 값이 낮을수록 랜덤 워크가 현재 노드 주변의 이웃 노드에 머무를 가능성이 높아집니다. 이를 통해 네트워크의 전역적 특성을 더 잘 탐색할 수 있습니다.
Node2Vec과 DeepWalk의 주요 차이점은 랜덤 워크 전략입니다. DeepWalk는 고정된 랜덤 워크 전략을 사용하여 네트워크를 탐색합니다. 즉, 모든 랜덤 워크가 동일한 확률로 동작하며, 네트워크의 구조적 다양성을 반영하기 어렵습니다. 반면, Node2Vec은 p와 q라는 하이퍼파라미터를 도입하여 랜덤 워크의 방향성을 조정할 수 있습니다. 이를 통해 Node2Vec은 네트워크의 지역적 및 전역적 구조를 더 잘 반영할 수 있습니다.
이러한 차이로 인해 Node2Vec은 DeepWalk보다 더 유연하고 다양한 네트워크 구조를 효과적으로 학습하는 데 적합합니다.