Share           Pin It

페이스북이 그래프서치 Graph Search 기능을 선보였습니다. 사용신청을 한 사용자들부터 점진적으로 기능을 제공해주고 있습니다. 저도 어제부터 그래프서치 기능이 On되었습니다. 페이스북에서 그래프서치를 발표한 직후에 취미가 같은 친구나 친구가 다녀간 식당 등을 검색하는 게 유용할까?에 대한 의문을 던지는 글 (원문 '정말 "하이킹을 좋아하는 내 고향 출신 사람" 따위가 궁금할꺼라 생각했던걸까...')에 그냥 장난삼아서 그래도 'hot girls nearby me'라는 검색은 해보지 않겠느냐고 답글을 달았습니다. 그래서 기능이 On되자마자 정말로 'hot girls nearby me'를 검색해봤습니다. 그랬더니 아래처럼 'Females who live nearby' 등으로 유사한 의미의 그래프서치에서 반응하는 쿼리패턴을 변환시켜 제시해주고 있습니다. 이 쿼리변환을 보면서 옛 기억이 되살아납니다. 참고로, 제 주변에는 hot girl은 없는 걸로 결론났습니다.

'hot girls nearby me'를 입력하면 'females who live nearby' 등을 추천해줍니다. 현재 그래프서치에서 반응하는 패턴으로 자동변화시켜주는 모습과 객체와 객체 간의 관계를 이용해서 탐색하는 모습이 인상적입니다.

저를 포함해서 많은 사람들이 페이스북이 검색기능을 강화시키면 제대로 된 소셜검색을 선보일 것이라고 기대를 했습니다. 트위터나 G+ 등도 존재하지만 현재 가장 크고 활발하게 사용되는 SNS는 페이스북이니 페이스북만이 그나마 구색을 갖춘 소셜검색을 제공해줄 수 있다는 기대를 가졌습니다. 그래서 그래프서치를 선보인다는 기사의 제목만을 봤을 때 많은 기대를 했지만, 실제 구현된 기능을 보면서는 고개를 갸우뚱했습니다. 위의 지인이 언급했듯이 처음에는 재미로 친구들이나 그들의 활동/관심사를 검색해보겠지만 꾸준히 사용해볼까? 또는 이게 비즈니스적으로 효과가 있을까?에 대한 의문이 들었습니다. 전통적인 정보 및 검색의 관점에서 친구나 그들의 활동이 정보로써의 가치가 좀 떨어지는 것이 사실입니다. 애초에 구글에서 기대했던 것을 페이스북에게 기대했던 것이 잘못임은 알지만, 소셜검색에 대한 미련은 여전히 떨쳐버리기 힘듭니다.

이번에 페이스북이 선보인 그래프서치는, 엄밀히 말해서, 소셜검색이라기보다는 관계형검색이라고 칭하는 것이 맞을 듯합니다. 더 엄밀히 표현하면 '관계형 탐색'이 맞을 듯합니다. 여기서 말하는 관계는 사람과 사람 사이의 그런 사회적 관계가 아니라, 사물과 사물 사이의 일반적인 관계를 뜻합니다. 사물이라고 표현했지만 더 중립적으로 Object로 표현하는 것이 맞습니다. Object는 당연히 사람을 포함해서 사람의 활동, 다녀간 장소 등의 모든 객체를 뜻합니다. 처음 소셜검색을 생각했을 때는 친구나 관심있는 사람이 적은/공유한 글을 찾는 것인데, 그래프서치에서는 그런 정보화된 글/문서가 아니라 사람이나 장소 등의 객체를 찾아줍니다. 아래의 검색결과를 보면 여러 가지 조건으로 사람을 찾아주는 것, 책 영화 학교 등과 같이 페이스북의 개인설정에 지정하는 정보를 찾아주는 것, 그리고 식당 등의 장소를 찾아주는 것 등으로 구분되어있습니다. 검색옵션에서 보여지듯이 이런 객체들이 다른 객체들과의 관계를 통해서 검색범위를 좁혀서 보여주고 있습니다. (EXTEND THIS SEARCH와 Discover Something New 부분이 눈에 띄는데, 이는 그래프서치의 다양한 기능 예시를 보여주기 위해서 마련된 듯합니다.)

그래프서치에서 사람을 검색했을 때

그래프서치에서 장소를 검색했을 때

그래프서치에서 사물을 검색했을 때

그래프서치에 반응하는 쿼리패턴을 보면서 대학원시절 공부했던 시맨틱웹이 떠올랐습니다. HTML과 XML에 더해서 웹의 모든 객체들 간의 관계를 표현해주기 위해서 만들어졌던 RDF와 OWL이 떠올랐습니다. '객체 A는 객체 B에 속한다'와 같이 표현해주는 RDF/OWL의 문법이 그래프서치에서 'A의 친구' 'B에 살고 있는 친구' 'C가 좋아하는 식당' 'D에 있는 식당'과 같이 객체와 객체 그리고 이 관계를 설명해주는 동사로 이뤄져있습니다. 위의 화면에서 'my friends who live in jeju city'의 경우 FRIEND와 JEJU CITY를 LIVE로 연결/관계시켜주고 있습니다. 친구가 좋아하는 책/식당도 같은 패턴입니다. RDF/OWL이 연구되기 시작한 시맨틱웹으로써의 모습을 페이스북이 완전히 보여주지는 못하고 있지만, 객체와 객체를 연결해서 설명해주고 찾아주는 것은 시맨틱웹이 구현하고자 했던 초보적인 모습인 듯합니다. 물론 위에서 보여지듯이 페이스북에서 지정한 몇 가지 타입의 사물이나 장소 등에 대해서만 구현되어있습니다. 웹 및 그 속의 모든 객체들이 우리가 사용하는 자연어처럼 구조화된다면 어떤 모습이 가능할까?를 상상해보게 됩니다. 그래프서치가 소셜검색의 모습은 아직 제대로 보여주지 못하지만, 적어도 시맨틱웹 또는 시맨틱서치의 모습에 대한 실마리는 제공해주고 있습니다. 서두에 보여줬던 예시에서 'hot girls'를 'females'로 변환하는 것 (물론, 이건 그냥 동의어로 등록된 것으로 보임)이 일반적인 모든 객체에서 작동을 한다면? 또는 모든 (관계를 설명하는) 동사가 제대로 작동한다면 어떻게 될까?를 생각해보게 됩니다.

그래프서치가 아직은 초보적인 모습입니다. 앞서 말했이 대상 객체가 한정되어있습니다. (전통적인 검색의 관점에서 객체와 관계를 색인화시키고 찾아주는 것이 쉽지가 않습니다.) 그리고 3개 이상의 객체가 모였을 때는 여전히 불안정합니다. '친구들이 좋아하는 제주에 있는 식당'을 찾고 싶은데 '제주에 살고 있는 친구들이 좋아하는 식당'을 보여주는 것을 보면서 여전히 풀어야할 숙제가 많다는 생각을 했습니다. 그리고 객체가 일반화되지도 정형화되지도 않았습니다. 책을 찾고 싶은데, 서점 페이지를 먼저 보여줍니다. 모든 책이 페이스북 내에 객체화되지 못했기 때문인 듯합니다. 이런 특정 타입의 객체를 찾기 위해서는 페이스북같은 범용SNS보다는 기존 2.0시대의 버티컬 서비스들이 소셜화되는 것이 더 나은 대안입니다. 

아직은 그래프서치가 페이스북 메뉴바에 나오듯이 "Search for people, places and things', 더 엄밀히 말해서 제한된/기지정된 사람, 장소, 사물만을 검색할 수 있지만, 시맨틱웹의 비전이 구현될지도 모르겠다는 생각을 해보게 됩니다. 구글이 웹1.0 또는 웹2.0시대의 정보를 탐색하는데 최적화되었다면, 페이스북이 웹3.0 또는 시맨틱웹의 탐색으로 진화한 것이 아닌가?라는 생각도 해봅니다. 예전에는 페이스북 내에 갇힌 정보를 얻지 못하기 때문에 구글이 페이스북을 시기한다고 생각했었는데, 그래프서치 및 그 이후의 모습을 상상해보면 왜 구글이 페이스북을 그토록 두려워했는지를 조금 알 것도 같습니다.

(2013.02.24 작성 / 2013.03.05 공개)

댓글을 달아 주세요

