내 낡은 서랍 속의 바다, 빅 데이터

Topics/ETC 2012. 12. 20. 13:59 posted by Minery

손 종 수 (2012.12.01.)


그룹 패닉 3집에는 ‘내 낡은 서랍 속의 바다’라는 곡이 있다. 이 곡은 다음과 같은 노랫말로 시작한다.

내 바다 속에는 깊은 슬픔과 헛된 고민들 회오리 치네

이 곡은 가수 이적이 자신의 오래된 서랍을 열면서 떠오른 기억들이 동기가 되어 만들어졌다고 한다. 필자 역시 살면서 생긴 잡동사니들을 넣어두기 위한 큰 박스가 세 개있다. 물건을 사면 같이 딸려오는 품질 보증서라든지 고장이 난 이어폰, 충동구매로 샀다가 한 번도 쓰지 않은 스피커까지 순서나 정돈이 없이 꾹꾹 들어차 있다. 일 년에 그 박스들을 열어 보는 것이 몇 번이나 될까? 몇 번 열어보지도 않을 그 박스들을 보물이라도 되는 냥 소중히 간직하고 있다. 필자가 그 박스들을 간직하고 있는 이유는 그 안에 들어있는 물건들이 소장할 정도로 가치가 높기 때문이 아니라 그것들을 통해 과거에 필자가 했던 생각이나 느낌을 되찾을 수 있기 때문이다.
2000년대 이후 정부, 기업, 교육 계 등 할 것 없이 모든 분야에서 급속한 정보화가 이루어져 왔다. 이 과정에서 기술적 한계와 표준의 부재로 인하여 데이터들은 마치 낡은 서랍 속에 아무렇지 않게 쑤셔 넣어진 잡동사니들처럼 쌓이게 되었다. 빅 데이터란 낡은 서랍 속에 넣어둔 잡동사니들 중에서 뭔가를 찾고 싶은데 잡동사니가 너무 많아서 찾는 시간이 너무 오래 걸린다는 것이 문제가 되어 제시된 표어와 같은 용어이다. 자, 그럼 이제 빅 데이터의 정의를 짚어보자. 빅 데이터의 정의는 다양한 것이 있지만 보통은 맥킨지(McKinsey)와 IDC의 정의를 인용한다.

  • 일반적인 데이터베이스 소프트웨어가 저장, 관리, 분석할 수 있는 범위를 초과하는 데이터(맥킨지)
  • 다양한 종류의 대규모 데이터로부터 저렴한 비용으로 가치를 추출하고 데이터의 초고속 수집, 발굴, 분석을 지원하도록 고안된 차세대 기술 및 아키텍처(IDC)

정의에서 볼 수 있듯 빅 데이터는 통상적인 데이터베이스 시스템에서 처리하기 어려운 수준의 데이터를 의미한다. 그리고 이 데이터는 일정한 형태를 지닌 데이터가 아니라 다양한 형태를 가지고 있어서 데이터를 정리하는데도 엄청난 시간과 노력이 필요하다. 마치 때때로 컴퓨터에 저장시켜 놓은 예전 파일을 찾는데 많은 시간을 쏟곤 하는 것처럼 말이다. 저장 시켜둔 파일의 개수가 1만개조차 되지 않는데도 컴퓨터 안의 어디에 있는지 모르겠다며 포기한 경험을 우리는 다들 한번쯤은 가지고 있다. 만약 파일의 개수가 수천억 개라면 어떨까? 빅 데이터에서 다루는 데이터의 크기는 어떤 데이터냐에 따라 조금씩 다르긴 하지만 보통 몇 테라바이트에서 몇 만 테라바이트에 이르기도 한다. 이 거대한 비정형의 데이터에서 의미 있는 무언가를 찾아내고자한다면 우리는 무엇을 해야 할까? 빅 데이터는 이 문제를 해결하기 위한 시스템과 방법론을 모두 포함한다.

낡은 서랍 속에 숨어있는 가치를 찾아서
빅 데이터의 적용 분야는 컴퓨터가 쓰이는 모든 분야에 가능하지만 가장 크게 당면한 문제인 웹 데이터에 대해 적용하는 문제를 생각해보도록 하자. 굳이 빅 데이터를 언급하지 않더라도 2000년대 이후로 웹에는 엄청난 양의 데이터가 쌓이고 있다. 헌데, ‘스마트 혁명’을 시작으로 많은 사람들이 웹에 자신들의 이야기와 사진, 동영상을 쏟아내고 있다. 이로 인하여 웹에 적재되고 있는 데이터의 양은 그 전과 비교할 수 없을 정도로 많아지고 있다. 자료가 많아지고 있다는 것은 찾을 수 있는 정보가 많아진다는 의미이므로 우리에게 축복으로 생각할 수 있다. 그러나 다른 한편으로, 엄청나게 많아진 데이터로 인하여 원하는 정보를 찾는 것이 어려워졌다고도 할 수 있다. 이에 몇몇 선구적 연구자들은 엄청나게 쌓인 데이터 속에 그 전까지 우리가 활용하지 못했던 보석과 같이 아름답고 귀한 무언가가 있을지도 모른다고 생각했다. 그래서 이들은 방대한 양의 데이터를 분석하고 처리하기 위해 컴퓨터 몇 백대를 연결한 클러스터 서버를 구축하기도 하고 슈퍼컴퓨터를 사용하기도 했다. 빅 데이터를 분석할 수 있는 컴퓨터 시스템을 구축하고 나면 그 다음 문제에 바로 직면하게 된다. 그것은 수많은 데이터를 분석하기 위한 시스템으로 무엇을 할 것인가의 문제이다. 이 문제는 어느 분야의 기업, 조직이냐에 따라 달라지는데 미국의 온라인 쇼핑몰 업체인 아마존은 고객의 구매성향을 분석하기 위하여 빅 데이터 처리를 사용한다. 역시 미국의 거대 검색 업체인 구글에서는 사용자 맞춤형 광고를 서비스하기 위하여 빅 데이터 처리를 사용한다.
빅 데이터를 분석하면 어떤 가치를 얻을 수 있을까? 빅 데이터는 데이터를 데이터 하나하나 살펴보는 것이 아니라 큰 시각에서 흐름을 본다. 예를 들어, 인터넷 뉴스에 달려있는 댓글들을 모두 수집하여 하나의 데이터 세트로 저장 한 후 이를 분석하면 특정 기간 동안의 여론을 파악할 수 있다. 혹은 어느 지역에 사는 사람들의 모든 트위터 메시지를 분석하여 지역의 이슈를 파악할 수 있다. 축적된 데이터를 큰 시각으로 보았을 때 우리는 사회 현상, 관심사의 변화, 환경 정보의 특징 등을 파악하는 것이 가능하다. 이는 기존 데이터베이스 시스템으로는 거의 파악하기가 불가능한 것으로 빅 데이터 처리를 위한 시스템과 정리되지 않은 데이터를 정리하기 위한 기술이 반드시 필요하다.

