시맨틱 소셜 네트워크를 향해, Part 2: FOAF 기반의 소셜 네트워크 분석 |
 |


김학래 sonagi,kim@gmail.com
DERI(Digital Enterprise Research Institute Galway, Ireland)의 연구원으로 시맨틱 웹, 웹 2.0, 소셜 네트워크, 지식 경영 등에 관심을 갖고 연구하고 있다. 현재 DERI Lion, Nepomuk 프로젝트를 수행하고 있다.
2007년 9월 4일
|
|
 |
|
연재순서
1회(2007년 7월): 시맨틱 소셜 네트워크와 FOAF(Friend Of A Friend)
2회(2007년 9월): FOAF 기반의 소셜 네트워크 분석
얼마 전 개그우먼 박경림의 결혼식이 큰 화제가 되었다. 박경림의 결혼식은 많은 사람에게 특별한 재미를 던져 준 것 같다. (정확히는 모르지만) 연예인 결혼식을 소개하는 프로그램에서 대부분의 초점은 결혼식과 결혼식에 온 친구들에게 맞춰지는 것 같은데, 박경림의 결혼식은 친구에 초점을 맞춰 소개되었던 것 같다. 알려진 대로 박경림은 연예계에서 마당발이라고 하는데 결혼식에 온 친구들을 보고 이 사실을 확인할 수 있었을 것이다. 즉, 우리는 박경림의 결혼식에 온 하객들을 보며 ‘어, 누가 누구와 친한가 보다’ 하는 식의 관계를 이끌어 낼 수 있다.
소셜 네트워크 분석(Social Network Analysis)의 목적은 특정한 사람, 그룹 또는 조직의 관계를 분석하는 것인데 관계를 분석하기 위한 사건이나 범위를 구체화할 필요가 있다. 박경림 결혼식의 경우, ‘결혼식에 온 하객’이 네트워크를 분석하는 사건 또는 범위가 될 수 있을 것이다. 소셜 네트워크 분석이 의미 있는 것은 복잡한 그래프에 있는 것이 아니라 보이지 않았던 관계를 찾아 주어진 범위 내의 전체 관계를 보여주는 데 있다. 우리가 보았던 결혼식 하객들은 1차적으로 우리가 관계를 유추할 수 있는 기준점이 될 수 있지만 하객들의 전체 네트워크를 만들거나 관계를 찾아내기란 쉽지 않다.
박경림의 결혼식 하객들에 대한 네트워크 분석을 직접 하지 않고 유사한 예를 통해 비슷한 결과를 얻을 수 있을 것 같다. 2002년 10월 23일 종영된 KBS 2 TV ‘야! 한밤에’의 ‘보고 싶다 친구야’에 출연한 연예인들의 친분 관계 분석은 박경림의 결혼식에 많은 하객이 찾은 이유를 설명하는 데 도움을 줄 수 있다(쉽게 설명되었기 때문에 먼저 이 글을 읽어보기를 권한다).
이 프로그램은 스타 두 명이 밤 늦게 그들의 친구에게 전화를 걸어 친구들을 녹화장소로 불러내어 친분 관계를 확인하는 방식으로 진행되었다. 방송을 통해 우리는 1차적인 관계를 볼 수 있었지만 연예인의 전체 네트워크를 볼 수 없었는데 소셜 네트워크 분석을 통해 부분적인 관계(프로그램에 초대된 사람들의 관계)는 얻을 수 있다(그림 1). 박경림의 경우, 7명의 친구를 불렀고 6명의 친구로부터 전화를 받아 친분이 있는 사람은 13명으로 분석되었다. 박경림 다음으론 홍경민(11명), 신승훈(9명), 조영구(8명), 핑클(8명) 순으로 나타났다.