Share           Pin It
 나름 검색일을 하면서 검색에서 가장 중요한 것은 사용자들이 찾고자 하는 키워드와 그런 사용자의 니즈와 의도에 맞는 정보/컨텐츠/문서다. 그런데, 이 블로그에서는 그런 컨텐츠의 중요성보다는 그런 정보를 둘러싸고 있는 컨텍스트/문맥의 중요성을 더 자주 언급하고 있다. 컨텐츠는 너무 명확하기 때문에 굳이 재차 강조할 필요가 없는 것도 하나의 이유지만, 그것보다는 요즘은 진짜 컨텐츠보다는 컨텍스트가 더 중요하다고 느끼기 때문이기도 하다. 앞으로도 여전히 컨텍스트가 컨텐츠의 부가정보 역할만을 할지도 모르겠지만, 컨텍스트에 대한 더 심도깊은 연구가 없다면 범람하는 수많은 컨텐츠들은 소위 모래 위에 세운 성이 될 것이다. 컨텍스트를 얘개하면서 늘 삼간 (三間), 즉 시간, 공간, 인간이 마치 모든 컨텍스트의 전부인 것처럼 얘기했다. 실제 요즘의 많은 서비스들이 이들 삼간의 범위에서 벗어나는 경우를 못 본 것도 있고, 더 이상의 컨텍스트를 찾기도 어려웠다. 그런데, 이런 3가지 간(間)자 컨텍스트보다 더 중요한 컨텍스트 정보가 있다는 것을 너무 늦게 깨달았다. 제목에서는 제 4의 컨텍스트라고 적었지만, 실제는 제 0의 컨텍스트가 더 적합한 표현인 것같다. 그래도, 편의상 시간 공간 인간을 제 1, 2, 3 컨텍스트라고 칭했기에 네번째 발견된 컨텍스트란 의미에서 제 4의 컨텍스트라고 표현했다.

 컨텍스트 정보가 컨텐츠만큼의 중요도를 가지기 시작한 것은 궁극적으로 개인화 Personalization 때문이다. 내가 지금 숨쉬고 있는 이 시간, 내가 누리고 있는 이 공간, 그리고 나와 관계를 맺고 있는 인간 (순화시켜서 '친구/지인'이라고 해야하겠지만, 그냥 편의상 인간이라 하자.)이라는 주변정보가 나를 설명해주고 있다. 나..라는 존재는 언제 어디서 누구와에 의해서 정의되는 것같다. 그런데, 그런 주변 정보에 집중을 하다보니 '나'라는 그 본질에 대한 인식을 놓쳐버린 것같다. 지금 이 시간이 나를 투영하지 못하고, 내가 살고 있는 곳이 내 정체성을 보여주지 못하고, 나와 관계를 맺는 그들이 나를 설명해주지 못한다. 단지 조금 도와줄뿐이다. 결국 나를 정의하기 위해서는 바로 '나'를 제대로 살펴봐야 한다. 그런데, '나'를 관찰한다는 것이 어떨 의미일까? '나'를 어떻게 컨텍스트 정보로 활용할 것인가? 참 어려울 수도 있지만, 여러 쉬운 방법들도 분명 있다. 바로 '역사'가 나의 나됨을 설명해준다.

 History... 아니, Mystory라고 부르는 것이 더 적합하겠다. 내가 이제껏 어떤 일을 했는지, 즉 나의 관심사가 뭔지를 명시화할 수 있다면 바로 '나'라는 컨텍스트 정보를 얻을 수 있다. 그런데, 인터넷 시대에 나에 대한 많은 히스토리를 모을 수 있다. 바로, 내가 인터넷 검색창에 입력한 수많은 키워드들이 내가 어떤 정보에 관심을 가졌고, 반응을 했는지 알려준다. 그리고, 검색한 결과에서 내가 클릭해서 읽은 많은 문서들이 내가 어떤 정보에 관심이 있는지 말해준다. 그리고, 내가 트위터나 블로그 등에서 적었던 많은 글들이 내가 어떤 것에 관심이 있는지 말해준다. 내가 지금 적고 있는 이 글을 통해서도 나는 컨텐츠나 컨텍스트 등과 같은 것에 관심이 있다는 것을 말해주고 있다. 우리가 행한 인터넷/온라인에서의 모든 행위들이 나를 투영해주고 있다. 물론, 여기에 기존의 시간, 공간, 인간의 정보가 더 결합되면 더더욱 나에 대해서 완전한 아바타를 만들어줄지도 모르겠다. (참고. 이젠 컨텍스트 Context에 집중하자. 컨텐츠 Content는 항상 컨텍스트 안에서 정의된다.)

 벌써 사용화되어서 사용되고 있는지는 모르겠지만, 몇몇 검색과 관련된 논문에서 나의 과거 검색 히스토리를 이용해서 검색의 개인화를 이루려던 시도가 있었다. 평소에 내가 자주 찾거나 반응했던 정보의 카테고리에 맞는 검색결과를 먼저 노출시켜주는 것이다. 예를들면, 'java'라는 키워드에 대해서 컴퓨터 프로그래밍 언어를 떠오를 수도 있고, 자바커피가 생각날 수도 있고, 아니면 인도네시아 자바섬이 연상될 수도 있다. 그런데, 내가 다음이라는 인터넷 회사에 다니고 있고 평소에 프로그래밍에 대한 키워드를 자주 사용했다는 것을 알고 있다면, (똑똑한) 검색엔진이라면 내가 'java'라는 키워드를 입력했을 때 나에게 먼저 프로그래밍과 관련된 결과들을 보여줄 것이다. 이것이 일종의 검색히스토리를 이용한 검색개인화의 한가지 방법이다. 물론, 맹점은 내가 갑자기 커피에 관심이 생겼다거나 인도네시아로 여행을 가고 싶어서 java를 입력했는데도, 여전히 프로그래밍관련 정보/문서들만 보여줄 수도 있다는 심각한 결점을 가지고 있다. 그렇기 때문에 단순히 검색히스토리뿐만 아니라, 시공인의 다른 컨텍스트 정보와 통합을 이룰 필요가 있다. 예를들어, 평일 업무시간이 아닌 점심/저녁시간에 java를 검색을 한다거나 주말 또는 바캉스 시즌을 앞둔 시점에 java를 검색하는 경우, 또는 인도네시아 현지에서 java를 검색하는 경우 등에 대해서는 프로그래밍보다는 커피나 자바섬에 대한 정보에 우선순위를 두는 등의 더 진화된 개인화검색엔진도 상상해볼 수가 있다.

 또 다른 것으로 사람들이 트위터나 블로그에 올린 많은 글들에서 핵심되는 키워드들을 추려낼 수가 있다. 텍스트마이닝에서 보통 사용하는 TF/IDF (Term Frequency / Inverse Document Frequency)라는 Vector Space Model을 활용하면 쉽게 개인마다 관심이 있는 또는 전문성이 있는 키워드를 발라낼 수가 있다. 이렇게 저자/개인마다 관심키워드를 추출해서 매핑시켜준다면, 향후에 특정 주제/키워드에 관심/전문성이 있는 이들을 쉽게 찾아줄 수가 있다. 또는 특정 키워드에 대해서 무수한 문서들을 마구잡이로 보여줄 것이 아니라, 입력된 키워드에 전문성을 가진 저자가 작성한 글들을 먼저 보여주는 방법을 취할 수도 있다. (참고. 소셜검색 (1)소셜검색 (2)소셜검색 (3)) 지금 다음검색의 소셜웹검색에서 개인ID로 검색을 한 경우 보여주는 관심키워드가 이와 유사한 방식으로 보여주고 있다. (자세한 알고리즘을 모두 말할 수는 없지만, 실제는 제가 말하려는 전문성이나 관심에 대한 명확한 예제는 아니다. 왜냐하면, 전문성/관심보다는 실시간성에 대해서 너무 큰 가중치가 들어간 키워드들이기 때문에, 실제 개인의 관심/전문성을 말하기에는 문제가 있다.) 그런데, 이런 실시간 관심키워드를 더 오랜 시간을 두고 수집을 하거나 아니면 그/그녀가 작성한 다른 모든 문서들을 수집/분석을 한다면 분명 그/그녀의 관심/전문성이 반영된 키워드세트를 쉽게 모을 수가 있다. 실제, 실서비스화는 못 시켰지만, 나름 토이문제로 나 자신에 대해서 내가 작성한 모든 블로그글/트윗을 분석해서 키워드를 뽑은 결과, 트위터, 애플, 제주도, 아이패드, 다음검색 등과 같이 제가 평소에 자주 사용하고 관심을 가졌던 분야에 대한 키워드세트를 만들 수가 있었다.

 좀 더 무섭게 들어간다면... 내가 이제껏 쇼핑몰에서 구경했던 모든 상품 및 구매했던 상품들에 대한 히스토리를 통해서 나의 관심사를 파악해서 내가 관심을 가질 법한 상품에 대한 광고를 계속 보여줄 수도 있다. 많은 회사들이 이걸 하고 싶어 한다. 그러나, 개인정보/프라이버시라는 법적인 허용범위를 벗어난 서비스에 대한 부담 때문에 제대로 하지 못하는 경우가 대부분이다. 그리고, 최근에 이슈가 된 스마트폰들이 개인정보 - 나이, 성별, 위치, 개인식별ID 등을 사용자동의없이 수집하는 것에 대한 문제제기도 되고 있다. (참고, WSJ 기사) 세상의 많은 회사들이 나보다 나를 더 잘 알고 싶어서 난리다. 개인적으로 개인정보/프라이버시는 개인에 관한 정보보다는 그런 정보에 대한 관리권 Control의 주체로 프라이버시 문제가 새롭게 정의되어야 한다고 생각하고 있지만, '나'에 대한 정보는 중요하면서도 매우 위험하다. 글의 논점이 '프라이버시'로 조금 옮겨갔지만, 어쨌던 그만큼 '나'라는 컨텍스트 정보가 중요하다는 반증이다. 

 다음에서 소셜검색 (지금의 실시간검색, 소셜웹검색, 그리고 마이소셜검색이 아닌)을 한다고 했을 때, 처음에는 이런 '나'에 대한 정보 (즉, 관심/전문 키워드)를 활용하고, 나의 관게정보를 활용한 서비스를 내놓기를 기대했지만, 아직은 여러 여건상 단편적인 소셜검색서비스들만 내놓은 것같다. 다음단계는 분명한 것같지만, 여전히 갈길이 먼 것같다. (참고로 저는 소셜웹검색에서 '관심유저' 데이터만 뽑아줬을 뿐, 다음의 소셜검색 전략에 대해서 일체 들은 바가 없다.) 이건 내부적으로 논의되었는지 아닌지 나는 잘 모르겠다. 내부적으로 논의되었더라도 내게는 알려주지 않은 것이니 본 포스팅의 모든 것은 내 머리속에서 자유연상으로 나온 결과다. 내부기밀에 대한 발설이 아니니 지레짐작으로 앞서나가지는 말기 바란다. 현재까지도 나름 그런 규칙을 정해서 지킬려고 노력했지만, 앞으로도 본 블로그에 올라오는 모든 포스팅들은 내가 다니는 회사 '다음'의 입장과는 전혀무관한 것임을 밝힌다. 그냥 다음이라는 회사에서 검색/데이터마이닝을 하는 어떤 사람의 생각일 뿐이다. 