낡은 서랍 속을 정리하는 기술 – 시맨틱 웹
시맨틱 웹(Semantic Web)은 빅 데이터의 대두와는 별개로 1999년에 팀 버너스 리(Tim Berners Lee)에 의해 제안된 차세대 웹 기술이다. 기존 웹에서는 자료를 자동적으로 처리하기가 어렵기 때문에 모든 웹 페이지, 웹 이미지, 웹 비디오 등의 웹 자원에 온톨로지라는 의미 주석을 달아서 컴퓨터 스스로 웹의 자료를 처리하도록 고안된 것이 시맨틱 웹이다. 시맨틱 웹은 논리학에 기반을 둔 기술 로직(Description Logic)을 사용하고 있으며 모든 자료를 논리적으로 처리할 수 있다. 따라서 시맨틱 웹을 사용하면 정리되지 않은 낡은 서랍 속의 데이터들을 가지런하게 정리하고 컴퓨터 시스템이 자료를 읽고 처리할 수 있도록 정형화시키는 것이 가능하다. 그러나 문제는 자료들에 의미 주석을 다는 것 또한 쉽지 않다는 것이다. 그리고 이로 인해 아직까지는 빅 데이터 분야에서 시맨틱 웹을 적극적으로 활용하고 있지 못하고 있는 실정이다. 게다가 빅 데이터와 시맨틱 웹을 동시에 연구한 연구자가 거의 드물기 때문에 두 기술을 동시에 활용하려면 학문간 융합 연구가 반드시 필요하다고 할 수 있다.

마치며
1970년대, 1980년대의 컴퓨터 시스템에는 데이터가 부족했다. 따라서 그 당시의 학자들은 데이터를 설계하고 쉽게 만드는 방법에 대해 연구했다. 그리고 부족한 데이터 속에서 의미 있는 정보를 찾아내기 위해 다양한 알고리즘과 방법론을 연구해왔다. 이 방법론들은 지금까지도 컴퓨터 관련 학과들의 기초 전공과목으로 개설되고 있다. 그러나 최근 들어 우리는 데이터 범람의 시대를 맞이하게 되었다. 이 데이터의 범람의 시대에 안타깝게도 우리는 데이터의 모든 것을 활용하지는 못하고 있기도 하다. 이제 전통적인 데이터 처리 기법 위에 비정형 대용량 데이터를 처리하기 위한 방법론과 기술을 얹어야할 시기이다. 내 낡은 서랍 속의 바다에서 물건들을 목록화하고 물건들에 담긴 소중한 기억들을 기록하지 않으면 언젠가 나이가 들어 모두 잊을지도 모르는 것처럼, 쌓여가고 있는 데이터에 숨어있는 보석같은 정보들을 우리는 활용하지도 못한 채 지나가버릴지도 모른다. 이 시대는 빅 데이터라는 화두를 통해 우리에게 쌓여있는 데이터들을 분석하고 가치 있는 정보를 찾아내라고 사명을 내리고 있는 것이 아닐까?


 ※ 이 글은 제가 KUSZINE에 기고하여 출판된 글입니다. http://blog.naver.com/ks_enter/110153588348

손종수

 

 
들어가며

오늘도 인터넷을 여행하고 계실 여러분, 당신께 필자는 큐레이션이라는 새로운 인터넷 여행 안내서를 소개해드리고자 한다. 물론 필자가 말한 ‘새로운’은 최근에 들어 조명되고 있다는 뜻이지, 갑자기 뚝딱하고 나온 것이 아님을 미리 전한다. 이미 인류가 창조적 활동을 시작한 순간부터 큐레이터라는 자들이 있어 예술, 역사의 세계를 정리하였으며, 현대의 정보과잉 시대에 진입한 이후 많은 인터넷 연구자들이 무인 인터넷 탐사선을 만들고자 노력해 왔기에 큐레이션이라는 인터넷 여행안내서가 탄생할 수 있었다. 부디 여러분들이 이 글을 읽으신 후 적극적으로 큐레이트된 정보를 활용할 수 있게 되기를 바라며 또한 스스로 큐레이터가 되어 자기 자신과 주변을 밝히는 분이되기를 바란다.

 

큐레이션이라는 안내서

이 글을 읽고 계시는 여러분도 마찬가지로 지금쯤 ‘큐레이션’이라는 단어를 검색하고 있지 않을까? 우리는 무언가 궁금하거나 정보가 필요할 때 인터넷 세계를 여행한다. 검색어를 써넣은 후 검색 버튼을 누르면 다양한 정보가 눈앞에 펼쳐진다. 그러나 인터넷의 불행은 정보가 너무 많다는 것에서 시작되었다. 너무 많은 정보는 정말 좋은 정보를 정보의 바다 깊이 묻어버렸다. 물론 구글, 네이버, 야후 같은 검색엔진이 우리가 감수해야할 수고를 어느 정도 덜어주고 있기는 하지만 여전히 좋은 정보는 정보의 바다 어딘가에 숨어있다. 필자 역시 마찬가지로, 좋은 최신 논문 하나를 찾기 위해 네 시간, 다섯 시간 넘게 정보의 바다를 헤매곤 한다. 그렇게 해서 내가 찾아낸 정보가 과연 정말 좋은 정보일까? 그보다 더 좋은 정보가 있지 않을까? 글쎄, 진리는 정보의 신만이 알고 있다. 다만, 우리 인간들은 자신들의 지식과 경험을 통해 진리에 한 발짝씩 더 다가갈 수 있을 뿐이다. 핵심은 바로 여기에 있다. 여러분들이 찾고자하는 지식과 경험을 누군가는 이미 찾아서 체계적으로 정리해놓았을지도 모른다. 큐레이션은 어떤 분야에 대해 누군가 먼저 정보를 찾아보고 정리하여 목록화한 자료를 말하며 이 글에서 말하고자하는 인터넷 여행 안내서이다. 이른바 큐레이션을 활용하면 불필요한 검색으로 인한 시간의 낭비를 줄일 수 있고, 서울 가는 길에 샛길로 새지 않을 수 있다.


