인터넷 커뮤니티 사용자 댓글 특성을 이용한 사용자 관계 그래프 시각화 Relationship Graph Visualization using Internet Community Commnents 탁해성 부산대학교 컴퓨터공학과 tok33@pusan.ac.kr Abstract 인터넷이 활성화되고 온라인 커뮤니티가 늘어남에 따라, 인터넷에서 군집을 형성하여 여러 의견을 나누고 소통하는 일이 늘어났다. 이러한 현상은 인터넷에서도 사용자 사이에 서 관계망을 형성할 수 있게한다. 본 보고서에서는 지난 인터넷 커뮤니티 사용자의 사회 연 결망 특성 분석에서 수집한 게시물 정보를 활용하여 사용자 관계망에서 의미있는 관계를 추려내기 위한 방법에 대해 알아보고자 한다. 기존 에지 생성 방식에서 파악할 수 있는 정 보의 한계를 극복하기 위한 변경된 에지 생성 방식과 에지 분류 방식을 통해 관계망 변화를 알아본다. Keywords: Social Network, NetworkGraph Drawing, Social Network Analysis 1 개요 최근 스마트폰과 같은 모바일 기기가 보급됨에 따라 인터넷을 언제 어디서나 사용할 수 있는 환경이 제공되었다. 웹 서비스 접근성 증가는 시간과 공간의 제약이 없는 인터넷 상에서 수 많 은 소통 공간 증가로 이어지게 되었고, 이러한 현상은 웹 상에서 수많은 정보들이 쏟아지는 결 과를 초래한다. 현재 상용화 되어있는 facebook이나 twitter와 같은 소셜 네트워크 서비스에서 발생하는 빅 데이터를 활용하여 사회 관계망을 구축하거나 통계적 분석이 활발히 이루어 지고 있다 [1]. 특정 사용자들끼리 관심있는 분야에 대해 정보를 주고 받거나, 불특정 다수의 사용자 가 서로 다른 개인의 의견을 나누며 토론하는 의사소통이 현재사회의 오프라인 행동양식과 유 사해 짐에 따라 인터넷 속에서 사회 연결망을 구축하여 네트워크로 나타내는 노력이 이루어지 고 있다 [2]. 인터넷 커뮤니티의 사회 연결망 구성 방식에 대한 연구 이외에도 사용자들이 얘기 하는 주제에 의한 소통 방식에 대한 연구 [3]와 인터넷 커뮤니티에서 정보가 확산되는 과정에 1
서 형성되는 관계에 대한 연구 [4]가 이루어지고 있다. 실제 사회에서 하나의 집단을 가지고 할 수 있는 분석 방식이 다양하듯 인터넷에서 다양한 방면의 분석이 이루어지는 것을 확인할 수 있다. 본 보고서에서는 인터넷 커뮤니티에서 사용자들이 어떠한 관계를 나타내는지에 대한 연구 를 진행하고자 한다. 커뮤니티에서 작성된 게시물을 활용하여 사용자간 관계망 시각화를 위해 에지 생성 규칙과 에지 분류 방식을 정의한다. 정의한 규칙을 활용하여 생성한 관계망과 기존 방식에서 생성한 관계망의 차이를 분석함으로서 해당 생성 규칙 및 분류방식의 효율성을 검증 한다. 2장에서는 커뮤니티 사회 연결망 구성을 위해 국내에서 활성화되어 있는 야구 커뮤니티인 MLBPark의 게시물 특성을 분석한다. 3장에서는 커뮤니티의 게시물 및 댓글을 활용하여 연 결망을 구성하기 위해 필요한 노드 선정 및 에지 생성 방식에 대해 서술한다. 4장에서는 Big Graph 시각화 도구인 Gephi를 이용하여 사용자 연결망을 시각화 하고, 특정 조건에 따른 그래 프 변화량을 비교 분석한다. 끝으로 5장에서는 본 보고서에서 진행하면서 얻은 결과를 이용하 여 사용자 관계망 시각화에 대한 결론 및 추후 진행할 연구 방향에 대해 살펴보고자 한다. 2 분석대상 사이트 특성 분석 인터넷 커뮤니티의 사회 연결망 분석을 위해 국내에서 활성화되어 있는 야구 커뮤니티 MLB- Park를 활용하기로 한다. MLBPark는 야구 커뮤니티라는 한정된 분야의 커뮤니티임에도 불구 하고, 다양한 주제에 대한 게시물과 이에 대한 댓글이 달리는 것을 통해 의사소통이 활발하게 이루어지는 것을 확인 할 수 있다. 이 장에서는 이러한 특징에 착안하여 해당 커뮤니티의 게시 물이 가지는 특성에 대해 알아보고자 한다. MLBPark 내부에 있는 Bullpen 게시판에는 현재 약 이백삼십만개 정도의 글이 등재되어 있 으며, 하루에 약 4000개 정도의 글이 작성되는 것을 확인 할 수 있다. 본 보고서에서 게시물에 대한 분석을 시행하기 위해서, 2011년도 12월부터 2013년 2월까지의 약 130만개 정도의 게시물 을 수집하여 정보 분석을 시행하였다. 표1은 추출을 진행한 커뮤니티 게시판에 대한 분석 지표 를 나타낸 결과이다. 연결망 형성을 위해 사용된 게시물은 총 1,294,798개이며, 게시물 작성자 와 댓글 참여자를 합산한 참여 사용자 수는 36,408명이다. 게시물에 달린 댓글을 합산하여, 하 나의 게시물에 약 6.5개의 댓글이 달리는 것을 통계적으로 나타내었다. 표1의 결과를 통해 약 130만개의 게시물에 대해 830만여개에 달하는 댓글이 달려있는 것을 확인할 수 있다. 댓글의 수 만으로는 실제 사용자들이 말하는 바가 무엇인지 알 수 없다. 본 보고서에는 댓글의 내용을 활용하여 사용자간에 나타나는 관계를 분석하는 것이 아닌, 댓글이 나타나는 순서를 이용하여 관계를 분석하고자 한다. 댓글이 나타내는 순서의 의미를 분석하여 2
표 1: MLBPark 게시물 지표 분석 분류 값 비고 게시물 수 1,294,798 게시물 작성자 수 24,300 댓글 작성자 수 34,762 게시물 참여자 수 36,408 댓글 수 8,403,817 게시물 당 평균 댓글 수 6.5 실제 소통간에 발생한 댓글의 의미를 추려내기 위해서는 어떤 방식으로 관계를 맺을 것인지를 결정하는 규칙이 필요하다. 이는 다음 장에서 자세히 서술하고자 한다. 3 인터넷 사회 연결망 관계 선정 방안 MLBPark 커뮤니티 게시물은 댓글이 게시물을 직접적으로 가리키는지 위에 댓글에 대한 내용 을 언급하는 것인지 구조적으로 알기 어렵다. 이러한 특성을 고려하였을 때 그래프 구조를 활 용하여 사용자 관계망을 시각화 하는 것이 가장 효과적이라고 판단하였다. 게시판을 하나의 큰 그래프로 가정하였을때, 노드와 에지는 각각 커뮤니티에서 활동하는 실제 사용자와 댓글을 달 았을때 발생하는 연결관계를 의미한다. 임의의 사용자 n에 대해 최대 발생할수 있는 에지의 총 수는 Complete Graph에 방향성까 지 고려하였을때, 2n(n 1)개이다. 이는 커뮤니티에 참가하는 사용자의 수가 많을수록 에지의 수가 크게 증가하는 것을 알 수 있다. 따라서 사용자들 간에 연관관계를 선정하는 방식에 따라 에지 개수가 크게 좌우되는 것을 알 수 있다. 지난 보고서 [5]에서 정한 두가지 에지 생성 규칙 과 다르게 토론 형식의 글이나 일반 흥미의 글과 같은 다른 유형의 게시물에 대해서도 의미있 는 관계를 추려낼 수 있는 방식을 선정하고자 하여 아래와 같은 두가지 에지 생성 규칙을 본 보 고서에서 사용자 관계망을 시각화 하기 위해, 사용자들이 작성하는 게시물과 댓글 사이에 에지 를 생성하는 규칙은 두가지로 아래와 같다. 첫째, 임의의 게시물에서 댓글이 달리는 경우 해당 댓글의 앞에 언급된 댓글이나 작성자와 의 관계를 에지로 형성한다. 이때 이전 댓글 모두와 관계를 형성하는 것이 아닌 일정 거리까지 의 댓글과 관계를 가진다. 실제 댓글 작성자가 먼 거리의 댓글에 대해 언급하는 경우보다 이전 댓글 작성자에게 의견을 교환할 확률이 높다. 이를 해결하기 위해 거리 가중치를 부여한다. 일 정 거리 이는 아래 식과 같다. α i (α = 거리 가중치, i = 거리 ) 둘째, 한 게시물에 대해 댓글을 다는 행위는 게시물 작성자와 댓글 작성자간에 이미 연관관 계를 나타내는 것을 의미한다. 따라서, 게시물 작성자와 댓글 사용자 간에는 긴밀한 관계를 가 3
진다. 따라서 게시물 작성자와 중복되지 않는 댓글 작성자간에 에지를 생성한다. 해당 에지를 생성할때 연결되는 방향에 따라 형성되는 사이클의 수가 결정되기 때문에 댓글의 사용자로부 터 게시물 작성자의 방향으로 에지를 생성한다. 이는 지난 에지 생성 방식과 유사한 방식을 취 한다. 하지만 해당 에지 방향이 달라지게 되어 이전에 생성되는 사이클의 수보다 적은 사이클 을 만드는 장점을 지닌다. 두가지 에지 생성 규칙에서 첫 번째 규칙을 통해 생성된 에지의 거리 i안에 작성자가 있을 경우 계산된 값 대신 두 번째 규칙을 적용된다. 이는 해당 에지가 작성자와 댓글 작성자 사이 의 관계를 나타낼때 의미있는 관계를 중점적으로 부각 시키기 위해 필요하다. 그림 1: 게시물 작성자 및 댓글 작성자 리스트 예시 그림 1은 임의의 게시물에서 확인할 수 있는 사용자 목록이다. 위에서 정의한 에지 생성 규 칙을 적용하기 위해 거리 가중치를 0.8로 지정하고 최대 거리를 5로 하였을 때 아름 표 2와 같 은 에지의 수가 나타낸다. 표 2에서 가로축은 e i, j의 j를 의미하고, 세로 축은 i를 의미한다. 표 2: 에지 생성 규칙을 활용한 임의의 게시물 에지 생성표 A B C D E F V j A 0 2 1 1 1 0 5 B 2 0 0 0 0 0 2 C 2 2 0 0 0 0 4 D 2 2 1 0 0 0 5 E 2 2 1 1 0 0 6 F 2 1 1 1 0 0 5 Vi 10 9 4 3 1 0 27 표 2의 결과를 통해 실제 에지 생성 규칙에서 나오는 에지 가중치는 생성 횟수만을 의미하 기 때문에 전체 게시물에 대한 관계를 분석하는데 있어서 의미있는 값을 얻기 힘들다. 이를 첫 번째 에지 생성 규칙의 식을 활용하여 계산한 수치는 아래 표 3과 같다. 해당 결과를 통해 생성된 에지 수가 같더라도 거리 가중치에 의해 더 의미있는 에지를 추려 낼 수 있다. 이는 각 게시물에 대해 표 3과 같은 결과가 나올 경우, 일정 수치 이하의 값을 가지 는 에지는 그래프 정보로 추가하지 않는 방법으로 활용 가능하다. 또한 전체 게시물에 대해 생 성된 에지를 취합한 결과를 활용하여 일정이하의 가중치를 가지는 에지를 제거함으로서 그래 프 생성에 사용되는 에지 수를 줄일 수 있다. 이러한 결과를 그래프 시각화 도구인 Gephi를 활 용하여 분석해 본다. 4
표 3: 거리 가중치를 적용한 활용한 임의의 게시물 에지 생성표 A B C D E F V j A 0 1.21 0.51 0.64 0.80 0 3.16 B 1.80 0 0 0 0 0 1.80 C 1.64 1.31 0 0 0 0 2.95 D 1.51 1.05 0.80 0 0 0 3.36 E 1.41 0.84 0.64 0.80 0 0 3.69 F 1.80 0.33 0.41 0.64 0 0 3.18 Vi 8.16 4.74 2.36 2.08 0.80 0 18.14 4 에지 생성 방식에 따른 연결망 비교분석 본 보고서에서 그래프를 그리기 위한 데이터를 생성하기 위해 2장에서 수집한 130만여개의 게 시물 정보를 활용하여 노드와 에지를 형성한다. 기존에 표 1과 같이 36,408명에 대한 관계망을 시각화하는 것은 큰 데이터를 처리해야 하므로 이를 추려내기 위해 아래와 같은 작업을 수행 한다. 1. 수집한 게시물 데이터를 가공하여 게시물 및 댓글 작성자 목록을 생성한다. 2. 생성한 작성자 목록을 정렬하고 목록에서 중복된 작성자에 대해 나타난 횟수를 파악하 여, 고유한 작성자 및 나타낸 횟수를 저장하는 사전을 구축한다. 3. 구축한 사전을 이용하여 일정 횟수이하로 등장한 작성자를 목록에서 제거한다. 4. 각 게시물에 대한 작성자 목록에서 사전에 등장하지 않은 작성자 정보와 사전에 있는 작 성자가 목록에 연속하여 등장할 경우 한번만 작성한 것으로 정보를 가공한다. 5. 가공된 정보를 활용하여 3장에서 정의한 에지 생성 규칙에 따라 게시물 당 에지를 생성 한다. 6. 게시물에 대한 에지 정보에서 일정 수치 이하의 가중치를 가지는 에지는 제거한다. 7. 모든 게시물에 대한 에지 정보를 취합하고 일정 수치 이하의 가중치를 가지는 에지는 제 거한다. 8. 취합한 정보를 활용하여 그래프 정보 저장형식인 GraphML 파일을 생성한다. 9. 그래프 시각화 도구인 Gephi를 활용하여 연결망을 시각화하고, 특성을 분석한다. 본 보고서에서는 위와 같이 크게 9단계에 걸쳐서 노드 및 에지를 선별하고, 그 결과를 활용 하여 연결망을 형성하였을때 의미있는 정보가 발생하는지 알아보고자 한다. 정보의 가공이외 에도 연결망을 얼마나 효과적으로 시각화 해주는가에 대한 문제와 해당 연결망에서 나타나는 특성을 분석할 수 있어야 한다. 이에 대한 작업을 효과적으로 수행하기 위해 Gephi [6]를 활용 한다. Gephi는 오픈소스로 되어 있는 네트워크 분석 및 구축이 가능한 소프트웨어이다. 이 도 구는 그래프를 시각화 하는 작업 이외에도 필터링하는 기능과 정보 분석 그리고 파일형식을 변 5
환하여 저장하는 등의 그래프 관련 작업을 수행한다. 본 보고서에서 수행하는 작업은 시각화 가 주요 목적이 아닌 특성 분석이므로 정보가 얼마나 시각화 되어 있는지는 중점적으로 고려 하지 않는다. 이전 보고서에서 정의한 에지 생성 규칙을 활용하였을때 발생하는 에지는 아래 표 4와 같 다. 표 2와 표 4에서 볼 수 있듯이 생성 규칙을 변경하였을 경우, 게시물에서 발생하는 에지의 총 수는 증가한다. 하지만 이를 가중치와 연관하여 계산하였을때 기존에 정수로 판별된 에지 가중치보다 관계의 정도를 파악하는 지표로 삼을 수 있다. 표 4: 이전에 정의한 에지 생성 규칙을 바탕으로한 에지 생성표 A B C D E F V i, A 0 3 1 1 1 2 8 B 1 0 1 0 0 0 2 C 0 0 0 1 0 0 1 D 0 0 0 0 1 0 1 E 1 0 0 0 0 0 1 F 0 0 0 0 0 0 0 V, j 2 3 2 2 2 2 13 아래 그림 2는 수집한 게시물 정보를 바탕으로 게시물 당 에지를 생성하고, 2번의 필터링 과정을 통해 나타낸 인터넷 커뮤니티 연결망이다. 각각의 단계를 수행하는데 있어서, 1000번 이하로 등장한 사용자는 제거하였다. 그림 2의 연결망이 구성하는 총 노드의 수는 295개이며, 에지의 수는 2,181개이다. 시각화하는 가중치의 하한치를 변경함에 따라 에지의 개수가 변화되는 것을 확인할 수 있 으며, 참여율이 작은 사용자의 경우 가중치 변화에 따라 관계가 끊어지는 것을 알 수 있다. 5 결론 및 향후 연구 방향 본 보고서에서 에지 생성 방식에 따라 의미있는 정보를 추출할 수 있는 방안에 대해 알아보고 자 하였다. 하지만 MLBPark 커뮤니티의 특성상 한정되어 있는 사용자들이 게시물에 참여하 기 때문에 노드나 에지를 아무리 제거하더라도 하나의 큰 그래프를 형성하는 것으로 나타났다. 이는 의사소통이 빈번하게 일어나는 집단이 하나임을 뜻하며, 실제 분야가 다른 글에 대해서 대다수의 사람들이 의견을 공유하는 것으로 해석할 수 있다. 노드 및 에지의 수를 고려하지 않고 제시하는 에지 생성 규칙을 이용하여 연결망을 구축할 경우, 에지의 수가 너무 커서 시각화하는데 프로그램이 정상적으로 동작하지 않을 수 있다. 이 를 해결하기 위해 에지 생성 규칙 이외에도 연결망 구성을 위해 필요한 요소에 대한 연구가 필 요하다. 또한 현재 하나의 커뮤니티를 대상으로 연결망 구축 및 특성 분석을 시행하고 있기 때 문에, 표본 사이트를 선정하여 다른 사이트에서 나타나는 현재 분석하고 있는 MLBPark와 유 6
그림 2: Gephi를 이용한 커뮤니티 연결망 시각화 사한지 검증하고자 한다. 향후 연구로는 이러한 사회 연결망 특성을 웹에서 확인 할 수 있도록, yfiles for AJAX를 활 용하기 위한 방안에 대해 알아보고자 한다. 이때, 현재 연구되고 있는 Big Graph 시각화 문제 에서 나온 제시하는 시각화 알고리즘을 활용하여 육안으로도 알아보기 쉬운 연결망을 시각화 하고자 한다 [7, 8]. References [1] Haewoon. K, Changhyun. L, Hosung. P, and Sue. M, What is twitter, a social network or a news media, in Proceedings of the 19th international conference on World wide web. 2010, WWW 10, pp. 591 600, ACM. [2] Zhongbao. K and Changshui. Z, Reply networks on a bulletin board system, Phys. Rev. E, vol. 67, pp. 036117, Mar 2003. [3] Mrinmaya Sachan, Danish Contractor, Tanveer A. Faruquie, and L. Venkata Subramaniam, Using content and interactions for discovering communities in social networks, in Proceedings of the 21st international conference on World Wide Web. 2012, WWW 12, pp. 331 340, ACM. 7
[4] Eytan Bakshy, Itamar Rosenn, Cameron Marlow, and Lada Adamic, The role of social networks in information diffusion, in Proceedings of the 21st international conference on World Wide Web. 2012, WWW 12, pp. 519 528, ACM. [5] Haesung Tak, Analysis social network characteristics among the internet community users, Tech. Rep. TR-13-03-THS, Graphics Application Lab, Pusan National University, 2013. [6] Mathieu Bastian, Sebastien Heymann, and Mathieu Jacomy, Gephi: An open source software for exploring and manipulating networks, in International AAAI conference on weblogs and social media. AAAI Press Menlo Park, CA, 2009, vol. 2. [7] Rodrigues, Hanghang, Jia-Yu, Traina, Traina, and Faloutsos, Large graph analysis in the gmine system, Knowledge and Data Engineering, IEEE Transactions on, vol. 25, no. 1, pp. 106 118, 2013. [8] Sheng-Jie, Chun-Liang, Bing-Yu, and Kwan-Liu Ma, Ambiguity-free edge-bundling for interactive graph visualization, Visualization and Computer Graphics, IEEE Transactions on, vol. 18, no. 5, pp. 810 821, 2012. 8