댓글을 달아 주세요

Share           Pin It
 지난 여러 포스팅에서 검색의 미래나나 소셜검색 등에 대한 저의 짧은 생각들을 적었습니다. 특히 검색의 미래에 대한 포스팅에서 '검색은 미래가 아니다'라는 도발적인 선언을 했습니다. 현재 익숙한 검색행위가 완전히 사라진다는 것을 뜻하는 것이 아니지만, 검색 Googling이라는 조금 부자연스러운 검색패턴에 진화가 있을 것은 확실해 보입니다. 그런 형태로 단순히 인터넷 포털들이 제공하는 문답형지식서비스에서부터 최근 소셜네트워킹을 이용한 지식서비스, 그리고 사용자의 (검색) 의도 intent 나 문맥 context를 미리 파악해서 정보를 제공하는 (또는 더 나아가 필요한 액션들을 취해주는) 그런 서비스들로 진화할 것으로 보았습니다. 물론 그런 환경에서도 현재의 검색행위가 완전히 사라지지는 않을 것입니다. 아무리 검색의 패턴이 바뀐다하더라도 그래도 차후 몇년간 주요 이슈가 될 검색서비스에 대해서 무시하고 지나칠 수는 없습니다. 새하늘과 새땅이 창조되기까지는 아직 5년, 10년, 또는 그 이상의 긴 여정이 필요하기 때문입니다. 그런 의미에서 제가 생각하는 (현재도 그렇지만) 앞으로 더욱 주목/중요해지는 검색서비스는 적어도 두가지입니다. 지난 포스팅들에서 전개해가고 있는 소셜검색서비스가 그 첫번째이고, 두번째는 구조화검색입니다. 이 두 서비스가 미래가 없는 검색의 미래/핵심이 될 것입니다. 소셜검색에 대한 얘기들은 따로 시리즈로 전개하고 있으니, 이번 포스팅에서는 구조화검색에 대해서만 간단히 기술하겠습니다.

 구조화검색 structured search은 말그래도 검색의 결과가 사용자들의 (검색) 의도에 맞게 재배치되어서 전달되는 것입니다. (재배치란 단순히 레이아웃의 위치조정을 포함해서, 검색결과에서의 부분선택, 검색결과통합, 또는 수정 등을 포괄한 것입니다.) 넓은 의미에서 기존의 IR (Information Retrieval)에서 BM25나 최신순, 또는 인기도 (e.g., PageRank) 등을 고려해서 소팅된 결과를 제공해주는 것도 일종의 구조화이고, 검색결과를 클러스터링해서 비슷한 이슈끼리 모아주는 것도 구조화이고, 한국의 다음이나 네이버 등에서 제공해주는 일명 통합검색, 즉 카페, 블로그, 지식, 뉴스 등의 소스/섹션별로 묶어서 보여주는 것, 그리고 섹션의 노출순서를 동적으로 조정해주는 것 모두가 구조화입니다. 그리고, (미국) MS 빙에서 제공해주는 가격비교형식의 쇼핑 키워드들에 대한 재정열이나 구글 스퀘어드 Squared와 같이 더 진화된 형식의 구조화도 있습니다. 현재로썬 울프람알파에서 제공해주는 검색결과가 가장 구조화된 형태입니다. 그리고, 오해를 할 수 있는 부분이, 단순히 검색결과, 즉 출력을 재조정하는 것만이 구조화검색이 아니라, 입력에서도 검색쿼리를 지능적으로 만드는 것도 구조화입니다. 가장 단순한 구조화입력으로 '상세검색'을 들 수가 있습니다. 그리고, 다음검색에서 선보였든 슬래쉬 (/) 검색도 일종의 구조화입력으로 볼 수가 있습니다. (참고. 슬래쉬검색에 대한 자세한 사항은 다음검색블로그를 참조하세요.) 지능적으로 검색어를 입력하고, 지능적으로 검색결과를 보여주는 모든 것이 구조화검색이라고 보시면 될 것같습니다. 여러가지 개선사항이 있지만, 구조화검색의 대략적인 모습은 위키피디아 또는 학술논문으로 보면 될 것같습니다. 검색어를 입력했을 때, 단순히 검색어를 포함한 문서목록을 보여주는 것이 아니라, 특정 개념 (키워드/검색어)에 대해서 기승전결/서본결론이라는 완전한 형식을 취할 뿐만 아니라, 여러 곳에 흩어진 정보를 하나의 페이지 내에 추가, 편집, 및 인용을 하고, 또 부가정보들에 대한 레퍼런스/사이트들을 보여주는 등... 즉, 여러 목록들 중에서 사용자가 가장 적합한 문서를 선택해서 검토하는 것이 아니라, 검색결과페이지 그 자체로 완벽한 답변이 될 수 있는 형태로의 진화를 구조화검색으로 보고 있습니다. (완벽함이란 더 더할 것도 없고, 굳이 뺄 것도 없는 그런 상태)

  입출력에 따른 구조화검색
  • 구조화 입력: 검색창에 몇개의 단어조합으로 검색자의 의도에 부합하는 육하원칙에 맞는 검색결과를 찾아낼 수가 없다. 그런 약점을 보완해주기 위해서 예전부터 '상세검색'이라는 옵션들이 제공되고 있고, 최근에는 검색 후에 옵션들을 변경하는 기능들을 많이 지원해주고 있습니다. 검색옵션을 변경하는 것과 함께, 많이 사용되는 구조화입력으로는 사용자들이 입력할만한 검색어를 미리 보여주고 선택하도록 하는 검색서제스트, 입력된 검색어와 연관성이 높은 검색어를 보여주는 관련검색어, 관련검색어와 비슷한 것으로 입력된 검색어를 확장 또는 축소해서 제안하는 확장검색어, 그리고 최근 네이트가 밀고 있는 시맨틱검색 (검색서제스트, 관련/확장검색어와 특별히 다른 점은 없음)이나 네이버가 선보인 시쿼스검색 (상세/검색옵션변경과 같음) 등도 일종의 구조화입력으로 보면 될 것같습니다. 그리고, 이렇게 사용자가 입력한 키워드에 반응하는 검색쿼리포뮬레이션 외에도, 실시간 이슈어와 같이 정해진 검색어세트도 일종의 구조화로 볼 수 있을 것같습니다. 그 외에도 미디어다음의 기사내에 포함된 검색링크도 일종의 구조화고, 다음의 여러 서비스에서 마우스 드래그를 통해서 검색을 하는 것도 모두 구조화입력으로 보면 될 것같습니다. 쉽게, 모든 쿼리포뮬레이션 query formulation이 모두 구조화입니다. (검색창에 입력하는 키워드도 사용자들의 복잡한 추상화과정을 거쳐서 만들어진 것이기 때문에 구조화입니다.) 그리고 현재 많이 연구되고 있고, 실서비스들이 오픈되고 있는 보이스검색이나 이미지스캔검색 등도 구조화입니다. 이런 구조화입력에 대해서는 별로 이견이 없을 것으로 보입니다. 
  • 구조화 출력: 구조화입력도 나름 복잡하고 진화속도가 더딘 것이 사실이지만, 구조화출력만큼 어렵지는 않습니다. 물론, 그 정도에 따라서 달리 해석되겠지만... 가장 간단한 구조화 출력으로는 검색된 결과를 특정 조건에 따라서 정열해서 보여주는 것입니다. Okapi BM25와 같이 입력된 검색어의 존재유무 및 빈도 등에 따른 정열, (특히 뉴스 및 실시간 검색에서 중요한) 가장 최근에 작성된 문서순으로 정열, 또는 현재의 구글을 존재케만든 웹그래프 상에서의 인링크 인기도 PageRank에 따른 정열 등이 가장 원시적인 구조화 출력입니다. 그리고 한국의 검색에서 너무 익숙해진 정보의 출처별로 묶어서 보여주는 통합검색 Integrated Display이라는 것도 구조화 출력입니다. (재미있는 것은, 이 통합검색이라는 것이 앞서 말한 단순 검색결과 정열보다 기술적으로 완성된 것이 아니라는 점입니다. 실제 기술력의 부재가 가져온 사생아가 바로 통합검색입니다. 그런데, 한국사회에서 너무 익숙해져버렸다는 점이 항상 아쉬운 대목입니다.) 통합검색에서 출처별로 검색결과를 제공해주기 때문에, 출처별 정열방식도 큰 이슈가 되었습니다. 몇 가지 정열 규칙이 있지만, 간단하게 말해서 서비스제공자들의 정책적인 부분 (예, 지금은 많이 바뀌었지만 2~3년 전까지만 해도 네이버에서는 지식iN의 결과를, 다음에서는 카페의 결과를 가능하면 최상단에 노출시켜준 적이 있었습니다.), 사용자가 입력한 검색어의 패턴이나 화면상에 보이는 검색매칭정도 (예, '~사진'과 같은 검색어에 대해서 이미지 섹션을 최상단에 노출시켜주는 경우), 그리고 중요한 항목으로 사용자들이 많이 클릭을 하는 섹션을 먼저 보여주는 방식 등의 여러 조건에 맞도록 통합검색의 출처별로 정열해주고 있습니다. 그리고, 최근 몇년 사이에는 쇼핑 등의 몇몇 버티컬을 중심으로 검색결과를 구조화해서 보여주는 시도들이 많이 있습니다. 검색된 일반 텍스트 문서를 원본 그대로 보여주는 것이 아니라, 문서 내에 포함된 특정 속성에 맞는 결과만을 추려서 재정리해서 보여주는 것입니다. 오랫동안 테스트 중인 구글스퀘어드의 경우, 쇼핑 관련 키워드가 입력되면 여러 문서들에서 해당 상품과 관련된 정보들을 취합해서 테이블 형식으로 보여줍니다. 각 테이블은 상품명, 가격, 상품설명, 구입처 등의 컬럼들로 세분화해서 보여줍니다. 그렇기 때문에, 장문의 문서를 모두 검토하지 않고도, 해당 문서의 요약정보를 한눈에 파악할 수 있습니다. 현재로써는 가장 진화한 형태의 구조화검색의 모습이 아닌가 생각합니다. 물론, 울프람알파의 구조화 검색결과가 더 흥미롭습니다. 그런데 구체적인 방법을 알 수가 없으니 설명은 생략하겠습니다. (울프람알파는 아직 범용 검색엔진으로 보기에는 무리가 있습니다.) 현재로썬 일부 버티컬 검색을 중심으로 검색결과를 재조합, 재정열, 재배치하는 형식으로 진화하고 있지만, 장래에는 호리존털에서도 비슷한 과정을 거칠 것으로 보인다. 앞서 말했듯이, 제가 구상하는 최종 검색결과의 형태는 '위키피디아'입니다. 특정 주제어에 대해서 여러 곳/사람들의 생각을 필요한 부분만 발췌해서 추가하고, 시기가 지났거나 잘못된 정보를 삭제되고, 단순한 목록의 나열이나 정해진 속성값을 보여주는 것이 아니라 사람들의 의식의 흐름에 맞게 기승전결로 해당 주제어를 설명하고, 또 검색결과 내에서 완전히 설명할 수 없는 경우 외부/레퍼런스링크를 남겨서 사용자들에게 제공해주는 그런 모습이 구조화 출력의 최종 모습이 아닌가 생각합니다. 물론, 특히 UI/UX 측면에서는 위키피디아의 모습이 제 머리속의 구조화검색이라고 말하기는 어렵지만, 위키피디아가 보여주는 다이내믹한 모습이 제가 생각하는 구조화의 그것과 닮았다는 것입니다.
 우리는 완벽한 검색결과를 원하는 것이지, 현재처럼 파편화되고 중복된 문서목록을 원하는 것이 아닙니다. 가장 적합한 하나의 문서를 최상단에 보여주는 것이 현재까지의 검색이었다면, 앞으로는 가장 사용자의 의도에 맞는 새로운 페이지를 (동적으로) 만들어서 제공해주는 것이 검색이 될 것입니다. 이런 것 (지능적 구조화)은 앞으로 소셜검색에서도 당연히 이뤄져야할 것이고, 앞선 검색의 미래에 관련된 포스팅들에서 말한 질문성검색 및 컨텍스트검색 등의 미래의 모든 검색에서 공통적으로 해당되는 사항입니다. 

 처음에 의도했던 글이 된 것도 아니지만 (특히, 입출력별 구조화 설명이 제대로 이뤄지지 못했음), 요는 Structured Search라는 것이 이미 우리 일상에 깊이 관여하고 있지만, 미래에는 더 동적이고 지능적인 검색결과를 제공해주는데 더 많은 핵심역량을 발휘해야 한다는 정도로 글을 이해해주셨으면 합니다. 검색랭킹을 넘은 검색최적화의 단계가 필요합니다.

