수식을 직관적으로 이해해보겠습니다:
기본 개념 설명:
실제 예시로 이해하기:
A^1 (거리가 1인 직접 연결):
A^2 (거리가 2인 연결):
수식 해석:
L = Σ ||z_u^T z_v - A^k_{u,v}||^2
(u,v)∈V×V
이 수식은:
이러한 방식으로 그래프의 구조적 특성을 보존하면서 각 노드의 임베딩을 학습하게 됩니다.
L = Σ ||z_u^T z_v - A_{u,v}||^2
(u,v)∈V×V
인접성 기반(2.1)에서는 A_{u,v}가 직접 연결 여부만 표현
경로 기반(3.2)에서는 A^k_{u,v}가 k-거리 관계를 표현
인접성 기반:
경로 기반:
인접성 기반:
경로 기반:
인접성 기반:
경로 기반:
결론적으로, 경로 기반 접근법은 인접성 기반보다 더 복잡한 네트워크 구조를 포착할 수 있지만, 그만큼 계산 비용이 더 큽니다. 어떤 방법을 선택할지는 응용 분야와 요구사항에 따라 달라질 수 있습니다.
경로 기반 접근법에서도 인접행렬을 사용합니다. 다만 거리 k에 따른 인접행렬을 만든다는 점이 다릅니다.
동일한 친구 관계 예시로 설명하겠습니다:
철수(1) - 영희(2) - 민수(3) - 지영(4)
A¹ (1단계 거리):
A¹ = [
[0, 1, 0, 0], # 철수의 직접 친구: 영희
[1, 0, 1, 0], # 영희의 직접 친구: 철수, 민수
[0, 1, 0, 1], # 민수의 직접 친구: 영희, 지영
[0, 0, 1, 0] # 지영의 직접 친구: 민수
]
A² (2단계 거리):
A² = [
[0, 0, 1, 0], # 철수의 2단계 친구: 민수
[0, 0, 0, 1], # 영희의 2단계 친구: 지영
[1, 0, 0, 0], # 민수의 2단계 친구: 철수
[0, 1, 0, 0] # 지영의 2단계 친구: 영희
]
A³ (3단계 거리):
A³ = [
[0, 0, 0, 1], # 철수의 3단계 친구: 지영
[0, 0, 0, 0], # 영희의 3단계 친구: 없음
[0, 0, 0, 0], # 민수의 3단계 친구: 없음
[1, 0, 0, 0] # 지영의 3단계 친구: 철수
]
z_철수 = [0.8, 0.2]
z_영희 = [0.7, 0.3]
z_민수 = [0.5, 0.5]
z_지영 = [0.3, 0.7]
L_{철수,민수} = ||z_철수^T z_민수 - A²_{1,3}||^2
= ||(0.8×0.5 + 0.2×0.5) - 1||^2
= ||0.5 - 1||^2
= 0.25
k=1: 직접 연결된 친구들 (실선)
k=2: 친구의 친구 (점선)
k=3: 친구의 친구의 친구
이처럼 경로 기반 접근법은 단순히 직접 연결된 관계뿐만 아니라, k단계 떨어진 관계까지 고려하여 더 풍부한 네트워크 구조를 임베딩에 반영할 수 있습니다.