그림 1. '보고싶다 친구야' 출연 연예인 전체 친분 관계 지도(출처: http://star.cyram.com/Images/whole.jpg)
그렇다면 FOAF를 이용했을 때 얻을 수 있는 장점은 무엇인가? 단순하게 표현한 나에 대한 정보가 소셜 네트워크를 분석하는 데 유용한 방법인지 의문이 들 수 있다. Part 1이 FOAF 문서를 만들기 위한 기본 단계라면 Part 2에서는 FOAF 문서를 소셜 네트워크 분석에 사용한 사례를 소개한다. 먼저 FOAF를 시각적으로 보여주는 Visual FOAF Explorer를 살펴보고, FOAF Explorer를 이용해 온라인에서 친구를 추가하고 관리할 수 있는 방법을 소개한다.
Visual FOAF Explorer
Visual FOAF Explorer(이하 VFE)는 Force Directed Graph(자바 스크립트 기반 그래프 라이브러리)를 이용해 FOAF 문서에 있는 정보를 표현해 준다. FOAF 문서에 표현된 사람들(foaf:Person)은 노드로 표현되고 작성자와 점선으로 연결되어 노드들 사이의 관계를 시각적으로 나타낸다. VFE는FOAF의 기본 속성인foaf:knows 관계에 초점을 두고 있기 때문에 FOAF 명세서에 있는 다양한 형식의 속성들을 표현하거나, 특정 노드로부터 발생하는 관계의 흐름을 표현하는 데 한계가 있다.
그림 2는 VFE를 이용해 필자의 FOAF를 나타낸 결과다. 필자의 FOAF는 필자(sonagi)와 연결된 친구들의 정보를 갖고 있는데 연결되어 있는 사람들 사이엔 직접적인 관계를 갖고 있지 않다. 즉, 다른 노드들 사이의 관계는 다른 FOAF에 있는 정보들을 분석해 얻을 수 있다.
자신의 FOAF 문서가 없는 사람은 Part 1에서 소개한 foaf-a-matic을 이용해 FOAF를 만들고 테스트해 볼 수 있다. 다른 사람의 FOAF 파일을 찾아 테스트해 볼 수 있는데, 구글에서 ‘foaf filetype:rdf’로 검색하면 약17만 7000개의 FOAF 파일을 찾을 수 있을 것이다. 원하는 FOAF 파일의 URL을 ‘FOAF URL’에 입력해 비슷한 결과를 얻을 수 있다.

그림 2. Visual FOAF Explorer
FOAF Explorer
FOAF Explorer는 시각적인 기능은 지원하지 않지만 FOAF를 검색하거나 추가할 수 있는 다양한 기능을 제공한다. VFE에서 처리하지 못하는 파일을 FOAF Explorer를 이용해 처리해 볼 수 있다(예. Ivan Herman의 FOAF). 원하는 FOAF 파일의 URL을 입력하면 해당 FOAF의 이름, 전자우편, 홈페이지 등과 같은 정보를 보여준다. 출력된 결과에서 이름 옆의 아이콘 을 클릭하여 특정한 사람을 자신의 FOAF에 추가할 수 있다.

그림 3. FOAF Explorer
그림 3에서 ‘Herman Ivan’ 혹은 ‘knows:’ 항목의 이름 옆에 있는 아이콘 을 클릭하여 자신의 FOAF에 선택한 사람을 추가할 수 있다. 아이콘을 클릭하면 친구 추가를 위한 인터페이스(그림 4)가 나오며 이곳의Location에 자신의 FOAF URL을 입력하고 Set을 클릭하면 선택한 사람을 추가할 수 있다. 선택된 사람은 다양한 관계(a Friend of, a Acquaintance of, a sibling of, a spouse of, a Parent of 등)로 추가되는데 예를 들어, ‘a Acquaintance of’ 관계를 선택하면 FOAF에 rel:acquaintanceOf로 추가된다. 변경된 FOAF 문서는 하단의 텍스트박스를 통해 확인할 수 있다.

그림 4. 자신의 FOAF에 친구추가하기
지금까지 FOAF가 무엇이고 어떻게 자신의 프로파일을 만들고 사용할 수 있는지에 대한 기본적인 내용을 살펴보았다. 그러나 FOAF가 실제 소셜 네트워크에 어떻게 적용될 수 있는지 의문이 있을 것이다. 구체적인 사례를 소개하기 앞서 소셜 네트워크에서 쓰이는 기본 개념을 먼저 살펴보자. 네트워크에서 관계의 구조적 특성은 관계의 밀도(density)나 중심성(centrality)을 수치적으로 계산하여 확인할 수 있다.
- 밀도는 소셜 네트워크에서 어떤 노드가 다른 노드와 어느 정도 연결되어 있는지 나타내는 척도다.
- 중심성은 특정한 노드가 네트워크에서 어느 정도 중심에 있는지 나타내는 척도로 정도(degree), 근접성(closeness), 매개성(betweenness) 등의 척도로 표시된다.
한 노드의 degree는 노드들이 연결된 네트워크에서 인접한 노드 개수를 말한다. 방향성이 있는 네트워크에서 연결선은 방향에 따라 들어오는 선과 나가는 선으로 구분되는데 이때 한 노드의 in-degree는 노드로 들어오는 연결선 개수를 말하고, out-degree는 그 노드에서 나가는 연결선 개수를 말한다. 소셜 네트워크 분석에서 in-degree는 인기도 측면에서, out-degree는 확장성을 가늠할 수 있는 척도로 해석할 수 있다. 따라서 정도 중심성(degree centrality)은 특정 노드에 연결된 연결선을 측정하여 네트워크에서 얼마나 중심에 위치하는지 측정하는 방법으로 내향중심성(in-degree centrality)과 외향중심성(out-degree centrality)으로 측정한다. 네트워크의 노드들이 특정 노드와 연결되는 빈도가 높을수록 중심성이 높다. 그림 5에서 노드 3은 두 개의 in-degree와 두 개의 out-degree를 갖고 있으며 다른 노드들과 비교하여 연결선이 많기 때문에 주어진 네트워크에서 중심도가 가장 높다. 따라서 노드 3은 네트워크의 허브(hub) 역할을 할 수 있다.

그림 5. 네트워크의 연결과 정도
근접성(closeness centrality)은 한 노드가 다른 노드에 얼마나 가까운지 측정하는 개념으로 노드 사이의 거리가 중심성을 측정하는 척도가 된다. 그림 5에서 노드 1은 근접성 개념으로 보면 2에 연결될 가능성이 4에 연결될 가능성보다 크다.
매개중심성(betweenness centrality)은 한 노드가 네트워크에서 서로 다른 노드들을 연결시키는 매개 정도로 중심성을 측정하는 방법이다. 소셜 네트워크 분석에 대해 자세한 정보는 참고 문헌들을 참조하기 바란다.
Flink
Peter Mika가 개발한 Flink는 FOAF 데이터를 이용해 소셜 네트워크를 분석하여 시각적으로 보여준다. Flink는 다양한 방법으로 FOAF 기반의 네트워크를 분석해 주는데 웹 페이지의 메뉴를 통해 서로 다른 방식의 네트워크 분석 결과를 볼 수 있다. 다만 그래프를 이용해 시각적으로 보여주는 몇 가지 도구는 상당한(?) 시간이 걸리기 때문에 결과를 보기 위해 인내가 필요하다.
- 네트워크: 사람 사이의 관계, FOAF 문서에 있는 정보를 기반으로 네트워크 분석
- 온톨로지: FOAF에 표기된 관심 주제의 네트워크
- 맵: 위치(국가)에 따른 네트워크
- 통계: 수집된 FOAF 파일의 소셜 네트워크 분석
통계 자료를 통해 시맨틱 웹 연구자들의 관계를 전체적으로 파악할 수 있다. 이 자료는 2007년 8월 12일 기준으로 875명의 FOAF 파일과 1만 3325개의 연결선을 갖고 있다. 흥미로운 점은 ‘Stefan Decker’가 Indegree(1위)/closeness(2위)/betweenness (1위) 척도에서 모두 상위에 랭크되어 있어 FOAF 네트워크를 기준으로 중심도가 가장 높다고 말할 수 있다. 다시 말해 시맨틱 웹 분야에서 ‘Stefan Decker’는 박경림과 비슷한 네트워크 구조를 갖는다고 할 수 있다.
Indegree 항목의 1~3 순위에 있는 연구자인 ‘Stefan Decker’, ‘Steffen Staab’, ‘York Sure’는 betweenness 항목에서도 각각 1, 4, 5 순위에 위치해 연구자들을 연결해 주는 허브 역할도 함께 하고 있음을 볼 수 있다. 반면 ‘Dieter Fensel’, ‘Rudi Studer’, ‘Sean Bechhofer’는 각각 Indegree 항목에서 5, 6, 12 순위에 위치했지만 betweenness 항목에선 각각 12(-7), 24(-18), 27(-15) 순위에 올라 있다. 이런 결과는 개별 연구자가 많은 사람으로부터 알려지긴 했지만 1~3 순위에 있는 연구자보다 네트워크를 연결해주는 데 있어 중심성이 약하다고 해석할 수 있다.

그림 6. Flink에 나타난 FOAF 통계
네트워크 메뉴를 클릭하면 알파벳으로 구분된 이름들을 볼 수 있는데 특정한 이름(예: Enrico Motta)을 선택하면 그 사람의 소셜 네트워크를 볼 수 있다. 왼쪽 그래프는 Enrico Motta와 연결된 사람을 시각적으로 보여주고 있고 오른쪽 화면에서는 소셜 네트워크 척도를 수치화해 보여준다. 더불어 화면 하단에는 FOAF 문서에 포함된 정보를 상세히 보여주고 있다.

그림 7. Enrico Motta의 소셜 네트워크
그림 8은 FOAF에 있는 주제들을 이용해 주제들 사이의 네트워크를 구성한 것으로 주제에 따라 연구자들의 그룹을 분류할 수 있다. 그림 9는 대륙 별로 FOAF 작성자를 구분하여 시각적으로 표현한 것으로 유럽의 연구자들을 보여주고 있다. 시각적으로 데이터를 보여주는 것이 소셜 네트워크 분석의 주된 목적은 아니지만 여러 가지 형태의 군집화된 정보를 보여주는 것은 의미가 있다. 그림 6에 있는 정보로 소셜 네트워크 소프트웨어를 이용해 새로운 분석을 해 보는 것도 재미있는 시도가 될 것이다. 다음 링크에서 관련 프로그램에 대한 정보를 찾을 수 있다(개인적으로 Pajek을 추천한다).

그림 8. Topic을 이용한 네트워크

그림 9. 유럽의 연구자들
마치며
FOAF는 온라인에 표현된 개인 정보와 이들 사이의 연결된 관계를 파악할 수 있는 중요한 데이터가 될 수 있다. VFE와 FOAF Explorer는 FOAF 정보를 시각적으로 보여주고 정보를 추가할 수 있는 기본 기능을 제공한다. Flink의 경우, FOAF를 기반으로 다양한 소셜 네트워크 분석을 보여주고 있다는 면에서 의미 있는 결과일 수 있지만, FOAF 데이터가 특정한 연구 그룹에 한정되어 있다는 한계가 있다. 그러나 소개한 도구를 포함해 대부분의 도구들이 프로토타입에 가깝기 때문에 상업화된 서비스로 발전시키는 데 시간과 노력이 필요한 것이 사실이다. 최근 사람을 찾기 위한 검색엔진이 등장하고 있는데 이들 서비스 중 일부가 FOAF를 지원한다는 것은 의미 있게 해석할 수 있다.
참고 자료
[지난 Special Issue 보기]
|