관련 포스팅.

댓글을 달아 주세요

  1. 유똥 2010.08.03 14:48 신고 Address Modify/Delete Reply

    자세히 읽고픈데 너무 엄청난....글의 압박이네요... 조그만 사진이라도 좀있었으면^^;

    • Favicon of http://bahnsville.tistory.com BlogIcon Bahniesta 2010.08.04 12:38 신고 Address Modify/Delete

      그러게요. 매번 사진을 함께 올릴 걸이라는 생각도 하지만, 괜히 어슬픈 사진들은 집중력만 저하시킨다는 연구가 있어서 필요한 경우가 아니라면그냥 글만 씁니다.

Share           Pin It
 제가 처음 '소셜검색 My Drawing of Social Search'라는 글을 적은지도 벌써 3개월이 지났습니다. 1편에서는 현재 여러 분야에서 말하는 소셜검색의 정의를 다루었고, 2편에서는 블로고스피어와 다음뷰를 중심으로 소셜그래프의 관계에 대한 제 생각을 정리했습니다. 2편에서 첨부한 그림을 통해서 모든 것을 파악할 수가 있지만, 제가 생각하기에 소셜 블로고스피어는 블로깅을 하는 글작성자, 작성된 글을 읽고 평가를 하는 글추천자, 그리고 양질의 글들을 소비하는 글소비자로 구성됩니다. 작성자, 추천자, 소비자를 별도의 객체로 볼 이유도 없고, 또 굳이 이들 사이의 (일반) 소셜릴레이션이 존재한다고 말할 이유도 없습니다. 지난 2편의 그림을 바탕으로, 제가 생각하는 소셜검색에서의 소셜랭킹모델에 대해서 이번 포스팅에서 다루도록 하겠습니다. 제가 말하는 것이 완벽한 소셜검색/랭킹모델은 아니고, 원시적인 형태임을 밝힙니다. 지난 3개월동안 부지런히 노력을 해서, 해당 모델을 구현하고 시연해봤더라면 지금쯤 새로운 서비스를 오픈했거나 재미있는 논문을 출판했을텐데, 저의 게으름이 아직 아이디어를 아이디어 수준에 머물도록 내버려두었습니다.

 검색에서 (검색)랭킹이 사용자가 입력한 키워드/검색어와 해당 키워드를 포함한 문서와의 연관성으로 측정되듯이, 기본적으로 소셜검색랭킹도 검색어와 문서와의 연관성으로 표현될 수 있습니다. 다만, 아무게의 글을 찾는 것이 아니라, 내가 알고 있는 친구나 전문가의 글을 찾는다는 점에서 일반 검색랭킹과는 차이점을 줍니다. 그리고, 일반 소셜그래프에서의 소셜검색이 아니라, 다음뷰/메타블로그를 중심으로한 블로고스피어에서의 소셜검색랭킹을 다룬다는 점에서도 (일반)소셜검색랭킹과도 차별점을 둡니다. 제가 구상하는 구체적인 소셜검색랭킹모델을 설명하기에 앞서, 간단한 노테이션 notation을 먼저 정리하겠습니다.

 객체 Object
  • q: 사용자가 입력한 검색어 query (또는 keyword)
  • d: 주어진 검색어 q를 포함한 문서 document (본 포스팅에는 나오지 않을 것이지만, D는 이런 d들의 합을 뜻하겠죠.)
  • w: 2편의 그림에서 글작성자 writer
  • c: 2편의 그림에서 글소비자 consumer
  • r: 2편의 그림에서 글추천자 recommender
 함수 Method/Function
  • Rnk(d, q): 랭킹함수 - 사용자가 입력한 검색어 q와 검색엔진이 찾은 문서 d와의 최종 랭킹점수
  • M(d, q): 매칭점수 - 사용자가 입력한 검색어 q와 문서 d 사이의 매칭정도, 보통 relevance라고 말함
  • R(d): 검색된 문서 d의 최신점수, recency
  • E(w, q): 사용자가 입력한 검색어 q에 대한 글작성자 w의 전문성, expertise
  • I(w, c): 사용자/글소비자 s와 글작성자 w와의 친밀도, intimacy
  • P(d | r): 글추천자 r의 authority에 바탕을 둔 글의 인기도, popularity (e.g., 추천회수)
  • A(w): 글작성자 w의 인기도/권위도, authority
 이상의 노테이션만을도 제가 구상했던 원시적인 소셜검색랭킹모델이 완성이 됩니다. 최종적으로 소셜랭킹은

