본문 바로가기

공부/네트워크과학48

[네트워크이론] Network Assortativity (네트워크 동류성) 네트워크 구조에는 동류성(Assortativity)이라는 특징이 있다. 동류성은 같은 종류의 사람들끼리 뭉치는 경향을 나타낸다. 다음 그림을 보면 쉽게 이해할 수 있다. Assortative network(동류성 네트워크)에서는 link를 많이 가진 node 즉, hub는 hub들 끼리 뭉쳐있다(중심부). 또 적은 link를 가진 node들은 적은 link를 가진 node들 끼리 뭉쳐있다(외곽부). Disassortative network(비동류성 네트워크)에서는 link를 많이 가진 node와 link를 적게 가진 node들이 연결되어있다. 이렇게 Assortativity는 네트워크의 구조를 결정하는 중요한 요소이다. 같은 degree분포의 network 여도 assortativity와 같은 특징들은 .. 2018. 7. 4.
[시뮬레이션] python으로 BA 모델 만들기 BA모델을 이해하더라도 실제 구현하기는 힘이 든다. BA모델 특징상 노드가 10,000 개 이상의 아주 큰 network 에서 그 특징이 뚜렷히 나타나기 때문이다. 그래서, BA모델을 만들어볼 수 있는 방법을 여러가지 소개해 보는 글을 쓰기로 했다.BA모델 이론적 배경 관련 포스팅 2017/10/14 - [연구/리뷰] - [논문소개] Emergence of Scaling in Random Networks2017/10/22 - [연구/리뷰] - [논문소개] Barabasi-Albert model (바라바시 알베르트 모델)2018/04/26 - [연구/연구] - [연구] BA 모델 고찰2018/05/10 - [연구/연구] - [고찰] BA 모델 고찰2 환경은 python 3.5를 기반으로 작성하였다. 방법1.. 2018. 6. 5.
[고찰] BA 모델 고찰2 영국에서 맥스란 친구가 온 후 BA 모델을 계속 살피고 있다. BA모델은 성장요소와 성장규칙이 같은 Layer에 존재한다. 여기서 성장요소는 Node와 Edge의 추가이고, 성장규칙은 Node가 지닌 Edge의 수이다. 그래서 엄청나게 많은 수의 Node와 Edge가 추가되면 평균장 근사를 이용한 다음 식이 동작한다. 이 식에서 k_i는 Node i가 지닌 Edge의 개수를 나타내는데, 그 증가율이 현재 자신의 k_i 에 비례한다. k_i가 k_i의 증가율에 비례한다는 것은 k_i가 양의 feedback관계 속에서 Fractal 구조를 형성한다는 것을 의미한다. 그리고 이것이 k_i의 scale-free 네트워크를 생성하는 것이다. BA모델의 자세한 내용에 관한 이전 글 2017/10/22 - [연구/리.. 2018. 5. 10.
[고찰] BA 모델 고찰 바라바시 알베르트의 선호적 연결에 의한 성장 모델은 척도 없는 네트워크를 생성한다. 실제 데이터에서 발견되는 척도 없는 네트워크의 생성 원인을 설명해 줄 수 있는 모델이다. 2017/10/22 - [연구/리뷰] - [논문소개] Barabasi-Albert model (바라바시 알베르트 모델) 저번에는 기본적인 부분을 살펴봤는데 이번에는 의미를 조금 더 생각해 보았다. BA 모델은 성장한다. 그런데 골고루 성장한다. 골고루 성장한다는 것의 의미는 공평하게 성장한다는 뜻은 아니다. 주변에 많은 노드들을 지닌 노드는 새로운 노드가 유입될 확률이 높기 때문이다. 하지만, 골고루 성장한다고 표현한 이유는 노드가 지니는 엣지의 수 k와 그러한 노드들이 존재하는 빈도 P(k)가 거듭 제곱의 분포를 유지하기 때문이다... 2018. 4. 26.
[네트워크이론] Link communities (링크 커뮤니티) 점(노드)과 선(엣지)으로 나타내는 네트워크 구조를 통해 새로운 정보를 얻는 것은 참 매력적이다. 커뮤니티 추출법은 네트워크의 구조 속에서 노드간, 엣지간의 관계를 통해 커뮤니티를 추출하는 방법이다. 저번에는 네트워크 속 커뮤니티의 모듈성을 이용한 커뮤니티 추출법에 대해 공부했었다. 2018/02/18 - [연구/연구] - [네트워크이론] Network Modularity 실제 사용 예 Girvan-Newman algorithm 오늘은 새로운 관점의 커뮤니티 추출법 "Link Community"에 대해 소개한다. Link community는 Edge를 기반으로 커뮤니티를 추출한다. 지난번의 Modularity를 이용한 방법과 다른 점은, 한개의 Node가 여러 개의 Community에 소속될 수 있다는 .. 2018. 4. 15.
[네트워크이론] Network Modularity 실제 사용 예 Girvan-Newman algorithm [이전 글] 2018/02/18 - [연구/연구] - [네트워크이론] Network Modularity (네트워크의 모듈성) 이전 글에 이어서 이번에는 실제 예제로 계산해 보는 모듈성과 모듈성을 이용한 Girvan-Newman Community 추출 Algorithm에 대한 글을 써본다. 예제로는 30명이 함께 있는 네트워크에서 1팀(8명), 2팀(10명), 3팀(12명)으로 구성된 내부 커뮤니티를 검출할 수 있을까 이다. 이를 위에 다음과 같이 설정하여 사회 네트워크를 구성하고, 이 때의 Modularity를 구해보는 과정을 Python을 이용하여 진행해보자. 설정 1. 각각의 사람은 0~29의 숫자로 표현한다. 2. 팀 설정1팀: 0~72팀: 8~173팀: 18~29 3. 커뮤니티 l에서 커뮤니티 l.. 2018. 2. 18.
[네트워크이론] Network Modularity (네트워크의 모듈성) 네트워크를 바라보면, 네트워크 속에서도 끼리끼리 뭉쳐있는 커뮤니티가 보이곤 한다. 다음 네트워크를 예로 들어보자. 네트워크지만, 위쪽 아래쪽 왼쪽으로 끼리끼리 모여있는 3개의 작은 커뮤니티가 있는 것처럼 보인다. 그렇다면 이를 어떻게 찾아낼 수 있을 것인가? 위의 그림의 3개의 커뮤니티에 대한 label이 존재한다고 생각해보자. 이 때, 이 네트워크의 커뮤니티 구조는 얼마나 모듈화 되어 있을 것인가? Modularity(모듈성)는 이를 정량적으로 나타내기 위해 등장했다. Modularity는 커뮤니티 내부에 펼쳐져 있는 링크들이 무작위적인 연결들과 비교했을 때 얼마나 더 많은지 정량화 한다. 구체적으로는 원래의 네트워크 G와 각 노드의 링크의 개수를 유지한 체로 대상을 랜덤하게 변화시킨 네트워크 G'와 .. 2018. 2. 18.
[TED] A visual history of human knowledge(시각적으로 표현한 인간 지식의 역사) - Manuel Lima 시각적으로 표현한 인간 지식의 역사라는 TED 영상이다. 우측 아래에 자막을 눌러보면 한국어 자막이 있다. 인간의 지식과 철학이 발전함에 따라 인간의 지식은 "계층" 구조에서 "나무" 구조로, "나무" 구조에서 "네트워크" 구조로 발전되어져 왔다고 한다. 인간의 지식이 확장되며 이를 담을 수 있는 구조 또한 진화해온 것이다. 흥미로운 영상이다. 2018. 2. 12.
[논문소개] Scale-Free Networks Generated by Random Walkers 바라바시 선생님이 척도불변성을 지닌 네트워크의 성질을 네트워크의 확장성과, 새로운 노드는 이미 연결을 많이 가지고 있는 노드에 연결되려는 성질(Preferential attachment)로 설명한 논문 Emergence of Scaling in Random Networks (http://mons1220.tistory.com/47)을 읽고 한동안 연결이 지니는 선호성에 대해 생각해보며 가진 궁금증이 있었다. Preferential attachment 는 마치 모든 노드들이 얼마나 연결을 지니고 있는지 미리 알고 있는 것처럼 느껴진다. 누가 얼마나 연결을 지니고 있는지 미리 알고 있고, 그에 따른 확률로 새로운 연결이 생성된다. 연구실에서 네트워크 연구를 하고 있는 친구와 나는 이러한 결정론적인 시각이, 모.. 2017. 12. 30.