예를 들어 생각해보자. 유튜브에는 엄청난 수의 동영상이 매일같이 올라오고 있다. 만약 누군가가 유튜브에서 재미있는 동영상을 찾아보고 싶다면 어떻게 해야 할까? ‘재미있는 동영상’으로 검색해야할까? 미안하지만 ‘재미있는 동영상’으로 검색해봐야 큰 성과는 없을 것이다. 그런데 어떤 사람이 자신의 블로그에 유튜브에서 자신이 보고 정말 재미있었던 동영상을 엄선하여 골라놓았다고 하자. 적어도 그 블로그의 주인장만큼의 웃음을 지닌 사람이라면 재미있게 동영상을 볼 수 있을 것이다. 그것은 블로그 주인장의 의도 여부와 관계없이 그 블로그는 “재미있는 동영상을 큐레이트”한 블로그가 된 것이다. 자, 그러면 이제 인터넷 큐레이션의 종류에는 무엇이 있고 어떤 특징이 있는지, 그리고 어떻게 활용하는지 살펴보자.

 

큐레이션에도 파(派)가 있다
무협의 세계에는 무당파, 화산파, 숭산파 등 다양한 파가 존재한다. 큐레이션에도 마찬가지로 대표적인 몇 개의 종파가 존재하는데, 필자는 큐레이션의 중추적 역할을 누가 하느냐에 따라 세 개 파로 분류해보았다.

 

전문가 큐레이션
전문가 큐레이션은 그 영역이 전통적인 미술관, 박물관 큐레이션과 다를 뿐이지 큐레이트 하는 방식이 거의 같다. 전문가 큐레이션은 전문가들이 다양한 웹 사이트나 블로그, 논문 등의 자료를 섭렵하고 그 중에 좋은 것을 골라 일반 사용자들에게 보여주는 방식을 사용한다. 이 방식은 아무래도 전문가들이 정보를 섭렵하고 정돈해주므로 잘 요약되고 분류된 고품질의 큐레이션을 볼 수 있다는 것이 장점이다. 그러나 소수의 전문가에게 큐레이션을 의존하기 때문에 질에 비해 양이 충분하지 않다는 단점이 있다. 그리고 또 한 가지 문제는 믿었던 큐레이터가 정치나 특정 기업과 연줄이 닿았을 때 큐레이션이 공정하지 않을 수도 있다는 것이다.

 