더보기

입니다. 소셜랭킹모델에 사용된 함수 f는 경우에 따라서 곱하기 (*)가 될 수도 있고, 더하기 (+)가 될 수도 있고, 아니면 더 복합한 수식/로직으로 중무장할 수도 있습니다.

 개별 함수를 다시 설명하면, 매칭점수 M(d, q)는 Information Retrieval에서 사용하던 단순 블리언 boolean 매칭을 사용하거나, 조금더 복잡한 Okapi BM25 (BM의 경우, 파라메터설정에 따라서 BM27, .. 등의 다양한 이름을 가지지만, BM25가 가장 일반적인 모델임)을 그대로 사용하면 됩니다. 최신점수 R(d)의 경우, 특수한 경우가 아니면, 가장 최근에 업데이트된 최신문서가 높은 랭킹점수를 갖도록 하는 것입니다. 함수정의에 따라서 연속함수나 계단식함수를 정의할 수 있고, 최신성의 기준도 많은 실험을 통해서 얻어야 합니다. 매칭점수와 최신점수는 일반 검색랭킹의 그것들과 동일합니다. 현재 구상중인 소셜랭킹의 차별점은 이후에 나오는 전문성, 친밀도, 인기도, 및 권위도에 있습니다. 간단히 설명하자면, 글쓴이의 전문성은 특정 검색어 q에 반응하는 문서들 D 중에서, 검색어 q에 전문성을 가진 글쓴이에 의해서 작성된 문서 d가 가장 높은 랭킹을 받도록 하는 것입니다. 글쓴이의 전문성은 이제까지 블로깅한 모든 내용을 바탕으로 평소에 자주 사용하던 단어/주제 등을 미리 학습시켜둬야 합니다. 글쓴이와 검색자의 친밀도가 소셜검색의 가장 차별점입니다. 단순히 친구 (또는 검색자가 지정한 전문가)가 작성한 글중에서 q에 반응하는 문서 d만을 보여주는 것입니다. 단순히 검색범위를 제한한다는 의미로 보시면 됩니다. 그렇지만, 소셜그래프상에서 친구의 숫자가 적은 경우, '친구의 친구'와 같이 확장된 소셜그래프에서 문서를 검색해주게 됩니다. 개념적으로 검색범위를 축소시키기 때문에 일반 검색보다 더 쉽게 느껴질 수 있지만, 역으로 검색범위가 좁아지기 때문에 기술적으로 더 많은 어려움을 가지게 됩니다. 친밀도에 대한 부분은 대부분의 소셜검색/서비스와 관련된 문서들이 다루고 있는 부분이니 자세한 내용은 생략하겠습니다. 다섯번째로, 글의 인기도의 경우는 보통 다음뷰나 디그에서 보여주는 추천회수로 보시면 됩니다. 그런데, 모든 추천이 동일한 가중치를 받는 것이 아닙니다. 지금 다음뷰에서 오픈에디터라는 제도를 활용하듯이, 평소에 양질의 추천을 하는 이들의 추천에 더 높은 점수를 부여하고, 또는 스팸/어뷰징 추천자의 추천은 점수를 제하거나 감산하는 것도 방법에 포함될 수 있습니다. 그리고, 소셜의 개념을 더 확장해서 '친구/지인'이 추천한 글에 대해서는 더 높은 인기도를 받도록 조정을 할 수도 있습니다. 마지막으로, 글작성자의 권위도의 경우는 전문성과 개념상 중복되는 부분도 있지만, 전문성의 경우 검색어에 종속 (query-dependent)된 개념이지만, 권위도의 경우 검색어 비종속 개념입니다. 예를 들어, 트위터에서 이찬진님, 이외수님, 박경철님 등과 같이 이미 특정 분야에 권위를 가진 분들이 작성한 글을, 일반인들이 작성한 것보다 먼저 보여준다는 개념입니다. 이런 글쓴이의 권위는 쉽게는 소셜그래프의 인링크 개수로 점수화할 수도 있고, 아니면 다음뷰/디그에서 글을 발행했을 때 얻을 수 있는 예상추천수 등으로 권위도를 측정할 수가 있습니다.

 제가 원시적인 소셜검색랭킹모델을 장황하게 설명했지만, 이런 수식적 모델보다 더 중요한 것이 있습니다. 바로 Query Intent 또는 User Intent라고 불리는 사용자/검색어 의도입니다. 현재 소셜검색이 주목을 받고 있는 것이, 단순히 친구의 글을 보여주겠다는 것이 아니라 사용자의 의도에 더 부합한 글을 보여주겠다는 것입니다. 그렇기에, 아무리 좋은 소셜검색모델을 가진다고 하더라도 검색어/사용자의도를 제대로 파악을 하지 못한다면 제대로된 소셜검색결과를 제공해줄 수가 없습니다. 그리고, 검색어의 의도에 맞도록 위에서 제시된 여러 점수체계들이 유기적이고 동적으로 설정되어야 합니다. ... (오늘은 여기까지)

댓글을 달아 주세요

Share           Pin It
 지난번 같은 제목의 글에서 제가 구상중인 소셜검색 Social Search에 대한 얘기는 미뤄둔채, 일반적인 소셜검색의 여러 유형들에 대한 글만 적었습니다. 오늘도 제가 현재 나름 준비중인 소셜검색에 대한 구체적인 사항은 적지 않을 예정입니다. 대신, 오늘은 제가 생각하는 소셜검색에 이르기 전 단계의 내용들, 즉 소셜그래프라던가 또 소셜그래프에 엮인 글들에 대한 이야기를 전개하려 합니다. 제가 지금 테스트 버전으로 실험 중인 것이 다음뷰이기 때문에, 어쩌면 아래의 그림/설명은 다음뷰의 프레임워크에 치중되어있을 수 있다라는 점을 양해바랍니다.

 블로그와 다음뷰 (또는 메타블로그)를 사용해보신 분들은 아시겠지만, (사람의 측면에서, 아래의 그림과 같이) 블로고스피어를 구성하는 요소는 블로그에 글을 적는 블로거 (또는 아래의 그림에서 Writer), 그런 블로그글을 읽고 평가해주는 평가자 (Recommender), 그리고 검색 등을 통해서 그런 블로그글을 읽는 소비자 (Consumer)로 나눌 수 있을 것같습니다. 물론, 마이너한 다른 요인들이 존재하겠지만, 현재 제 머리 속의 그림으로는 글작성자, 글추천자, 그리고 글소비자로 나눌 수 있을 것같습니다. 물론, 글작성자가 다른 글을 읽는 글소비가 될 것이고, 또 그런 글에 대한 평가를 내리는 글추천자가 되는 일종의 Trinity를 형성할 수는 있지만, 일단은 모두가 별개의 사람으로 간주하겠습니다. 제가 소셜검색을 구상할 때, 염두에 뒀던 것은 글쓴이의 주제에 대한 전문성입니다. 물론, 소셜검색에서도 일반 텍스트 검색과 같이 검색어와 문서의 관련성 Relevancy이나 글의 작성시기 Recency도 중요하고, 일반 소셜검색에서 말하는 검색자/소비자와 글쓴이의 관계 (친밀도 Intimacy)도 중요합니다. 이런 일반 요소에 더해서, 글쓴이의 전문성에 가중치를 주고 싶습니다. 실제, 글쓴이의 전문성이라는 요소는 Aardvark에서 질문자들의 질문에 가장 적합한 답을 해줄만한 답변자를 찾는 아이디어에서 차용한 것입니다. 글쓴이의 전문성을 확인할 수가 있다면, 비슷한 방식으로 추천자의 신뢰성이나 소비자의 관심분야 등도 구축할 수 있을 것입니다. (이런 전문성, 신뢰성, 관심분야를 '프로파일'이라는 용어로 통일하겠습니다.)

