gimmesilver's blog

Agbird.egloos.com

포토로그



그래프 이론과 소셜 네트워크 분석 예 데이터분석

관련 링크
 graph theory 1: http://20bits.com/articles/graph-theory-part-i-introduction/

 위에 3개 링크는 네트워크 분석에 필요한 기초적인 그래프 이론을 설명한 글이다. 1,2 에서는 주요 용어 및 대수 표기법과 개념에 대해 간략하게 설명하고 있으며 3에서는 이런 이론을 토대로 실제 소셜 서비스 등에서 네트워크 분석을 어떻게 활용할 수 있는지 예를 들어 설명하고 있다. 
 마케팅 관점에서 소위 '입소문(word-of-mouth)' 효과를 최대한 내기 위해선 어떤 사람들에게 타켓 마케팅을 해야 할 지 결정할 때 네트워크 분석을 사용할 수 있다. 즉, 사람들 간의 관계 네트워크를 분석해서 가장 큰 영향력을 발휘하는 사람을 찾아 그들에게 마케팅을 집중하면 효율적인 마케팅이 가능한 것이다. 
 이런 타켓 선정 시 가장 쉽게 생각할 수 있는 것이 '가장 많은 사람들과 접촉하는 사람' 즉, degree centrality 가 높은 사람이다. 여기서 더 나아가 직접적으로 접촉하는 사람(degree)은 적지만 여러 집단 간의 연결고리가 되는 핵심 인물을 찾는게 필요할 수도 있는데 이 때는 eigenvector centrality 나 혹은 betweenness centrality 등을 이용할 수 있다. 

<그림1. degree가 높은 사람, 출처: http://20bits.com/articles/graph-theory-part-iii-facebook/>

<그림 2. degree는 낮지만 영향력이 큰 사람, 출처: 상동>

 마지막 링크는 소셜 네트워크 분석을 이용한 또 다른 활용예인데 어떤 상품이나 소문이 사회 네트워크 상에서 어떻게 퍼져나가는지를 예측하는데 사용하는 모델 두 가지를 소개하고 있다. 가령 우리는 주위에 애플빠가 일정 수 이상 늘어나면 덩달아 자신도 애플빠가 되는 경우가 있는데 이런 관점에서 확산 현상을 설명하는 것이 threshold model 이고, 뽐뿌질에 능한 애플빠에 의해 점차 주변 사람들이 애플 제품을 지르게 되는 것으로 확산 현상을 설명하는 것이 cascading model 이다.

 위 글에서는 초기 제품 확산에는 cascading model로 설명이 가능하지만 일정 규모 및 기간이 지나 성숙된 상황에서는 threshold model 이 더 적합하다고 한다. 결국 적절히 혼합해서 사용하라는 얘기...


덧글

  • mansumansu 2011/12/15 20:29 # 답글

    안녕하세요. 우연찮게 "저와 함께 대용량 게임 데이터를 분석하실 분을 찾습니다." 포스팅을 보다가 이 글을 읽게 되었습니다. 전반적으로 잘 정리하신 것 같으나 independent cascading model은 (거칠게 말하자면) 한 actor가 어떤 사건 혹은 환경 따위에 노출될 때 그것에 동조 혹은 동화되는 것이 동전 던지기와 같이 결정되는 것을 말합니다. 그렇게 된다, 안 된다의 문제. 보통 이 경우 예로 드는 게 '전염병'입니다. 전염병의 경우 감염된 주변인이 아무리 많아도 전염 될 수도 있고, 안 될 수도 있지요. 즉, independent cascading model은 threshold model처럼 네트워크 상의 neighbor들에 의해 '점차적으로' 영향을 받아 확산되는 것과는 가정이 다릅니다. 물론 두 model이 확산의 현상을 설명할 수 있는 도구로 쓰일 수는 있지만, 그 확산이 influence에 기인한 것인지, homophily에 기인한 것인 지를 설명하는 것은 또 다른 문제로 남습니다.
  • gimmesilver 2011/12/19 21:05 #

    음...솔직히 답변하신 내용이 정확히 제가 언급한 내용과 어떻게 다른지 모르겠네요. ^^;
    말씀하신 것처럼 cascading model은 일종의 감염 모델이고 따라서 뽐뿌질에 의한 제품 구입을 감염 확률에 의한 확산으로 설명할 수 있습니다. 근데 어느 부분이 문제가 되는 거죠?
  • mansumansu 2011/12/22 22:36 #

    글쓴이가 그렇게 의도하셨다고 말씀하시니 더 할 말은 없습니다만, 텍스트만 놓고 봤을 때 본문에 쓰신 threshold model과 independent cascade model에 대한 설명에서 공통적으로 order-independence에 대한 가정을 읽을 수 없었기에 위와 같은 댓글을 단 것입니다.

    덧1) 뽐뿌질을 얼마나 잘하는 지를 constant하다고 가정을 하더라도, graph 상에서 뽐뿌질에 능한 애플빠에게 영향을 받은 사람 또한 neighbor들에게 뽐뿌질을 하게 되는 애플빠가 된다라는 가정이 없으면 contagious node는 더이상 없게 될 것이며, 2-hop 이상 떨어진 node에게까지 그 영향이 확대될 확률은 0이 되겠지요. (전염병의 확산과 다른 점입니다.) 그래서 제품 확산을 설명하는 데에 본문의 마지막 문장에 쓰신 바와 같이 두 모델을 적절하게 혼합해서 쓰게 되는 거라고 보이고요.
  • gimmesilver 2011/12/23 17:41 #

    두 모델 간 제품 구입 조건의 차이를 중점적으로 비유를 들다보니 말씀하신 것처럼 '확산'에 대한 내용은 굳이 언급하지 않았었는데 오해가 생겨 버렸군요.
    당연히 제품 확산에 cascading model을 적용하려면 말씀하신 것처럼 제품을 산 사람 역시 다른 사람의 구입에 영향을 준다는 가정이 있어야 겠죠.
    어쨌든 좋은 말씀 감사합니다. ^^
    그리고 원문에서 두 모델을 혼합해서 사용하는 것이 적절하다고 한 이유는 제품 점유율이 특정 포인트를 넘어서게 되면 homophily에 의한 확산으로는 예측하기 힘든 수준으로 제품이 확산되기 때문에 threshold model을 도입해야 한다고 주장한 것 같습니다.
댓글 입력 영역