최대 클리크

Python으로 시작하는 네트워크 분석

Eric Ma

Data Carpentry instructor and author of nxviz package

최대 클리크

  • 정의: 한 노드를 더 추가하면 더 이상 클리크가 아닌 클리크

노드 5개인 그래프. 4개 노드가 클리크를 이룸. 클리크의 세 노드는 초록으로 강조. 다섯째 노드는 하나의 노드에만 연결됨.

Python으로 시작하는 네트워크 분석

최대 클리크

  • 정의: 한 노드를 더 추가하면 더 이상 클리크가 아닌 클리크

같은 5노드 그래프. 이번에는 클리크의 4개 노드 모두 초록으로 강조.

Python으로 시작하는 네트워크 분석

최대 클리크

  • 활용: 커뮤니티 탐지

같은 5노드 그래프.

Python으로 시작하는 네트워크 분석

커뮤니티

  • 클리크 찾기
  • 클리크 합집합 찾기

같은 5노드 그래프.

Python으로 시작하는 네트워크 분석

NetworkX API

  • find_cliques는 모든 최대 클리크를 찾음
Python으로 시작하는 네트워크 분석

최대 클리크

import networkx as nx
G = nx.barbell_graph(m1=5, m2=1)

nx.find_cliques(G)
<generator object find_cliques at 0x1043f1f68>
list(nx.find_cliques(G))
[[4, 0, 1, 2, 3], [4, 5], [6, 8, 9, 10, 7], [6, 5]]

Python으로 시작하는 네트워크 분석

최대 클리크

import networkx as nx
G = nx.barbell_graph(m1=5, m2=1)
nx.find_cliques(G)
<generator object find_cliques at 0x1043f1f68>
list(nx.find_cliques(G))
[[4, 0, 1, 2, 3], [4, 5], [6, 8, 9, 10, 7], [6, 5]]

두 개의 그래프. 각각 5개 노드가 최대 클리크를 이룸.

Python으로 시작하는 네트워크 분석

최대 클리크

import networkx as nx
G = nx.barbell_graph(m1=5, m2=1)
nx.find_cliques(G)
<generator object find_cliques at 0x1043f1f68>
list(nx.find_cliques(G))
[[4, 0, 1, 2, 3], [4, 5], [6, 8, 9, 10, 7], [6, 5]]

네 개의 그래프: 앞의 두 개 5노드 클리크와, 간선으로 연결된 2노드 그래프 두 개.

Python으로 시작하는 네트워크 분석

Vamos praticar!

Python으로 시작하는 네트워크 분석

Preparing Video For Download...