블로고스피어 Trinity: 글작성자 글추천자 글소비자


 이어서, 위의 그림의 각 요소 및 관계에 대해서 좀 자세히 설명하겠습니다. (원 - 사람, 사각형 - 프로파일, 원사각형 - 히스토리)
  • 글작성자: 글작성자가 직접 자신의 전공/전문분야를 텍스트나 카테고리형식으로 명시화시켜줄 수도 있겠지만, 실제 그/그녀가 이제껏 작성한 글들이 그/그녀의 프로파일입니다. 그/그녀가 최근에 '박지성' '맨체스터유나이티드' '첼시' '프리미어리그' 등과 같은 글/단어를 많이 사용했다면, 그/그녀의 전문성은 축구, 프리어리그 등으로 국한시켜줄 수가 있습니다. 이렇게, 글쓴이의 최근 글들에서 그/그녀가 전문성을 가진 분야의 키워드/태그들을 뽑아낼 수가 있습니다. 실제, 다음뷰의 데이터에서도 전문/파워블로거들의 경우 이런 작성자 프로파일을 쉽게 만들어낼 수가 있었습니다. 그런데, 특정분양에 특정해서 글을 쓰지 않는 일반 블로거들의 경우에도 같은 방식으로 프로파일링이 가능한가?에 대한 고민은 여전하고, 또 전문 스패머들의 경우 특정단어들을 가지고 스패밍/어뷰징을 시도하기 때문에 글들에서 사용된 키워드들만을 가지고 전문가로 오인하게되는 위험을 안게 됩니다. 이를 해결하는 방법으로, 글쓴이의 인기도라는 항목/요소를 이용하는 방법도 있습니다. (구체적인 사항은, 다음번 포스팅으로 미루겠습니다.)
  • 글추천자: 글작성자의 프로파일은 그/그녀가 쓴 글들에서 얻듯이, 글작성자의 프로파일은 그/그녀가 추천했던 행위에서 얻을 수 있습니다. 즉, 이제까지 추천했던 글들의 품질이 얼마나 좋았느냐?에 따라서, 이 추천자가 추천한 글들이 신뢰할만한지 아니면 그저그런지를 짐작할 수가 있습니다. (작성자 프로파일처럼 추천자의 프로파일도 전문성이라는 요소로 만들어낼 수도 있습니다. 이 부분까지 고려된다면 너무 복잡해지기 때문에, 일단은 추천자 프로파일은 추천신뢰도라는 항목으로만 묶어두겠습니다.) 실제 다음뷰에서, 추천자들이 몇개의 글을 추천했고 그런글들이 다음뷰의 베스트로 몇 건이 올라갔는지 등을 고려해서 추천신뢰도를 구하고 있습니다. (다음뷰/블로거뉴스에 대한 간략한 설명은 '한장으로 보는 블로거뉴스 & 열린편집' 글 참조)
  • 글소비자: 글소비자의 프로파일 (관심분야)도 같은 형식으로 이제까지 어떤 글들을 보았는지에 대해서 조사해보면 다 나옵니다. 범위를 더 좁히면, 이제까지 검색창에서 입력한 키워드들을 종합해보면 글소비자/검색자의 관심분야를 쉽게 확인할 수 있습니다. 그런데, 이런 검색자의 검색히스토리를 검색엔진서버에 남겨놓고, 또 이를 분석해서 활용한다는 것은 개인 프라이버시 등의 법적 문제를 야기하기 때문에, 검색자/소비자 프로파일을 만들겠다는 생각은 현실성이 떨어집니다. (실제, 이런 프로파일을 만들어서 활용만할 수 있다면, 더 나은 검색결과제공 및 광고활용 등이 가능합니다. 그러나, 법적인 문제 뿐만 아니라, 현실적으로 어떻게 구현해서 활용할 것인가에 따른 여러 기술적인 어려움들도 있습니다.) 글소비자의 프로파일링은 어렵지만, 검색광고에서와 같이 현재의 '검색어'로도 글소비자의 프로파일이 충분합니다. (물론, 글소비자의 다양한 컨텍스트정보를 활용할 수 있다면 금상첨화겠지만...)
  • 그런데, 제가 그림에서 글작성자는 붉은색으로, 글추천자는 푸른색으로, 그리고 글소비자는 노란색으로 표시한 이유는... 글작성자는 뜨겁고 순수한 열정으로 글을 작성해줬으면 하는 바램에서, 글추천자는 냉철하고 중립위치에서 글을 평가해줬으면 하는 바램에서, 그리고 글소비자는 글작성자의 열정과 생각에 공감을 하면서 글을 읽어줬으면 하는 바램에서, 빵강, 파랑, 노랑으로 표시해뒀습니다. 이것이 제가 생각하는 진짜 건전하고 지속가능한 블로고스피어, 나아가 웹생태계 Web EcoSystem을 만들어가는 것이라 생각합니다. (관련글들은... 생략)

 그리고, 글작성자, 글추천자, 그리고 글소비자 사이의 관계에 대해서 잠시 언급하면... 먼저, 글추천자는 글작성자와 (개인적 친분이 있을 수도 있겠지만) 중립의 위치에서 냉정하게 글을 평가해줘야 합니다. 그래서, 제가 neutrality라고 표시해두었습니다. 역으로, 글작성자는 글추천자에게 어떠한 피드백도 줄 수가 없기에 화살표시가 없습니다. 또, 글작성자가 특정인의 추천자로부터 글을 추천받았다 손치더라도, 나중에 보상심리로 그 추천자의 글을 추천해주는 그런 일 (상호추천 Mutual recommendation)이 발생하면 안되기 때문에, 추천자에서 작성자로의 일방향 화살표를 해두었습니다. 두번째, 글소비자는 글추천자의 추천을 전적으로 신뢰하는 관계가 되어야 합니다. 트위터나 다른 많은 미디어에서도 그렇듯이, 특정 유명인이 글을 추천해주면 크게 의심없이 글을 읽는 것과 같은 현상을 말하는 것입니다. 추천자의 신뢰도 및 권위 Authority를 믿기 때문에, 추천된 글을 읽을 수가 있습니다. (역으로 화살표가 없는 것은 어쩌면 당연한 것이니 설명 생략) 마지막으로, 글작성자와 글소비자의 관계는 조금 더 복잡합니다. 이들 사이에는 원래부터 알고 지내던 지인/친구 관계일 수도 있지만, 글소비자가 일방적을 글작성자를 추종하는 관계일 수도 있습니다. 그래서, 글소비자로 향하는 화살표는 흰색으로 표시해두었습니다. 일반 블로그들에서도 보듯이 '친구블로그'와 '구독블로그'로 나뉩니다. 소셜검색에서, 친구가 적은 글을 보겠다는 니즈와 전문가/유명인의 글을 보겠다는 니즈가 동시에 있습니다. 이런 현상을 검은화살표와 흰화살표로 표시한 것입니다. 결국 이들 간의 관계는 친밀도 Intimacy로 표시됩니다. 친구사이의 근접도 closeness와 유명인/전문가에 대한 권위를 포괄해서 친밀도 또는 연결도 connectedness로 표시했습니다.

 이상의 이런 글작성자, 글추천자, 글소비자의 역할 및 관계를 잘 이해한다면 재미있는 소셜검색이 탄생할 거라 생각합니다. 지금은 조금씩 다음뷰의 데이터로 가능성만을 확인하고 있는데, 혼자서 시험삼아 진행하는 거라 속도도 많이 느리고 의미있는 (양과 질 모두) 성과를 만들어낼 수 있을까?라는 생각도 가지면서 준비/진행중에 있습니다. 다음에 다시 같은 제목의 글을 적게 된다면, 실제 위의 요소를 소셜검색/소셜랭킹에 어떻게 녹여낼 것인가?에 대한 글을 작성해보도록 하겠습니다.

댓글을 달아 주세요

  1. Favicon of http://mytears.org BlogIcon 정태영 2010.03.28 14:54 신고 Address Modify/Delete Reply

    blogrank ranking weblogs based on connectivity and similarity features

    이 논문을 한 번 읽어보시면 도움이 되지 않을까 싶습니다. :) 구상하셨던 내용과 유사한 내용이 정리되어 있는 논문입니다.

  2. 성준 2010.04.12 16:32 신고 Address Modify/Delete Reply

    근데 제가 글 소비자의 입장이라면 전 프로파일을 남기는 것에 대해 큰 거부감은 아직(?) 없습니다. 그런데 이게 법적인 문제를 야기한다니... 좋은 검색이 가능하다면 프로파일 남기는 것을 동의하고 사용하면 안될런지...

    그리고 요즘 트위터를 쓰면서 개인적으로 느끼는 문제지만 identity가 두개 이상 있었으면 좋겠다는 생각을 가져 봅니다. 물론 아이디를 두개를 가지면 되는 것이긴 한데.... 소셜검색이라면 이경우도 소비자로써 복수의 아이덴티티를 제공하면 좋겠다 싶은 생각이... (써놓고 보니 설계상 무시해도 될 듯..)

    여튼 한장의 그림(도표)에 집적된 고민을 보는 것은 때론 즐거움을 주네요.,