뉴욕타임즈를 방문자 수에서 이긴 허핑턴포스트 [ http://huffingtonpost.com ]
허핑턴포스트는 여러 블로그에 올라온 글 중에서 엄선된 것만을 골라 그 글의 몇 줄을 웹 사이트에 인용하고 링크를 거는 방식으로 큐레이션을 제공한다. 점차 허핑턴포스트의 방문자 수가 많아지면서 허핑턴포스트의 큐레이터들은 점차 더 전문적인 사람들의 블로그 포스트를 엄선하게 되었고 결국 2011년 후반기에 뉴욕타임즈보다 많은 방문자 수를 가질 수 있게 되었다.

 

전문가가 추천하는 디자인 명품들 [ http://www.fab.com ]
fab.com은 디자인적 요소가 많은 제품들을 대상으로 디자인 전문가들이 평가를 하고 추천한 제품들을 마치 백화점에서 보는 것처럼 보여주는 큐레이션 사이트이다. 여러분들은 전문가들에 의해서 선정된 좋은 디자인의 제품들을 ‘눈팅’하는 것만으로 즐거움을 느낄 수 있다.

 

IT 관련 기술 및 동향을 제공해주는 IT Find [ http://www.itfind.or.kr ]

위 두 사이트와는 다소 성격이 다르긴 하지만 국내 웹에서도 잘 큐레이트된 정보를 접하는 것은 어려운 일이 아니다. 그 중에 하나로, IT Find는 국가 기관이나 각 연구소에서 작성한 IT 관련 기술의 동향, 분석 보고서 등을 총 망라하여 제공해주는 웹 사이트이다. 특히 IT Find에 올라오는 자료들 중에서 ‘동향 보고서’라는 이름의 자료들은 관련 분야의 전문가들이 최근에 이슈가되는 논문이나 기술을 정리하여 빠르게 최신 기술에 대한 정보를 얻을 수 있도록 해준다.


집단지성 큐레이션


집단지성 큐레이션은 다수의 사용자들이 콘텐츠나 정보에 대한 평가를 하고 이 하나하나의 평가들을 모아서 다른 사용자들에게 추천하는 방식의 큐레이션이다. 최근에 거론되고 있는 인터넷 큐레이션 서비스들은 대부분 집단지성 큐레이션이라고 봐도 될 만큼 대세를 이루고 있기도 하다. 이런 스타일의 큐레이션은 전문가 큐레이션에 비해 다소 전문성은 떨어지지만 대중성은 더 좋다고 볼 수 있다. 그리고 집단지성 큐레이션은 참여자가 많을수록 더 믿을만한 결과를 보여준다는 특징이 있다. 그러나 집단지성 큐레이션은 때때로 너무 흥미위주이며 전문가적 식견을 볼 수 없다는 단점이 있기도 하다.
 
소셜 북마킹 서비스 딜리셔스 [ http://Del.icio.us ]
딜리셔스는 이제 너무 유명해서 다소 고루하게까지 느껴진다. 우리가 괜찮은 웹 사이트를 ‘즐겨찾기’하는 것처럼 인터넷을 돌아다니며 만난 웹 사이트를 딜리셔스에 즐겨찾기 할 수 있다. 만약 딜리셔스의 사용자가 나 하나라면 아무런 새로운 점이 없겠지만 동시에 많은 사람이 사용한다면 웹 사이트의 큐레이션이 된다. 즉, 몇 사람이 봤고 몇 사람이 즐겨찾기 했냐에 따라 우리는 좋은 웹 사이트나 콘텐츠를 쉽게 골라낼 수 있다.

 

흥미로운 지식과 정보를 공유하는 메모리스트 [ http://memoryst.com/ ]
메모리스트는 인터넷을 돌아다니다가 흥미롭거나 유용한 웹 페이지를 스크랩하고 다른 사람들과 공유할 수 있도록 해주는 서비스이다. 패션, 자동차, 자전거, 영화, 음악 등 다양한 카테고리 별로 큐레이트된 자료를 볼 수 있다.

 

사건, 이야기별로 SNS 메시지를 재구성한다 [ http://storify.com ]
소셜 네트워크 서비스를 쓰다보면 동시다발적으로 비슷한 주제에 대해서 메시지가 올라올 때 누군가 그 메시지들을 일목요연하게 정리해주길 바라는 마음이 생기기도 한다. 스토리파이는 사용자들이 트위터나 페이스북 같은 SNS에 올린 글들을 사건이나 이벤트별로 정리할 수 있도록 해준다. 누군가가 어느 주제에 대해 스토리를 만들면 사용자들은 그 주제에 대한 메시지들을 공유하면서 자연스럽게 정보가 큐레이트된다.

 

인공지능 큐레이션
인공지능 큐레이션은 사람의 손을 거치지 않고 컴퓨터가 스스로 정보의 가치를 판단하고 선별하여 사용자에게 제공하는 큐레이션이다. 필자가 인공지능 큐레이션이라고 부르는 이유는 실제로 인공지능이 구현되었기 때문이 아니라 컴퓨터가 사람의 의도를 알아서 판단하는 인공지능을 공통적으로 지향하기 때문이다. 인공지능 큐레이션은 컴퓨터가 알아서 하기 때문에 모든 것이 귀찮은 사람들에겐 안성맞춤이다. 그러나 컴퓨터라는 것이 아직까지는 사람의 감성이나 언어를 완벽히 이해할 수 없기에 때때로 부정확한 결과가 나오기도 하니 불평은 말도록 하자.

 

정리정돈이 필요한 SNS 메시지들을 큐레이트 해주는 Paper.li [ http://paper.li ]
트위터나 페이스북을 쓰다보면 시골 장터마냥 시끄럽다고 느낄 때가 있다. 사람들은 정치, 경제, 사회, 문화, 체육 등 관심사도 다양하고 친구냐, 친척이냐, 동료냐에 따라 서로 다른 종류의 메시지가 끊임없이 올라온다. 특히 트위터의 경우 타임라인의 업데이트가 너무 빨라서 뭘 해야할지도 결정하지 못한채 나가버리는 경우도 빈번하다. Paper.li는 이런 SNS 메시지들을 분야별로 정리해서 마치 신문을 보는 것처럼 24시간에 한 번씩 큐레이션해준다.

 

큐레이트된 검색 결과만을 보여주는 검색엔진 Blekko [ http://blekko.com ]
Blekko는 구글이나 야후와 같은 검색엔진이다. 하지만 Blekko는 구글, 야후와는 달리 그렇게 많은 검색 결과를 보여주지 않는다. 대신 사용자가 검색한 검색 결과를 평가하여 비중이 있는 것들만 선정하여 보여준다.

 

마치며

 ‘쿠플존’이라는 학생 커뮤니티 웹 사이트가 있다. 쿠플존은 해마다 2월이 되면 입학 예정인 새내기들의 질문 글이 넘쳐난다. 처음에는 선배들이 새내기가 반가워서 친절히 답해주지만 같은 질문이 반복될수록 선배들의 반응도 시들해지기 마련이다. 그런데 어느 날인가 한 사용자가 새내기들이 가장 궁금해하고 필요해하는 글들만 모아서 공지사항에 올려놓았다. 새내기는 그 글로 인해서 질문 글을 올리거나 검색할 필요 없이 간단히 클릭 하나로 궁금증을 해결할 수 있게 되었고 선배들 역시 대부분의 질문에 답이 되는 글 하나만 알려주면 되게 되었다. 큐레이션이란 그런 것이다. 여러분들도 여러분들이 알고 있는 지식과 노하우를 큐레이트해서 인터넷 어디엔가 올려둬 보시라. 전공에 대한 지식이든 취미에 대한 지식이든 그도 아니면 게임 아이템 획득 방법에 대한 지식이든 상관없다. 그것이 다른 누군가에겐 눈물 나게 감사한 일일 수도 있으니까.

손종수
  경기 광주 출생. 고려대학교 경영정보학과 졸업. 현재 고려대학교 대학원 컴퓨터정보학과 박사과정을 수료하고 자료구조, 인공지능 등을 강의하고 있다. 그리고 2009년 고려대학교 세종캠퍼스 커뮤니티 사이트인 쿠플존을 제작하였으며 현재는 명예운영자로 활동 중이다.


 ※ 이 글은 제가 KUSZINE에 기고하여 출판된 글입니다.


Detecting community structure in networks

Topics/Social Web 2012. 8. 26. 17:20 posted by Minery


M.E.J. Newman은 설명이 필요없을 정도로 복잡계 네트워크 분야에서 유명인이다. 다양한 알고리즘을 제시했고 이미 그의 알고리즘들은 여기저기서 쓰이고 있다. 오늘 올리는 발표자료는 누만의 커뮤니티 발견에 대한 관련 연구 소개 논문이다. 물론 당신께서 쓰셨으니 당연히 누만의 알고리즘에 대한 소개가 좀 더 상세히 되었있다. ㅎ

본 발표자료는 논문의 모든 내용을 요약한 것이 아니고 관심이 가는 것 위주로 정리한 것이다. 고로 논문의 보다 상세한 내용이 필요하신 분은 아래 링크를 따라가서 읽어보시기를 추천한다.

원문 링크: http://www.springerlink.com/content/5gtdacx17bqv6cdc/


시맨틱 웹 기술로 사용자들의 SNS 활동을 완벽하게 기술할 수 있게 된다면 어떻게 될까? 시맨틱 웹을 한번이라도 공부해본 사람이라면 한번쯤 이런 고민을 해봤으리라. 오늘 소개해드리는 논문의 저자들 역시 마찬가지 였던 것으로 생각된다. 이 논문의 저자들은 DERI 연구소에 소속된 사람들인데 DERI 연구소는 시맨틱 웹과 소셜 웹에 관련되서 재밋는 아이디어들을 곧잘 논문으로 써내곤 한다. 시간이 난다면 한번씩 홈페이지에 들려서 논문을 읽어보는 것도 제법 도움이 되며 물론 재미도 있다.

Knowledge Discovery in distributed Social Web sharing activities

이 논문 이전에도 시맨틱 웹 기술을 이용한 소셜 웹에 대한 연구는 다양하게 있어왔다. 가장 대표적으로는 SKOS나 SIOC 같은 것이 있다. SKOS, SIOC 역시 마찬가지로 사용자의 활동을 시맨틱 웹 기술을 이용하여 작성하는 온톨로지 기반 어휘들인데 이런 것들이 있는데도 불구하고 왜 굳이 소셜 웹의 활동을 시맨틱 웹으로 표현하는 연구를 또해야만 했을까? 나는 이 논문을 읽기전에 이렇게 생각했다.

이 논문의 저자들은 다음과 같이 논문의 동기를 밝히고 있다.

1) 새로 찾게된 사람이나 지식을 PIM(Personal Information Model)로 작성해야한다.
2) 여러 SNS 서비스들의 글(Post)들이 의미적으로 연결되어야한다.
3) 소셜 기반의 추천이 가능해야한다.

이 세 개의 동기(문제점)을 해결하기 위하여 저자들은 DLPO라는 새로운 온톨로지 어휘를 제안하였다. DLPO는 완전히 새로운 온톨로지 어휘가 아니라 기존의 SIOC같은 어휘를 최대한 활용하고 LOD의 다양한 어휘까지 모두 활용하면서 기존에 제공하지 못하고 있었던 어휘를 추가하는 형태이다.


위 그림에서 보듯 여러 어휘체계들이 있지만 온라인 포스트부터 시작해서 다른 부분까지 완벽하게 제공하는 것은 자신들 뿐이라고 주장하고 있다. (평가항목이 이 것이 전부는 아닐터이지만.. 논문이란 것이 자신의 시스템이 훌륭하다고 주장하는 것이 일반적임을 감안해야하긴 한다.) 뭐 어쨌든 기존 방법들에 비해 어휘체계가 더 풍부한건 맞는 것같다. 혹여나 싶어서 소셜 웹의 사용자 활동을 기술하기 위한 여러 시맨틱 웹 기술들에 관한 논문들을 본인이 직접 찾아봤는데 그래도 그 중에 이 논문에서 제안한 것 보다 훌륭한건 아직 없어보였다.

사실, 연구를 하다보면 어?? 저 논문.. 아이디어는 신선하지만 실제로 구현이 어렵진 않았을 것 같은데?! 하는 것들이 제법 많다. 그러나 그런걸 함부로 무시하면 안된다. 그런 생각을 했다는 것과 못했다는 것은 굉장히 큰 차이기 때문이다. 피타고라스의 정리에서 직각삼각형의 대각선 거리 재는 공식을 활용해서 다차원 공간의 벡터 노름 구하는 공식을 구한 사람 또한 위대한 수학자로 인정받고 있지 않는가?

이 논문 역시 마찬가지로 내가 평가할 땐 소셜 웹의 사용자 활동을 완벽하게 시맨틱 웹 기술로 표현하고 그걸 여러 소셜 네트워크 서비스의 데이터에 적용가능하게 하고 또한, 그걸로 소셜 추천이 가능하도록 한 아이디어 자체가 나이스포인트라고 본다. 아직까진 그런 시도를 한 사람이 없으니까. 오히려 왜 그런 시도가 여태 없었지? 하는 의문이 들 정도다.

나처럼 설렁설렁 공부하는 사람들은 아마 .. 나와 마찬가지로 SIOC로 다 되잖아? 라고 이미 생각한 후 넘겨버렸을지도 모른다.


위 그림은 논문에서 제안한 DLPO의 구성도이다. 제안한 온톨로지는 크게 네 개의 부분으로 구성되어있는데 각각 Multimedia, presence, message, web document이다. 그리고 이 네개의 부분들은 SIOC, RDF 등 다른 어휘와 연결되어 구성된다.

구현과 결론 부에서는 아직 완성된 시스템을 보여주고 있지는 않은데 나는 한가지 의심이 드는 것이 과연 다양한 SNS의 데이터들을 시맨틱 웹으로 연결시켰을 때 어떤 시너지 효과가 있을 것인가 하는 것이다.

나는 소셜 네트워크 서비스의 구조에 대해 가지고 있는 아이디어가 하나 있는데 그 아이디어를 논문으로 쓸 때 DLPO를 가져다 쓸 수 있을지 그 때가서 생각해보려고 한다.

원문 링크: http://ceur-ws.org/Vol-838/paper_17.pdf

우리는 종종 어떤 물건을 사거나 질문을 할 때 주변 사람들에게 묻곤한다. 평소 친분이 깊은 사람에게 물어봤다면 별로 안 친한 사람에게 물어보는 것보다 마음속으로 더 깊은 신뢰감을 얻는 게 너무나 당연한 일이다. 사람과 사람들이 서로 대화하고 의견을 주고 받는다는 측면에서 소셜 네트워크는 우리의 실생활과 닮은 점이 많은 편이다. 그래서 온라인 소셜 네트워크에서 역시 실생활처럼 믿을 만한 사람을 찾는 일은 얼마나 신뢰있는 인터넷 생활을 하느냐로 직결된다고 볼 수 있다. 오늘 소개해드리는 논문은 소셜 네트워크에서 신뢰(Trust) 혹은 불신뢰(Distrust)를 측정(예측)하기 위한 논문이다.

트러스트란 '어느 사용자가 얼마나 다른 사용자에게 신뢰받고 있는가'를 측정하는 지표로 사용된다. (Manuela et al., 2012) 그리고 다른 정의에서는 '에이전트가 다른 에이전트에게 적당한 방식으로 행동하기 위한 신뢰의 정량화'라고 한다. (Zheng, 2011) 다시 말해 월드와이드웹에서의 트러스트는 사람이나 콘텐츠가 얼마나 신뢰받을만한지를 보이는 지표라고 할 수 있다.

소개해드리는 논문에서는 트러스트를 다음과 같이 설명하고 있다.

Trust information can help a user make decisions, sort and filter information, receive recommendations, and develop a context within a community with respect to whom to trust and why.

트러스트 정보는 커뮤니티에서 누가 왜 신뢰받고 있는지를 통해 사용자의 결정을 도울 수 있고 정보를 필터, 정렬할 수 있고 추천을 받을 수 있고 콘텍스트를 개발할 수 있다.

소개해드리는 논문은 소셜 네트워크에서 신뢰와 불신뢰를 측정하기 위한 알고리즘을 제안한다. 위에서 봤던 것과 같이 신뢰는 깔끔하게 정의되는데 불신뢰는 또 무엇인가? 하는 생각이 들 것이다. 필자 역시 마찬가지 였는데 이 논문에서 불신뢰를 하는 이유는 다음 그림으로 설명된다.

위 그림에서 보면 노드 A, B, C, D가 있는데 각 연결 선마다 있는 >.9 와 같은 표시는 신뢰(Trust)를 나타낸다. A는 B와 B를 상당히 높은 수준에서 신뢰하는 것을 볼 수 있는데 B와 C의 경우 D를 각각 0.9, 0.1만큼 신뢰한다. 이 때 A는 D를 얼마나 신뢰한다고 판단할 수 있을까? 측정값을 신뢰 하나만 사용하는 경우 위 그림과 같이 A와 D사이의 애매한 면이 드러나게된다.

위와 같은 문제를 해결 하기 위하여 논문에서는 신뢰를 측정하기 위하여 경로 확률(Path probability)를, 비신뢰를 측정하기 위하여 Spring-embedding 알고리즘을 사용한다. 그리고 이 두 계산 결과를 합하여 상대를 얼마나 신뢰할 수 있는지 판단한다.

이 논문에서 제안한 방법의 실험은 스탠포드 대학교의 Large dataset collection에서 세 개를 골라서 실험대상으로 삼아 실험을 하였다. 여기서 재밋는 것은 스탠포드 대학교의 데이터셑이다. 주소는 http://snap.stanford.edu/data 이다. 이 사이트에 들어가면 여러가지 형태의 네트워크 실험용 데이터를 얻을 수 있으며 다른 논문들에서도 이 데이터를 사용하여 여러가지 실험을 하고 있으므로 만약 여러분들이 그래프/네트워크 관련 연구를 하고 계시다면 증명용으로 상당히 쓸만하게 사용하실 수 있을 것이다.

마지막으로 참고삼아 말씀드리면 본 논문의 공저자 중에 한명인 Jennifer Golbeck은 Trust에 관한 다양한 연구를 하고 있고 많은 논문을 출판한 사람이므로 그녀의 이름으로 검색해서 논문을 찾아 읽으면 Trust에 관한 다양한 지식을 쌓을 수 있을 것이다.


원문 링크: http://www.cs.umd.edu/~golbeck/papers/sign.pdf




웹 과학, 복잡계를 만나다

Topics/Semantic Web 2012. 6. 13. 23:52 posted by Minery

2011년 3회 Network Theory 국제 워크샵에서 생긴 일

월드와이드웹을 공부하는 사람이라면 한번쯤은 들어봤음직한 이름의 인물 ‘팀 버너스리’, 그는 2006년에 자신의 글을 통해 많은 웹 과학의 과학자들이 그들의 연구 범위를 컴퓨터를 포함하여, 경제, 정부, 법, 심리학 같은 분야까지 넓히려고 노력해왔다고 했다. 물론 웹과 관련된 분야에 종사하고 있는 사람이 순수하게 웹만 연구하거나 개발하지 않고 있다는 것은 자명한 사실이다. 웹은 그 자체로 학문이기도 하지만 여러 분야에 접목하여 사용할 수 있는 도구적 측면이 있기 때문이리라. 필자 역시 웹과 시맨틱 웹을 다양한 분야에 접목시키기 위한 노력을 해오기도 했다.

한편, 네트워크 과학은 그 출발이 물리학에서 시작되었는데 한국에서는 ‘복잡계 네트워크’라는 이름으로 더 잘 알려져 있다. 네트워크 과학은 웹 과학을 포함하여 신경망, 소셜 네트워크, 단백질 네트워크 등 네트워크의 특징을 탐구하는데 그 목적이 있다. 필자가 복잡계 네트워크라는 단어를 듣게 된 것은 공교롭게도 필자의 친형에게서이다.
필자의 친형은 물리학과 박사과정이고 현재 복잡계를 연구하고 있는 중이다. 평소 가깝게 지내는 편은 아니지만 설날, 추석에 한번 씩 만나 자신의 연구 주제에 대해 설명하곤 하는데 2011년 추석에, 형과 연구주제에 대한 대화를 하다가 서로의 주제가 엇비슷하게 맞물러 가고 있다는 것을 알게 되었다. 웹을 연구하는 나에겐 취약한 이론적 근거나 메서드를 복잡계에서 가져다 쓸 수 있겠다 싶어서 급격한 관심이 생길 수밖에 없었고 반대로 복잡계를 연구하는 형에겐 아주 특수한 형태의 네트워크만을 다뤄오다가 웹 및 소셜 네트워크는 새로운 방대한 소스를 발견하게 되어 기쁠 수밖에 없었던 것이다.
인간의 생각이란게 거의 비슷하게 돌아가긴 하나보다. 2011년 5월에 네트워크 이론이라는 국제 워크샵에서 웹 과학자 그룹과 네트워크 과학자 그룹이 처음으로 만난 사건이 일어났고 나와 형의 놀라움과 마찬가지로 이들도 서로의 존재에 대해 상당히 놀라왔던 것으로 보인다. 워크샵에 모인 학자들은 서로의 연구주제에 대해 토의하면서 웹이 복잡계의 일부냐 복잡계가 웹의 일부냐로 약간의 논쟁이 있었던 것으로 생각되지만 서로의 존재를 발견한 기쁨은 여러 곳에서 엿볼 수 있다.

웹 사이언스에서 트러스트 분야의 유명한 학자인 사우스 햄턴 대학교의 Hall 교수는 다음과 같이 발언했다.

웹과학이 네트워크의 일부냐 아니면 그 반대냐의 질문에 대한 답은 아무런 상관이 없다.

지금으로부터 불과 1년 전 웹 과학과 복잡계 네트워크 과학이 만나기 시작했다는 것이 중요하다. 평행한 시기에 서로 다른 주제로 연구를 해오다가 이들이 공통의 토픽을 만났을 때 어떤 시너지 효과가 일어날 것인가? 우리는 이 질문에 좀 더 많은 신경을 쏟아야 할 것이다. 그리고 이 글을 읽으시는 여러분이 주인공이 되어 보시는건 어떨까? 물론, 이 글을 쓰고 있는 필자를 포함해서.

링크: http://cacm.acm.org/magazines/2011/5/107690-web-science-meets-network-science/fulltext



복잡계 네트워크 ( Complex network )

Topics/ETC 2011. 11. 7. 00:42 posted by Minery

복잡계 네트워크 과학(Complex network science)에 대한 개략적인 정리를 해봤다.
뭔가 시맨틱 웹, Linked data, 온라인 소셜 네트워크 등.. 우리 연구실에서 도입할 만한게 있는지 알아보기 위해 공부를 시작 했는데 끝없는 미로에 빠져버렸다. 더 깊은 미로에 빠지기 전에 일단 이쯤에서 멈추고 정리한다. 나중에 뭔가 좋은 아이디어가 생각나겠지..



Cha, M., Haddadi, H., Benevenuto, F., & Gummadi, K. P.
Main Author: Meeyoung Cha(2010)

Summary by Sohn Jongsoo (mis026@korea.ac.kr) at 2011.09.29


1. 논문의 핵심 내용 :
트위터에서 많은 팔로워를 거느리고 있는 사용자에 대한 영향력을 분석함
팔로워가 많다고 해서 더 큰 영향력을 지니고 있는 것은 아님

2. 논문의 도메인 :
컴퓨터과학/소셜네트워크, 사회학, 물리학/복잡계네트워크, 서비스사이언스

3. 배경, 동기 :
사회학 분야에서 어떤 유명 인사의 영향력에 대한 연구는 오래전부터 이뤄져왔다. 전통적인 영향력 측정은 투표에서의 득표나 패션의 영향력 등을 분석했다. 근래에 들어서는(Modern view) 사람사이의 관계나 네트워크에 초점을 맞췄다.
그러나 그 연구들과 지금은 이미 많은 시간의 차이가 있으며 실증적 데이터가 존재하지 않아서 충분히 검증하기 어려웠다.
트위터에서는 오픈 API 등을 통해 소셜 네트워크와 일련의 데이터를 제공하므로 실증적 데이터를 가지고 분석할 수 있게 되었다. 따라서 (실증적 검증이 가능해졌으므로) 일반적으로 팔로워가 많으면 더 큰 영향력을 가진다고 알려져 있는데 이를 검증하려했다.

(pdf 파일에서 계속)


논문 원본 링크: http://an.kaist.ac.kr/~mycha/papers.html

손 종 수 (mis026@korea.ac.kr)


0.
들어가며
본 자료는 글을 쓰는 본인이 경험적으로 체득한 것을 정리한 것으로써 교과서적 정리와는 근본적으로 다르다. 따라서 sparQL과 Linked data를 빠르게 접하고 체험하기에는 적합할지 모르나 이론적 원리를 이해함에 있어서는 부족함이 있다. 또한 설명하는 부분에서 필자 스스로에게 이해가 쉬운 어휘와 표현을 사용하고 있으므로 추후 sparQL의 스펙문서와 Linked data 관련 논문들을 찾아 읽어서 부족한 부분을 채우시길 부탁 드린다.

1. SparQL Overview
sparQL은 크게 PREFIX, {SELECT, ASK, DESCRIBE, CONSTRUCT}, WHERE로 구성된다.

PREFIX는 일반 데이터베이스에서 데이터베이스 선택과 비슷한 의미로써 일반적으로 사용할 데이터 셑을 지정할 때 사용한다.

SELECT는 탐색할 대상을 지정할 때 사용하며 변수를 사용할 수 있다. 변수는 '?변수'의 형식으로 사용하며 전체를 탐색할 때는 ' * '을 사용한다.

WHERE는 조건절이다. 중괄호로 묶어 여러 줄을 사용할 수 있다.

그 외에 ORDER BY 등 질의의 마지막 부분에 정렬순서 등을 지정할 수 있다.

2. 간단한 예제

PREFIX : <http://abbs.purl.org/music#>

SELECT ?instrument

WHERE {        :andrew :playInstrument ?intrument .    }


위 문장은 <http://abbs.purl.org/music#>이라는 데이터 셑에서 instrument를 찾을건데 앤드류(주어)가 'playInstrument'라는 술어를 갖는 어떤 목적어 instrument를 찾겠다는 것이다.

WHERE절에서 한 문장의 끝은 마침표( . )로 구분한다.


3. 조금 더 복잡한 예제

PREFIX : <http://aabs.purl.org/ont/journal#>
SELECT ?notes

WHERE {

    ?e a :JournalEntry .

    ?e :notes ?notes .

    ?e :date ?date .

}

ORDER BY ?date

LIMIT 5

OFFSET 150

SELECT절 – ?notes를 출력할 것이다.

WHERE절 –
a는 rdfs:type의 약자이다. 즉, ?e a :JournalEntry는 rdfs:type이 JournalEntry인 어떤 변수 e를 찾는다라는 뜻이다.
?e :notes ?notes 는 ?e의 notes를 가져와서 ?notes로 사용하겠다라는 뜻이다.

?e :date ?date 는 ?e의 date를 가져와서 ?date로 사용하겠다라는 뜻이다.

notes 와 date를 가져와서 사용하겠다는 것은 달리 말해 notes와 date가 있는 데이터를 가져와서 사용하겠다는 것과 같다. 따라서 세 줄을 합쳐서 생각하면 모든 JournalEntry 타입을 갖는 데이터를 가져오는데(?e라는 변수로 통칭) 그 중에서 notes와 date 라는 항목을 결과집합으로 쓰겠다는 것이다.

ORDER BY 이하 절 – ORDER BY는 정렬순서이고 LIMIT은 출력 결과 개수 제한, OFFSET은 결과가 만들어 지기 전에 150개가 넘는 결과를 받아오면 그 순간 결과를 받지 않겠다는 것이다.


4. Dbpedia의 Linked data

Dbpedia는 wikipedia의 자료들에 의미적 주석을 달아서 다른 웹 사이트나 프로그램에서 사용할 수 있도록 가공하여 제공해주는 사이트이다. Linked data 분야에서 Dbpedia는 중요한 역할을 수행하고 있으며 상대적으로 많은 양의 자료를 가지고 있어 활용성이 높다.

<Dbpedia 홈페이지 – http://www.dbpedia.org>

Dbpedia에서 제공하는 자료/자원은 고유의 웹 페이지 주소를 가지며 고유의 URI 또한 가진다. 늘 웹 페이지 주소와 URI 주소가 같은 자료를 보여주지는 않으나 Dbpedia에서는 URI주소를 찾아 들어가면 다음 그림과 같은 웹 페이지를 출력해준다. 아래 그림은 The_Beatles의 URI를 웹 브라우저의 주소창에 입력하고 찾아갔을 때의 화면이다.


<Dbpedia에서 제공하는 The_Beatles의 URI와 웹 페이지>

그리고 위 웹 페이지의 가장 하단을 보면 아래 그림과 같이 데이터 포맷을 선택해서 출력하거나 다운받을 수 있다.

<Dbpedia의 다양한 데이터 포맷>

Dbpedia에서는 Dbpedia의 모든 자료에 대해 검색할 수 있는 웹 기반 sparQL Endpoint를 제공하고 있다. Dbpedia의 sparQL Endpoint의 주소는 http://dbpedia.org/sparql 이다.


5. Dbpedia에서의 실전 예제 (1)

http://dbpedia.org/sparql 에 들어가서 일단 아래 질의를 입력한 후 'Run Query'를 클릭해보도록 하자.

SELECT ?uri ?name ?page ?nick
WHERE{

   ?uri a foaf:Person ;

   foaf:name ?name;

   foaf:page ?page;

   foaf:nick ?nick.

}
LIMIT 100

Dbpedia에서는 기본적으로 PREFIX가 많이 되어있으므로 쓰지 않아도 된다.

첫 번째 줄에서 ?uri, ?name, ?page, ?nick은 이 네 개의 항목을 가져오겠다는 것이다.

세 번째 줄에서 ?uri a foaf:Person; 은 foaf:Person이라는 type을 가진 모든 항목을 ?uri라는 변수로 사용하겠다는 명령이다. (a == rdfs:typeOf)

네 번째 줄에서 foaf:name ?name 은 ?uri로 선택된 항목의 foaf:name을 ?name이라는 변수에 넣겠다는 명령이다.

다섯 번째 줄과 여섯 번째 줄도 같은 의미이다. 그리고 마지막 줄에서 LIMIT 100은 최대 100개 가져오겠다는 명령이다.

요약하자면, foaf:Person이라는 타입을 가진 모든 자원에서 foaf:name, foaf:page, foaf:nick의 데이터를 각각 ?name, ?page, ?nick이라는 변수에 넣어서 출력하겠다는 것이다.

다음 그림은 위 질의에 대한 결과화면이다. 결과화면은 html로 출력 선택을 하여 웹 페이지 형식으로 보이며 xml, RDF/XML, JSON 등 다양한 형태로 전송 받을 수 있다.



<예제 질의를 실행한 결과 화면>



6. Dbpedia에서의 실전 예제 (2)


위 예제와 유사한 예제를 하나만 더 해보도록 한다. 일단 예제 질의를 보기 전에 다음 화면을 먼저 확인해보자.

<Dbpedia에서 Terry_Holbrook의 정보>

위 화면은 Terry_Holbrook 이라는 축구 심판의 URI 주소와 Dbpedia의 자료 화면이다. 이 화면에서 보면 dbpprop:countryofbirth 와 같은 형식의 다양한 속성명을 확인할 수 있다. 우리는 이 자료를 통해 '사람 클래스'를 Dbpedia에서 어떻게 표현해주는지 알 수 있다. 따라서 이를 활용하여 질의를 만들어 볼 수 있다.

다음 예제는 Dbpedia의 자료들 중에서 사람이름, 태어난 나라, 직업만을 골라서 출력해주는 예제이다.


SELECT ?name ?birth ?role
WHERE{

   ?x a foaf:Person ;

   dbpprop:fullname ?name;

   dbpprop:countryofbirth ?birth;

   dbpprop:role ?role.

}
LIMIT 100

첫 번째 줄은 ?name, ?birth, ?role을 출력하겠다는 것이다.

세 번째 줄은 foaf:Person이라는 타입을 가진 모든 항목 ?x를 설정한다.
네 번째 줄은 그 ?x의 dbpprop:fullname 속성에 해당하는 데이터를 ?name으로 지정한다.
다섯 번째와 여섯 번째 줄은 네 번째 줄과 동일하다.

세미콜론은 4~6번줄 모두 주어가 ?x 이기 때문에 문장의 끝이 아님을 구분하기 위해서이다. 위 예제를 개념적으로 다시 설명하면..

(주어 - ?x) + (술어 - dbpprop:fullname) + (목적어 - ?name)
(주어 - ?x) + (술어 - dbpprop:countryofbirth) + (목적어 - ?birth)
(주어 - ?x) + (술어 - dbpprop:role) + (목적어 - ?role)

이 세 문장을 묶어서

(주어 - ?x) +
[
   { (술어 - dbpprop:fullname) + (목적어 - ?name) }

   { (술어 - dbpprop:countryofbirth) + (목적어 - ?birth) }

   { (술어 - dbpprop:role) + (목적어 - ?role) }

]

이렇게 만들었다고 생각하면 간단하다. 다음 화면은 결과화면이다.

<결과 화면>

위 결과를 보면 이름, 태어난 나라, 직업이 출력된걸 확인할 수 있다. 그럼 이제 태어난 곳이 England 인 사람의 이름과 직업만을 출력하고 싶다면 어떻게 하면 될까? 답은 FILTER를 사용하면 된다. 아래 예제 질의를 보자.


SELECT ?name ?birth ?role
WHERE{

?x a foaf:Person ;

dbpprop:fullname ?name;

dbpprop:countryofbirth ?birth;

dbpprop:role ?role.


FILTER regex(?birth, "land$").

FILTER regex(?birth, "^Eng").
FILTER regex(?birth, "England").

}
LIMIT 100

위 질의문을 보면 FILTER라는 조건이 붙은걸 볼 수 있다. FILTER는 결과로 받아온 데이터들을 걸러주는 역할을 한다. 예제 질의에는 FILTER 를 세 개 붙여 놓았다. 물론 한 개만 붙여도 되며 더 늘려도 괜찮다. sparQL의 정규표현식은 기본적으로 XML - XPATH의 정규식을 따른다고 한다. 따라서 FILTER에 정교한 필터링이 필요한 경우 XPATH의 정규표현식을 공부하면 된다.
첫 번째 FILTER 예제는 ?birth의 결과물 중에서 'land'로 끝나는 것을 선택하라는 것이다.
두 번째 FILTER 예제는 'Eng'로 시작하는 것을 선택하라는 것이다.

세 번째 FILTER 예제는 'England'와 일치하는 것을 선택하라는 것이다.

세 문장을 우리는 한 질의에 모두 넣었으므로 결과적으로 ?birth가 'England'인 사람만 출력이 될 것이다. 아래는 그 결과화면이다.


<결과 화면>

 

 

 

Todolists 11.06.28

Personal/TODO리스트 2011. 6. 28. 15:09 posted by Minery
1. 왕청 논문 번역 (영문 -> 한글)
2. 내 논문 번역 (한글 -> 영문) *내가 번역기냐?!?!?!?!?!?!?!?!?!
3. Etrijournal 논문 재투고 (버전 바꾸기)
4. DWH 논문 투고
5. 파이썬 계획 실행
6. 졸업생 회비 정리 및 독촉
7. HMM 논문 아이디어 정리

* 굵은 글씨는 오늘 안에 끝내야함