'잡마켓'에 해당되는 글 1건

  1. 2012.08.13 네트워크 추론 (I)

네트워크 추론 (I)

Gos&Op 2012.08.13 19:21 |
Share           Pin It

네트워크에 대한 심도깊은 내용을 다루지는 않을 것이다. 그냥 최근에 책을 읽으면서 생각했던 부분들이나 관련된 내용을 자유롭게 논하고 싶다. 그리고 일단 (I)을 붙인 이유는 언젠가는 또 네트워크에 대한 다양한 얘기를 할 기회가 있을 것같아서 시리즈를 염두에 두지는 않았지만 그렇다고 한번의 글로 마무리지어질 것같지가 않아서다. 처음에는 그냥 간단하게 페이스북 노트에 적으려고 했지만 생각보다 길어질 것같아서 그냥 블로그에 글을 적기로 했다. 그리고 '추론'이라 적은 이유도 수학적으로나 실험적으로 검증되지 않고 그냥 그럴 것같다는 가설이기 때문이다.

최근 몇 년 사이에 네트워크와 관련된 많은 책들을 읽은 것같다. 네트워크의 속성이 네트워크사이언스의 역사와 관련된 것들이 대부분이고, 그 외에는 네트워크 또는 복잡계 또는 진화시스템을 사회학 등에 응용한 책들도 많이 읽었다. 그리고 명시적으로 네트워크와 관련된 것처럼 보이지 않지만 실상은 네트워크 복잡계를 다룬 책들이 많다. 인간 사회가 네트워크로 이뤄진 진화복잡계이기 때문에 네트워크를 명시하지 않더라도 사회현상을 밝히는 이론근거는 네트워크에 두고 있는 경우가 많다. 지난 몇 년 간 읽었던 모든 책을 기억해내지는 못한다. 그래도 대표적인 것으로는 알버트-라즐로 바라바시의 <링크>, 던컨 와츠의 <스몰월드> 정도가 네트워크 사이언스의 이해를 돕는데 좋은 레퍼런스가 될 듯하다. 그 외에 마크 뷰캐넌의 책들 (<사회적 원자> <넥서스> 등)이나  던컨 와츠의 <상식의 배반> 등은 네트워크의 속성을 이용해서 사회현상을 잘 설명해주는 책이다. 그리고 잘 알려진 말콤 그래드웰의 <티핑포인트>도 결국 네트워크에 대한 책이다. 네트워크에 대한 일반적 이해는 위의 책들을 참조 바란다. (별로 수학적인 내용을 다룬 것이 아니니 쉽게 이해할 수 있다.)

던컨 와츠의 스몰월드나 바라바시의 스케일프리 네트워크에서 많은 노드들과 연결된 노드, 즉 허브 Hub의 중요성을 잘 설명해주고 있다. 특히 스케일프리 네트워크가 일반적으로 네트워크의 일부의 실패가 네트워크 전체의 실패로 연결되지 않는 이유도 저런 허브들의 역할이 크다. 그러나 반대로 허브가 실패하면 네트워크 전체가 실패할 수 있는 개연성을 가지고 있다. 그런 의미에서 네트워크 전체의 관점에서 허브는 가장 중요한 노드들인지도 모르겠다. 한 네트워크에서 바로 연결되지 않은 노드 A와 B는 거의 예외가 없이 허브 H를 통해서 연결될 가능성이 높다. H를 통해서 한단계만에 연결되지 않더라도 H1, H2 등의 허브 2~3개 정도만 거치면 웬만한 (리프노드를 포함해서) 노드들이 연결될 수 있다. 이것을 기반으로 나온 이론이 바로 여섯단계분리다. 실증적으로 네트워크의 크기나 집접도에 따라서 노드들 간의 평균 거리는 6단계보다 적을 수도 있고, 더 클 수도 있지만, 사람들 사이에 그냥 6단계를 거치면 무조건 연결되는 것처럼 좀 과하게 알려진 개념이다.

네트워크 전체를 봤을 때, 허브 H는 매우 중요하다. 그런데 특정 노드 A와 B 사이 (A와 B는 바로 연결되지 않았다고 가정한다)에서도 여전히 H가 가장 중요한 노드일까? 허브 H가 네트워크 전체 노드와 연결된 수퍼허브라고 가정했을 때, A와 B는 H를 통해서 서로 연결되기 때문에 H는 A와 B 사이의 연결고리가 된다. 그런데 H와 연결된 노드는 A와 B를 포함해서 네트워크 전체 노드의 수와 같기 때문에 H의 입장에서 노드 A와 B는 그저 one of them에 지나지 않는다. 토폴러지 측면에서 노드 A와 B는 허브 H를 통해서 연결되지만, 실제 노드 A와 B 사이의 메시지가 허브 H를 통해서 서로 연결된다고 말하에는 좀 무리가 있다. 그런데 노드 A와 B 사이에 새로운 노드 C가 존재하고, 노드 C는 노드 A와 B (그리고 당연히 허브 H)와만 연결된 노드라고 가정해보자. 이런 상황이라면 노드 A와 B를 연결하는데, 노드 C가 네트워크 허브 H보다 더 중요한 역할을 한다는 것을 알 수가 있다.