Share           Pin It
 올해도 여전히 '소셜'이 화두다. 저같이 IT업계에 몸을 담은 테키들뿐만 아니라, 일반인들에게도 소셜은 특별하다. 인터넷 자이언트 구글조차도 제대로 엮어내지 못하는 (현재까지 대부분 실패한) 분야가 소셜인데, 하찮아보이던 자그마한 벤쳐기업들인 페이스북이나 트위터는 나름 성공했던 분야가 소셜이다. 그런데 소셜이란 어느날 갑자기 하늘에서 떨어진 것이 아니다. 사람을 뜻하는 한자어 '인간 人間'도 뜻을 풀어보면 '사람 사이' 즉 소셜이다. 수렵 또는 목축생활에서 벗어나 경작을 하면서부터 인간은 모여서 마을을 만들었다. 물론, 그전의 수렵 및 목축 생활에서도 서로를 보호하기 위해서 가족 단위로 군집을 이루었다. 아니, 사람의 탄생 자체가 소셜이 아닌가? 남여 두 사람이 만나야, 새로운 생명체가 탄생한다. 혼자가 불완전해서 두명이 모이고 또 새끼를 치고 그렇게 가계를 형성하고, 그러면서 이웃 가계와 경쟁도하고 협력도하면서 마을을 형성하고, 또 뭉치고 흩어지고는 반복하면서 인류의 역사에서 소셜/사회는 뗄레야뗄 수가 없는 개념이었다. (종교 얘기는 아니지만) 성경에서도 태초의 하나님이, 유일신이지만, '우리'라고 불렀다. 더 깊은 개념으로 삼위일체라는 용어를 사용하지만,... 그리고 남자 (아담)가 외로워보여서 여자 (하와/이브)를 만들었다고 한다. 그리고 그네들이 아이를 낳았다고 한다. 사람에서 시작하지 않고, 신에서 시작해서 소셜은 부정할 수 없는 개념이다. 그런데, 이런 자연스러운 개념이 기술을 만나면서 새롭게 부각되고 있다. 2000년대 초의 원시적인 싸이월드나 마이스페이스, 어쩌면 90년대 후반의 한메일과 카페, 들이 등장하더니, 10년이 지난 지금에는 페이스북이 자이언트 구글을 제치고 가장 많은 PV를 만들어내는 인터넷 대표 서비스가 되었다. 여기까지 소셜에 대한 얘기다. 그렇다. 태초에는 아니었지만, 인터넷에는 구글이 있다. 구글이 무엇이냐? 구글링 googling이 검색하다라는 의미로 쓰인다. 구글은 검색이다. 구글은 인터넷의 지배자다. 그 지배자가 하룻강아지인 페이스북과 트위터를 만났다. 기술적으로, 검색이 소셜을 만났다. 그래서 태어나는 것이 '소셜검색'이다. 서론이 길었지만, 오늘은 이 소셜검색에 대해서 얘기해보고 싶다. 

 소셜을 정의하는 방법도 여러가지고, 검색을 정의하는 방법도 여러가지다. 그렇기에 소셜검색을 정의하는 방법은 더 다양하다. 모든 이들의 생각을 나열할 수도 없고, 하나로 묶을 수도 없으니 생각나는 대표적인 정의 또는 관점만 살펴보자. 그리고, 위키피디아에서 social search를 찾아보면 현재 나름 소셜검색을 지원해주는 수많은 기업들의 이름을 볼 수가 있다.
  • 소셜네트워크검색: 가장 쉬운 개념이다. 소위 말하는 마이스페이스, 페이스북, 또는 트위터 등의 소셜네트워크 서비스 내에 존재하는 다양한 정보나 사람을 검색하는 것을 소셜검색이라고 부르는 이들이 있다. 가장 직관적인 관점이다. 이걸 굳이 더 자세하게 설명해서 뭣하리요...
  • 소셜그래프(서클)검색: 이건 좀 더 확장되었으면서, 가장 소셜검색에 가까운 개념이다. 소셜그래프 또는 소셜서클은 나와 연결된 사람들 (또는 그들의 글)을 뜻한다. 그렇다. 나와 연결된 이들이나 그들의 생각/글을 검색하는 것이 소셜검색이다. 그래서, 나와 얼마나 가까우냐가 중요한 요소로 작용한다. 단순히 트위터의 팔로잉 관계로만 있다고 소셜그래프에 넣을 것인가? 아니면 같은 학교를 졸업했는 사람을 소셜그래프에 넣을 것인가? 등과 같은 짜증나게 많은 요인들을 또 고민해야 한다. 어쨌던 간단히 많은 연결이 있으면 가깝다 (intimacy 친밀도)고 말할 수가 있다. 트위터의 팔로잉 관계면서 페이스북의 친구라면 엄청 가까운 걸로 착각할 수도 있다. 여기에 같은 지역이나 나이 또는 학교 등을 포함시키면... 에휴, 더 나아가 이메일 송수신기록이나 채팅기록 등까지 포함시키면 더욱 조밀한 소셜그래프를 만들 수가 있다. ... 그러고 보니, 소셜서클은 사람보다는 그들의 글에 더 맞는 개념인 것같다. (이건 그냥 개인 추측이다.) 지루한 설명을 했지만 소셜그래프/서클검색은 소셜네트워크검색보다 조금 더 복잡하다. SN검색이 하나의 네트워크만 고려하면 되지만, 이것은 여러 개의 네트워크들의 중첩효과까지도 고려해야 한다. ...
  • 소셜필터링 또는 소셜추천: 간혹 소셜검색을 이렇게 사용하는 이들도 있다. 기본적으로 협업필터링 collaborative filtering (CF)와 비슷한 개념이다. 단지 CF는 사람사이의 관계에 대한 고려는 없이 전체 군집에서 비슷한 성향의 사람군이나 제품군을 묶어서 추천해주는 것이지만, SF에서는 CF의 기본 필터링/추천방법론에 소셜이라는 사람사이의 관계를 넣었다는 것이 특징적이다. 즉, 분야의 전문가나 많은 군중이 추천해주는 것보다는 내 친구가 추천해주는 것을 더 믿는다라는 기본 가정에서 시작한다. 그래서, 종종 이렇게 말한다. 오늘날 (소셜넷트워킹에서) 신뢰 Trust는 권위 Authority보다는 친밀도 Intimacy에 있다. 사실, 요즘 책의 서평을 보면 소위 전문가들의 추천사는 못 믿겠다. 입에 발린 추천이 늘려있다. 그렇기에 내 친구가 추천해주는 책을 읽게 된다. (소셜필털링인 아닌) 친구의 추천은 또 다른 장점이 있다. 그 친구는 나의 context 정보를 알고 있다는 거다. 나의 학력수준이나 평소에 관심사를 알고 있기에 친구는 내게 더 적합한 책이나 서비스, 제품을 추천해줄 것이다. (신뢰의 바탕 위에) 역으로, 친구의 추천을 받았을 때도, 내가 친구의 컨텍스트를 이미 알고 있기에 그 친구가 왜 이런 제품을 추천해줬는지를 짐작할 수 있다. 소셜필터링/추천이 더욱 고도화되고 앞서 말한 소셜그래프가 더욱 명확히 되면, 이런 컨텍스트 정보도 지식의 형태로 사용이 가능해질 것이다. 그러면, 사람과 사람의 관계에서 추천을 해주듯이 소셜필터링/추천으로 소개받은 제품이나 글들이 더욱 신뢰를 가질 수 있고, 더욱 보고 싶어질 것이다. ... 여담으로, 트위터에서 나의 평소 트윗기록을 본 사람들은 내가 올린 단축URL들이 보통 영어로된 IT관련 소식이라는 걸 짐작하고 그냥 무시하거나 한번쯤 클릭해서 보거나 등의 행동을 일으킬 것이다. 이게 소셜추천이면서 컨텍스트추천의 일례다. 너무 러프하고 비직관적인 예를 들어서 미안합니다.
  • (Updated) 크라우드서치: 소셜검색의 중요한 측면 중에 하나가 크라우드검색 (Crowd search) 또는 Search by Social/Crowd를 들 수 있습니다. 앞에 제시된 소셜검색들은 소셜그래프 상에 있는 데이터/정보를 검색하는 것이지만, 크라우드서치는 소셜그래프에 의한 검색입니다. 즉, 트위터나 페이스북에 궁금한 점을 질문하면, 자신의 소셜 그래프 내에 속한 사람들이 답변을 달아주는 것입니다. 네이버 지식인지 모든 이에게 질문을 하고 답변을 받는 것에 반해서, 크라우드서치는 자신과 친분 및 관계가 있는 이들에게만 질문을 하고 답변을 받는, 형태측면에서는 조금 클로즈드 closed 질의입니다.
  • 그리고,... 또 당신이 생각하는 그 모든 소셜검색도 소셜검색이다.
  • 아, 그리고 중요한 것... 사람추천... Aardvark와 같이 정보를 보여주는 것이 아니라, 전문가나 친구를 보여주는 경우도 존재한다. Aardvark에 큰 기대를 걸었는데, 스스로 구글의 품에 들어간 것이 아직까지도 아쉽다. 구글의 품에서 더 큰 성공을 거둘 것을 기대하지만, 구글 검색 패러다임을 바꾸어줄 Aardvark 검색 패러다임을 기대했는데... 애도

 진짜 본론에 들어가기 전에 서론과 본론의 서론이 너무 길어졌다. 벌써 힘이 빠져서 제대로된 본론을 적지 못하고 그냥 간략히 결론으로 가자.

 대략적으로 제가 구상중인 소셜검색은... 친구관계와 전문성이 동시에 만족시켜주는 걸 생각하고 있습니다. 똑부러지게 보여드릴 단계가 아니라서 구체적으로 말씀드리진 못하지만,... 그냥 검색의 랭킹의 관점에서 다음의 요소들이 고려되어야 합니다.
  • (당연히) 검색어와의 관련성 (전통적인 검색엔진)
  • 글작성자의 전문성 (이 부분이 제가 특히 주목하는 부분인데, 자세한 것은 생략, Aardvark가 일부 구현)
  • 글작성자와의 친밀도 (전통적인 소셜검색엔진)
  • 최신성 (전통 검색엔진에서도 중시를 하는 부분이지만, 소셜검색에서는 더욱 중요합니다.)
