Deep Learning/Graph Neural Network

[Graph] Measuring Network

언킴 2022. 9. 30. 10:18
반응형

Contents

 

 

네트워크에는 밀집(Density), 차수(Degree), 길이(Length) 등 다양한 지표가 존재하며, 이를 측정하기 위한 방법도 다양하게 존재한다. 본 글에서는 이를 측정하는 방법에 대해서 알아본다. 

 

Density

Density는 그래프의 밀집 정도를 의미한다. 예를 들어, 완전 연결 그래프의 경우 Density는 1이 될 것이다. 완전 연결 그래프는 Complete Graph 혹은 Clique로 부르기도 한다. 이때 평균 차수는 다음과 같이 계산할 수 있다.

m=(n2)=n(n1)2

k=2mn=n(n1)2=n1

그래프의 Density는 ρ로 표기할 수 있으며, ρ는 아래와 같이 평균 차수 m으로 계산이 가능하다.

ρ=mnC2=2mn(n1)=kn1,(0ρ1)

ρ=kn

만약 n이 엄청 크다면, n1n이 되기 때문에 위 수식처럼 변환이 가능하다. 실제 데이터는 n이 크기 때문에 성립된다. 

 

Clustering Coefficient 

군집 계수는 노드 i의 이웃들이 연결되어 있는 정도를 의미한다. 예를 들어, 이웃끼리 연결성이 높다면 Clustering Coefficient는 높아진다. 

ci=ei(ki2)=2eiki(ki1)

ki는 차수를 의미한다. ei는 전체 undirected edge를 의미한다. ci는 1에 가까울수록 높은 것을 의미하며, ci[0,1]이 된다. 

 

첫 번째의 경우 ci=2643=1이 된다. 두 번째의 경우 ci=2343=12가 된다. 위 경우에는 한 노드에 대한 Clustering Coefficient를 계산했다. 전체 노드에 대한 Coefficient는 아래와 같이 계산이 가능하다.

C=1ninci,where ci=2eiki(ki1)

위 Clustering Coefficient는 Local하게 측정한 값이다. Global Level에서 Clustering Coefficient를 계산하는 것은 Transitivity라고 한다. Transitivity는 Global한 정보를 보기 때문에 이웃의 이웃이 나와 이웃인지 등의 정보까지 고려하게 된다.

c=(#triangles)×3(#connected triples)=ijkAijAjkAkiijkAijAjk

 

'Deep Learning > Graph Neural Network' 카테고리의 다른 글

[Graph] Walk, Trail, Path, Cycle, Circuits, etc..  (0) 2022.09.16
Node Embedding  (0) 2022.09.02
Community Detection  (0) 2022.09.02
Graph를 이용한 Cascade 모델링  (0) 2022.09.02
Link Prediction with DGL  (0) 2022.09.01