허브 H가 네트워크 전체에서는 가장 중요한 노드임에는 맞지만, 특정 노드 A와 B의 상호작용 측면에서는 가장 중요한 노드가 아닐 수 있다는 것이 첫번째 네트워크 추론이다. 페이스북이나 트위터에서 친구/팔로워를 무수히 많이 가진 인물이 있을 것이고, 그 반대의 경우도 있을 것이다. 특정 집단에서 사람 A와 B 사이에는 공통의 친구로 팔로워가 많은 H가 존재하겠지만, H의 존재만으로 A와 B의 친밀도가 높을 가능성이 적다. 그리고 친구의 수가 매우 적은 C라는 인물이 A와 B 사이에 존재한다면 A와 B의 친밀도가 더 높을 가능성이 높다. 그런 측면에서 만약 A와 B 사이에 공통 친구로 H만을 가지는 경우와 C만을 가지는 경우에서 후자의 경우에 A (또는 B)에게 B (또는 A)를 친구로 추천해는 것이 더 맞는 추천알고리즘일거라 생각한다. A - H - B보다는 A - C - B가 더 작은 네트워크 또는 클릭 clique을 형성한다고 가설의 개연성이 더 높다.

그리고 최근에 네트워크를 기반으로 한 추천시스템 (협업필터링 Collaborative Filtering)을 고안하면서 이런 종류의 생각을 자주 하게 된다. 영화 추천시스템을 예로 든다면... A라는 인물은 100편의 영화를 봤고, B라는 인물은 10편의 영화를 봤다고 가정한다면 분명 A가 본 영화들 사이의 연관도보다는 B가 본 영화들 사이의 연관도가 더 높을 가능성이 높다. 건전한 가정으로 A는 다양한 영화를 봤을 가능성이 높고, B는 특정 주제의 영화만을 봤을 가능성이 높다. 그런데, 역으로 A는 특정 카테고리의 영화광이지만, B는 그냥 인기있는 영화만 골라봤을 가능성도 있기 때문에, 앞의 가정이 전적으로 misleading할 수도 있다. 후자라면 앞의 네트워크 추론/가설은 틀린 것이 된다. 영화의 관점에서 볼 때, A는 1000만 관객이 봤고, B는 1만명이 봤다고 가정한다면 A를 본 관객의 분포보다는 B를 본 관객의 분포가 더 균일하리라는 가정할 수 있다. 그러나 또 역으로 B는 완전히 임의의 사람들이 봤다고 가정할 수도 있을 듯하다. 네트워크 추론이 틀린 것일까?

또 하나 재미있는 사실이 있다. 구직자들의 대상으로 설문해보면 현재 직장에 취업하기 위해서 가까운 지인들보다는 그냥 알고만 지내는 사람들로부터 취업정보를 얻은 경우가 더 많다라는 유명한 발견이 있다. 이 발견대로라면 여전히 긴밀한 네트워크보다는 방만한 네트워크, 즉 허브가 더 중요하다는 것을 암시하는 것같다. 그런데 긴밀한 연결 사이에는 서로의 호불호 정보를 너무 잘 알기 때문에 그를 미리 가정해서 적당한 자리를 추천해주지 않는 경우를 생각해볼 수가 있다. 헤드헌터를 통해서 삼성이나 SKP 쪽의 스카우팅 제의를 자주 받는데, 그런데 정작 삼성이나 SKP에 다니는 직원들로부터는 리크르팅 제의를 받아본 적이 없다. 헤드헌터는 잡마켓에서 허브 역할을 하고, 특정 회사의 직원들은 거의 리프노드에 해당된다. 리프노드는 서로에 대해서 더 잘 알기 때문에 '설마 저 사람이 이 포지션을 제안하면 받아들일까?'를 고민해보고 아주 적당한 자리가 아니면 애초에 포기해버리지만, 헤드헌터들은 그 사람의 기본적인 정보 (학위나 현재 직장 정도)만을 알고 있기 때문에 무조건 미끼를 던저보고 물리면 낚고 그렇지 않으면 포기해버기 때문에 쉽게 잡오퍼링을 할 수가 있다. 특정 인에 대한 가정이 없이 쉽게 오퍼를 주기 때문에 오히려 성공률이 더 높은지도 모른다. 

소개팅 마켓에서도 어쩌면 비슷한 역학이 작용한다. 너무 친한 친구 둘을 엮어주는 것은 위험 부담이 너무 크다. 잘 되면 좋지만, 그렇지 못한 경우에는 양쪽 모두와의 관계가 서먹해지기도 하고... 또 잘 된 경우라도, 나에 대한 비밀을 너무 많이 공유한 두 명의 결합은 조금 꺼려지는 부분이기도 하다. 나의 어릴 적 비밀을 알고 있는 친구가 갑자기 합류해서 이런저런 비밀을 모두 까발리는 경우.. 에휴.. 그렇기 때문에 적당히 알고 적당히 관계된 두 사람을 편하게 소개시켜주는 것이 더 일반적일 수도 있는 것같다. 그리고 또 친밀한 노드의 수는 제한되어있지만, 적당히 알고 있는 지인의 수는 많기 때문에 연결의 가지수도 더 많기 때문에 그렇기도 하다. 비이해관계에서는 긴밀한 중간 노드가 더 중요하게 역할하고, 이해관계에서는 친밀도가 낮은 중간 노드가 더 중요한 역할을 하는 건지도 모르겠다.

댓글을 달아 주세요