죄송합니다. 진짜 본론은 다음에 기회를 만들어서 작성하겠습니다.

댓글을 달아 주세요

  1. Favicon of http://dreamreader.tistory.com BlogIcon dreamreader 2010.03.07 03:39 신고 Address Modify/Delete Reply

    리플 남겨주셔서 방문해 봤습니다. ^^
    쓰신 블로그 글에서 열정이 느껴져서 대단하다 생각되네요. ^^
    아직 트위터 등 소셜 쪽은 하지 않고 있지만
    소셜 쪽에는 아무래도 사생활적인 메시지가 많을 것 같아서
    개인적으로는 소셜 검색은 그리 찬성하지는 않는 쪽입니다. ㅎ

Share           Pin It
 이런 종류의 글들은 보통 사내 게시판/야머에 주로 올렸지만, 이제는 공개된 곳에서 더 자유롭게 글을 올리는 것이 나아보입니다. 사내에서도 누군가는 듣고 또 누군가는 무시했겠지만, 메아리가 없는 '야호'는 참 재미가 없습니다.

 어제 정보의 홍수 또는 컨트롤의 부재라는 주제의 두서없는 글을 올렸습니다. 그런 글을 올린 많은 이유 중에 하나가 오늘날 우리가 접하는 정보 또는 컨텐츠의 양이나 다양성이 상상이상으로 많다는 것이었습니다. (물론 어제 글의 논지는 그런 컨텐츠가 갑자기 생겨난 것이 아니라 항상 우리 주변을 멤돌던 것이 어떤 연유로 우리의 눈에 띄기 시작했고 그 순간부터 우리가 그런 컨텐츠를 소비/가공할 제어권을 놓쳐버렸다는 것입니다.) 어제 글과 논지는 조금 다를 수 있지만, 인터넷의 등장은 컨텐츠의 가치를 높여주었습니다. 전혀 우리와 무관해 보이던 정보/컨텐츠들이 우리가 꼭 알고 넘어가야할 필수품인 것처럼 포장이 되기도 하고, 또는 그것들을 무시해버린 큰 트렌드라는 줄기에서 소외될 것만도 같습니다. 지난 15년 정도의 인터넷의 역사는 컨텐츠를 생산해내고, 컨텐츠를 유통시켜주고, 컨텐츠에 가치를 부여하고,... '인터넷 = 컨텐츠'라는 등식을 성립시켜주었습니다. 그래서 구글과 같은 검색엔진들은 컨텐츠를 찾아주는 주요 플레이어로 역할을 담당했고, 그래서 인터넷 초기 10년의 마일스톤을 장식했습니다. 그리고 SM의 초기부터 주요 플레이어였던 블로깅은 컨텐츠의 생산과 유통과 소비를 일반에 위임하는, 즉 여전히 '인터넷=컨텐츠'의 큰 줄기에서 설명되는 것이었습니다. 그러나 2009년을 기점으로 많은 것들이 변했습니다. 물론 그 전부터 우후죽순 생겨났던 생각과 트렌드였지만 2009년에 방점을 찍은 듯합니다. 바로 2009년의 핵심 이슈는 페이스북이나 트위터와 같은 소셜 미디어 (인간 관계)였고, 트위터를 중심으로 실시간 미디어 및 검색 (시간)이었고, 포스퀘어드나 옐프 등과 같은 지역기반 서비스 (위치)였습니다. 그런데 잘 보시면, 이런 인간/관계, 시간, 그리고 위치라는 정보는 인터넷 초기에 다루었던 컨텐츠와는 뭔가 조금 다르다는 걸 느낄 수 있습니다. 그렇습니다. 이런 관계, 시간, 위치는 단순한 컨텐츠가 아니라 메타 컨텐츠, 즉 컨텍스트입니다. 2009년도에 이렇게 컨텐츠에서 컨텍스트를 더하는 작업의 원년이 된 듯하지만, 2010년과 이후에는 그 작업 속도가 가속화될 것이고 어쩌면 관계, 시간, 위치 이외의 더 다양한 컨텍스트들이 등장할지도 모르겠습니다.

 제가 주로 몸담고 있는 검색그룹 (또는 넓게 인터넷 포털)에서도 이런 컨텍스트가 핵심으로 작용하고 있습니다. 왜냐하면, 하나의 '사건'을 재구성하기 위해서 육하원칙 5W1H이 필요합니다. 누가, 언제, 어디서, 왜, 무엇을, 어떻게... (뒤쪽에 나열된 3가지 원칙은 전형적인 컨텐츠에 해당되고, 앞쪽의 3가지 원칙은 전형적인 컨텍스트입니다.) 그래서 인터넷 검색에서 검색결과를 인물을 중심으로 재배치하거나 (인물 프로필), 시간의 흐름에 맞게 재배치하거나 (뉴스 등) 아니면 지역에 맞게 재배치해서 (지역정보/지도) 보여주는 시도들이 진행중입니다. 지금 당장 다음이나 네이버에서 검색을 해보면, 많은 검색어들이 이 세가지를 벗어나지 않습니다. (검색페이지에서 제일 상단에 노출되는 정보가 어떤 것들인지 확인해보는 것만으로도 바로 짐작할 수 있습니다. 대부분 인물프로필 또는 지역정보 또는 뉴스가 상단에 노출되고 있습니다. 음... 일단 '광고'는 제합시다.) 그런데 현재까지의 검색결과 페이지는 매우 정적으로 작성, 배치되었습니다. 이미 만들어진 프로필이나 위치정보를 단순히 나열하고 시간 순으로 뉴스를 보여주는 것이 전부였지만, 2009년을 기점으로 인물과 함께 그와 관계된 사람의 정보를 함께 보여주는 소셜검색, 아카이브된 정보를 보여주는 것에서 진일보해서 실시간으로 업데이트되는 글들을 바로 찾아주는 실시간검색, 그리고 내가 위치한 곳에서 발생하는 사건 (보통은 지역 상점 등)을 묶어서 보여주는 지역검색 등이 메이저 검색엔진에 녹아들기 시작했습니다. 이제 더이상 컨텐츠에만 집중하는 인터넷은 사람들에게 가치를 제공해주지 못하고 있습니다. 이제 컨텍스트와 함께 제공되는 컨텐츠들만이 사람들에게 더 많은 가치를 제공해줍니다.

 물론 사람들이 컨텍스트의 중요성을 몰라서 여태껏 무시했던 것은 아닙니다. 이제서야 제대로된 컨텍스트 정보들이 가용해졌고 활용할 기술적 문화적 배경이 생겼다는 점도 무시할 수가 없습니다. 그리고 최근 본인의 가장 큰 고민도 이런 컨텍스트 정보를 어떻게 잘 검색에 녹여낼 것이며 또 다른 컨텍스트 정보들이 무엇인가?에 대한 고민이 깊습니다. 단순히 눈에 보이는 3D (사람/관계 - 시간 - 위치) 컨텍스트 이외에 제 4의 4D 컨텍스트가 무엇이며 또 어떻게 활용할 것인가?에 대한 고민입니다. 일단은 보이는 정보부터 활용하겠지만, 제 4의 컨텍스트를 발견하는 분은 새로운 사업의 기회를 만들어낼 것이고 또 그것을 적절히 검색에 녹여낸다면 검색=구글이라는 등식도 깨어버릴 것입니다. 그런 의미에서 구글도 비슷한 고민을 하고 있으리라 봅니다.

 오늘도 여전히 용두사미, 두서없는 글이 되어버렸네요.

댓글을 달아 주세요

  1. Favicon of http://twitter.com/noamsaid BlogIcon noamsaid 2010.01.01 23:07 신고 Address Modify/Delete Reply

    contextual search 정말 좋은 접근이라고 생각합니다. 그만큼 meta data의 충실성과 컨텐츠/데이터의 구조화도 중요하고 동시에 유저들에게 context에 따라 다르게 변화되는 정보의 배열과 그 benefit을 어떻게 알려주고 익숙하게 할 것인가에 대한 UX, 마케팅적 논의도 함께 수반되면 좋을것 같습니다. 저도 요즘은 도로 서비스 기획을 하면 좋겠다는 생각이 들때가 많네요. 대답없는 야호...에 지치는건 당연합니다. 좀더 의미있는 논의가 될 수 있도록 이야기하고 싶어하는 분들을 모아서 편하게 얘기했으면 좋겠다는 생각이 많이 듭니다. 잘할 수 있고 아쉬움도 많고 동시에 가능성도 많은 애증의 플랫폼과 웹에 대해서...

  2. yuhwadodream 2010.03.17 23:03 신고 Address Modify/Delete Reply

    두서없다고 하시지만 글을 읽는 내내 감동받았습니다.! 정리되어있지 않은듯한데 정리된글을 읽은느낌이랄까요? 아무튼... 이런 인연으로 팔로우까지 하고 잠자리에 듭니다..^^

    도전이 되는 멋진글...앞으로 애독자가 되어보겠습니다. :)

    Follow me : @yuhwadodream (안하셔도 상관없어요 ㅋ)