웹의 발전은 정보검색(IR)이라는 분야를 도서관학의 일개 전공분야에서 최신 기술과 막대한 인력, 자원이 투입되는 거대 산업으로 바꾸어 놓았습니다. 지금도 대부분의 사람에게 웹 검색은 일상사가 되었지만, 앞으로도 위키/블로그와 같은 데이터 생산 및 공유 기술의 개발, 그리고 그에 따른 데이터의 증가에 따라 웹 검색의 수요는 계속 늘어날 것입니다.

규모도 규모지만, 웹은 IR 연구자들에게 항상 새로운 과제를 제시합니다. 홈페이지 검색, 뉴스 검색, Q&A 검색, 블로그 검색 등은 웹이 없었다면 생기지도 않았을 IR의 세부 연구주제입니다. 새로운 형태의 웹 서비스는 고유의 검색 문제를 안고 태어난다고 해도 과언이 아닙니다. 문제만 준다면 조금 얄미울텐데, 다행히 대부분은 해결의 실마리도 따라옵니다. 웹 문서의 링크 구조를 활용하는 PageRank 알고리즘, 검색에 활용되기 시작한 태그 데이터 등이 그 사례입니다.

하지만 웹의 발전이 IR연구자에게 주는 가장 귀한 선물은 역시 검색 로그(query log)가 아닐까 합니다. 사용자가 서비스에 접속하여 어떤 질의어를 입력하는지, 그리고 어떤 문서를 클릭하는지를 그대로 기록한 검색 로그에는 연구자들이 궁금해하는 검색의 비밀이 고스란히 담겨있기 때문입니다. 더 좋은 것은 이런 데이터를 거의 무제한으로 비용 없이 얻을 수 있다는 점입니다.

문제는 검색 업체가 아닌 이상은 이 데이터에 접근할 수 없다는 점인데, 최근에 MSR에서 검색 로그 데이터를 선별된 연구자에게 제공하는 워크샵을 제안했습니다. MSN의 검색 로그 1500만건이 클릭 데이터와 같이 제공된다고 하니 흔치않은 기회인 것 같습니다.

그렇다면 검색 로그로 무엇을 할 수 있을까요? 가장 단순하게는 질의어 통계를 낼 수 있을 것입니다. 네이버나 다음에서 보여주는 ‘인기 검색어’등이 그 예입니다. 또한, 사용자 활동이 세션(접속→종료)별로 기록된다는 점을 감안하면 사용자가 먼저 입력한 질의어를 가지고 다음 질의어를 예측하는 모델을 만들 수 있을 것입니다. 질의어 맞춤법 교정(query correction)이나 관련 검색어 제안 등이 이러한 사례입니다. 이를 좀더 확장하면 사용자의 검색 실력을 감지하여 그에 따라 적절한 처리를 해줄 수도 있습니다.

올해 SIGIR에서 화제가 되었듯이, 질의어를 분류하고 군집화하여 적절한 처리를 하는 데에도 검색 로그는 필수적입니다. 트렉 등에서 제공하는 수십 수백건의 질의어를 갖고 의미있는 질의어 모델을 만드는 것은 상식적으로 불가능하겠죠. 또한 연구용 컬렉션(문서-질의어 모음)은 실제 검색 서비스에서 나온 데이터가 아니라는 한계도 있습니다.

각 검색에에 대해 클릭된 문서가 질의어에 관련하여 옳은(relevant) 문서라고 간주하면, 대용량 검색 로그를 가지고 검색 모델(retrieval model) 자체를 학습하는 것도 가능합니다. 실제 검색 로그는 검색 서비스를 개발하고 개선하는 데 기반이 되며, 검색 모델 학습(Learning to rank)이 웹 검색의 폭발적 확산과 함께 본격적으로 연구되기 시작한 것도 우연은 아닐 겁니다. 하지만 사용자가 목록에 있는 모든 문서를 검토하고 클릭을 하는 것은 아니며, 원래 검색 의도와 다른 클릭도 있을 수 있기 때문에, 이런 방식으로 검색 로그를 활용하기 위해서는 다양한 노이즈 제거 기법이 적용되어야 합니다.

이러한 검색 로그 분석에는 대용량 데이터가 사용되기 떄문에 MapReduce 등의 대용량 병렬 처리 환경이 필요합니다. 저는 최근에 연구실에 있는 검색 로그를 학교의 Hadoop Cluster에서 분석하고 있는데, Pig라는 환경이 MapReduce를 데이터베이스(RDBMS)처럼 편리하게 사용하도록 도와줍니다. 좀더 익숙해지면 이곳을 통해 소개하도록 하겠습니다.

정보 검색, 컴퓨터 비전, 기계 번역 등 알고리즘으로 인간을 흉내내려는 인공지능 분야에서는 결국 사람이 무엇이 옳은지에 대한 판단을 내려줘야 하는 경우가 많습니다. 예를 들어 특정 질의어에 주어진 문서가 적합한지, 번역된 문서의 뜻이 원문에 충실한지 등의 판단이 이에 속합니다.

이처럼 단순하지만 사람이 해야 하는 일을 게임화하여 자발적으로 하게끔 하게 만드는 것을 핵심 아이디어로 하는 연구의 동영상이 Human Computation이라는 이름으로 화제가 된 적이 있었습니다. 그 연구의 핵심인물인 Luis von Ahn은 그 해 미국 CS Professor Job Market의 Hottest Candidate이었다고 하죠.

그때 많은 사람들이 재미있다고 생각하고 넘겼을 이 아이디어를 아마존이 사업화했습니다. 이러한 단순 작업의 노동력을 사고 파는 시장이 생긴 것입니다. 예를 들어 검색엔진 개발자가 질의어 100개와 각 질의어에 해당하는 Top100문서를 올리면 이들의 relevance를 누군가가 온라인으로 판별해주고 돈을 받는 것입니다. 실제로 얼마전에 MS에 인수된 자언어 검색 앤진 업체인 PowerSet의 검색 결과 판별이 올라와 있군요. 물론 온라인 옥션에서처럼 일이 제대로 되었는지를 제안자가 확인하여 지불하는 시스템입니다.

단순히 검색 연구자에게만 관련된 일은 아닌 것 같습니다. 지금은 이렇게 단순한 형태의 서비스지만, 앞으로 더 복잡하고 창조적인 일에 대해서도 충분히 적용될 수 있기 때문입니다. 더 나아가서는 피터 드러커나 폴 그라함, 구본형씨 등이 누누히 외쳐온 대로 전통적인 고용 형태가 점차 일회적이고 프로젝트 단위로 결합하여 일하는 ‘1인 기업(free agent)’의 집합으로 변화하는 신호탄이라고 해석할 수도 있지 않을까요.

블로그에는 이곳에서 일을 수행한 사람들의 처리 속도를 분석한 자료가 올라와 있습니다. 단순 작업이라도 일정한 속도로 처리하는 사람과 들쭉날쭉한 속도를 보이는 사람이 뚜렷이 구분되며 일 간에도 난이도의 편차가 있기 때문에, 더 ‘효율적인’ 사람에게 더 어려운 일을 배정하는 알고리즘이 필요하다고 결론짓고 있군요. 효율도 효율이지만, 제가 일의 성과가 낱낱이 데이터화하고 이에 따라 다음에 할 일이 기계적으로 결정된다면 조금 우울할 것 같군요 ;)

자연어 처리(NLP)를 중심으로 관련 분야를 폭넓고 싶게 다루었던 ‘Foundation of Statistical Natual Lanugage Processing(일명 주사위책)’을 기억하시는 분이 많으실 겁니다. 그 필진에 야후 리서치 책임자이신 분이 가세하여 집필한 IR책이 나와서 오늘 받아서 몇 챕터를 읽어보았습니다. 이미 국내 블로그에 소개된 바 대로, 웹에 초판이 꾸준히 공개되면서 널리 알려진 책입니다.

사실 처음 시작하는 입장이 아니라, IR이라는 분야를 1년간 주로 논문 및 실제 연구를 통해 공부한 후에 ’교과서’로 다시 읽는 기분은 조금 남다른 데가 있습니다. 학부때처럼 ‘요걸 언제 다 읽어’가 아니라, ‘이걸 이렇게 쓰셨구나.. 그런데 이 부분은 좀 이상한데?’가 되기 때문입니다. 산 아래에서 올려다보는 아득함과, 조금 올라와서 한숨 돌리며 내려다보는 여유의 차이라고 할까요? 아직은 아득함이 압도적이지만 말입니다.

이 책의 존재를 접하고 처음 들었던 의문이 있었습니다.


‘왜 IR책을 NLP연구자가 쓰는거지?’

사실 1저자인 Christopher D. Manning의 출판물 목록을 보면 IR쪽 연구는 거의 하지 않는다는 것을 알 수 있습니다. 연구 관심사를 살펴 보아도 IR은 빠져있군요. NLP와 IR이 그만큼 깊은 관련을 맺고있다는 측면에서 이해할 수도 있고, 그만큼 IR이라는 분야가 널리 각광을 받고 있다고 생각할 수도 있지만, 관련 분야의 연구자가 교과서를 쓰겠다고 나설 수 있을 정도로 아직 IR이라는 분야의 역사나 저변이 충분치 못해서라는 생각이 듭니다. 사실 DB 교과서를 OS 연구자가 쓴다는 건 말이 안 되지 않습니까.

어쨌든 책을 받아들고 읽으면서 이런 우려를 상당 부분 떨쳐버릴 수 있었습니다. 정통 IR에 해당하는 인덱싱이나 검색 모델 부분, 웹 검색에 대부분의 지면이 할애되어 있고, 예전에 주사위책에 있던 Latent Semantic Indexing도 거의 새로 씌인 것 같습니다. 오히려 NLP의 색채를 지우기 위한 노력의 일환인지, 제가 관심을 가졌던 NLP와 IR의 연계 연구에 대해서는 내용이 빈약하다는 느낌을 받을 정도였습니다.

하지만, 역시 본격 IR 교과서로는 미흡하다고 할만한 부분도 눈에 띕니다. 우선 지난번 책에 이어 Clustering과 Classification을 지나치게 많이 (그것도 비슷한 내용으로) 다루면서 IR의 주요 분야인 Question Answering이나 Cross Language IR, Multimedia IR을 누락시킨 것은 이해하기 힘듭니다. 또한 정통 IR 연구의 핵심인 검색 성능 평가(evaluation)부분에서는 평가 결과의 유의성 테스트(significance test)가 전혀 다루어지지 않으며, 평가의 효율성을 높이기 위한 최근 연구성과가 많이 누락되어 있음을 확인했습니다. (사실 이 부분은 실제 IR 연구를 하지 않고서는 깊이있게 쓰기 힘든 점이 있습니다.)

검색 모델 측면에서도 거의 모든 부분에 걸쳐 Vector Space Model(VSM) 을 기준으로 설명이 이루어집니다. 단, 별도로 독립된 Language Model(LM)관련 챕터에서는 LM의 상대적 장점을 분명히 인정하고 있습니다. 작년 말 Draft에서는 좀더 LM쪽에 인색한 평가를 내렸던 점으로 미루어볼때, 그사이에 IR 연구자들의 의견을 반영한 듯 합니다. 어쨌든 이론적으로나 성능으로나 이미 학계의 대세가 된 LM 관련 내용이 부족한 것은 사실입니다. (LM과 관련된 대부분의 연구가 최근에 이루어졌다는 것은 인정합니다만)

이처럼 구성 측면의 아쉬움에도 불구하고 복잡한 개념을 명쾌한 예와 간결한 문장으로 풀해내는 저자들의 능력은 이 책에서도 유감없이 발휘되고 있습니다. 조만간 정통 IR에 더 가까운 책이 나오겠지만, 이 책은 앞으로도 많이 쓰일 것 같습니다. 단, IR로 밥멀이를 하시는 분이 아닌 분이라면 (특히 주사위 책을 갖고계시다면) 웹사이트에서 부분적으로 출력해 보시는 것도 좋지 않을까 하는 판단입니다.

P.S. 이 책의 별명(~책)은 뭐가 될까요? 파란 색이라 물결?, 아니면 표지의 태그?

IR 연구를 하다 보면 매일 데이터를 접하고, 이를 통계적으로 해석하여 결론을 내리게 됩니다. 검색이 다루는 대상(문서, 질의어 등)이 불확정적인 대상이며, 검색의 목표 역시 결국에는 통계적으로 최대 다수의 사용자를 만족시키는 결과를 제공하는 것을 목표로 하기 때문입니다.

하지만 저는 불행히도 통계를 정식으로 배운 적이 없기에 이런 상황에서 항상 마음 한구석에 불편함을 느꼈습니다. 하지만, 이론적 틀이 없다는 약점은 스스로 자유롭게 사고할 수 있다는 기회를 제공하나 봅니다. 배우고 연구하면서 생긴 의문을 해결하기 위해 고민하고, 주변의 자문을 구하는 동안 통계라는 것이 단순히 학문이라기보다는 세상을 바라보는 방식이라는 느낌이 들었습니다.

통계적으로 세상을 바라본다는 것은 어떤 뜻일까요? 대부분의 통계 기법은 불확정적인 현상을 주어진 모델(주로 확률 분포) 중 하나에 대입하는 데에서 출발합니다. 모든 현상이 몇 안되는 분포에 들어맞으리라는 보장은 없지만, 중심극한정리로 설명되는 자연의 규칙성으로 말미암아 실제로 대부분의 현상은 정규분포로 대표되는 통계학적 모델에 부합합니다. (모델 선정이 적절한지는 그 자체로 통계학의 주요 관심사로 이를 모델비평(model criticism)이라고 합니다.)

일단 현상이 모델화되면 그 다음부터는 다양한 방법으로 데이터에 대한 결론을 유도할 수 있습니다. 모델과 관찰값을 비교하여 관찰값이 모델에서 나왔을 확률을 구할수도 있고, 서로 다른 관찰값으로부터 생성된 두 모델을 비교하여 서로 유의미한 차이가 있는지를 알아볼 수도 있습니다. 물론 모델에 의존하지 않는 통계 기법도 존재합니다만, 이들은 좀더 폭넓은 응용법위를 갖는 반면에 데이터에 대한 가정이 적은 만큼 정확성에 있어 제약을 받습니다.

이제 관심을 IR로 돌려봅시다. IR에서 내려야 하는 중요한 문제는 ‘새로운 알고리즘의 성능이 기존 알고리즘에 비해 훌륭한가?’입니다. 이는 위에서 언급한 두 모델을 비교하는 문제의 일종인데, 우선 기존 알고리즘과 새 알고리즘의 쿼리별 성능을 두 벡터의 형태로 얻고, 이 두 벡터가 하나의 분포에서 나왔다는 가설을 세우는 겁니다. 이때 세우는 가설은 우리가 증명하고자 하는 사실(새로운 알고리즘이 기존 알고리즘과 다른 분포에서 나왔다는 것)의 반대를 가정하기에 귀무가설(null hypothesis)라고 합니다.

이 과정은 두 사건(기존 알고리즘과 새 알고리즘의 성능)의 차이가 통계적으로 유의미한가(statistically significant)를 가리는 과정이기에 유의성 테스트(significance test)라고 하며, IR시스템의 평가를 다룬 최근 논문에서는 알려진 방법 중에 t-test를 사용하는 것을 권장하고 있으며, 적어도 50개의 토픽(질의어)를 대상으로 유의성 테스트와 상대적인 평가 지표(MAP)에서 10% 이상의 향상이 있는 경우에만 의미있는 성능 향상이라는 결론을 내고 있습니다.

통계 분석을 위해서는 주로 R이라는 패키지를 사용하는데, 이는 S라는 상용 통계 패키지의 공개 구현(implementation)으로 벡터와 행렬을 기본 데이터형으로 사용하는 등 Matlab과 유사한 형태를 띠나 좀더 통계 분석에 특화된 것으로 보입니다. R 참고문서로는 다음 자료를 추천합니다. 약간 생소한 언어학(linguistics) 데이터를 사용하고는 있지만, 기본 문법부터 고급 데이터 분석까지 충실히 설명하고 있습니다.

Reference

IR분야의 최고 컨퍼런스인 SIGIR 2008이 얼마전에 싱가포르에서 열렸습니다. 그 권위만큼이나 대표적인 연구자들의 최신 성과들이 집대성되기에, 발표된 논문을 훑어보면 지금 IR 연구의 state-of-the-art, 그리고 앞으로의 방향까지 짐작케합니다.

그중 저의 눈길을 끌었던 것은 사용자의 질의를 분류하여 적절한 검색 방식을 선택하는 주제였습니다. 어떤 쿼리가 들어오든지 정해진 검색 모델을 사용하여 랭킹을 계산하던 모델은 사용자 및 검색 의도(query intent)가 제한적이었던 시절에는 유효했을 겁니다. 하지만 거의 모든 사람이, 온갖 목적으로 검색엔진을 이용하는 요즘에는 질의어에서 속성(feature)을 추출하여 분류(classification) 혹은 군집화(clustering)하고, 이에 따른 적절한 처리를 하는것이 중요한 이슈가 되고 있습니다.

이중 MSR에서 질의어를 분석하여 가장 적합한 검색엔진으로 검색한 결과를 보여주는 주제로 논문이 나왔습니다. 여기서는 더 나은 검색엔진을 만들어도 이미 구글에 락인(lock-in)된 사용자들을 유인하기 쉽지 않은 MS의 고민이 엿보입니다. 브라우저 플러그인 형태로 만들어져 가장 좋은 검색결과가 예측되는 검색엔진을 자동 선택해주기 때문에, 검색엔진간의 자유경쟁 시대를 예고하는 잠재력을 가진 연구라고 할까요. 물론 MS에서 개발된 플러그인은 웬만하면 Live Search를 추천하겠지만요;)

또한 질의어 분석을 통해 검색 개인화(personalization) 여부를 결정하는 논문도 흥미있었습니다. 개인화가 중요한 화두임에는 분명하지만, 이를 무차별적으로 적용했을 때는 오히려 검색결과의 품질이 전반적으로 떨어진다는 점이 문제인데, 여기서는 질의어와 상위 랭크된 문서를 분석하여 개인화가 성능을 높일 것으로 예측되는 질의에만 선택적으로 적용한다는 해결책을 내놓고 있습니다. 그리고 검색 의도가 분명치 않아 다양한 종류의 결과가 나오는 질의어일수록 개인화에 의해 성능을 높일 수 있다는 분석 결과를 밝히고 있습니다. 이와 유사한 연구로 질의어를 통해 지역화(localization)여부를 결정하는 논문도 있군요.

마지막으로 쿼리 분류를 랭킹 학습(Learning to Rank)에 접목시킨 연구도 눈여겨볼만 합니다. 기존 랭킹학습이 쿼리의 종류에 관계없이 단일한 랭킹 함수를 학습했다면, 여기서는 일단 기존의 질의어 집합을 K-Nearest Neighbor알고리즘으로 클러스터링하여 각 클러스터별로 랭킹을 학습한 뒤 새로 들어온 질의어에는 이와 유사한 질의어 클러스터의 랭킹 함수를 조합한 랭킹 함수를 적용한다는 아이디어입니다. 예를들어 어떤 질의에는 검색 결과의 최신성(recency)이, 다른 질의에는 권위(authority)가 중요할텐데요, 질의어를 보고 이를 예측하여 적절한 처리를 하겠다는 겁니다.

해마다 SIGIR에서는 발표 논문의 소주제(예 : 웹검색, 개인화, 랭킹 학습 등등)가 10가지 정도 결정되곤 하는데, 그 주제 자체가 매년 상당수 바뀝니다. 이렇게 역동적인 분야에서 연구를 한다는 것은 분명 도전이지만 그만큼 흥미진진합니다. 무럭무럭 자라는 아이를 지켜보는 느낌이랄까요. 내년에는 그 아이의 성장에 저도 한 숟가락(?) 기여해 보렵니다.

전문가의 시대는 끝났나

Essay : 2008. 10. 3. 11:59   By LiFiDeA

미국에 와서 자주 보는 와이어드(Wired)즈이 이번호 특집에 ‘이론의 끝 – 데이터 홍수가 과학적 방법을 쓸모없게 만든다’는 글이 눈길을 끌었습니다. 글의 요지는 페타바이트(1000테라바이트)급의 데이터를 손쉽게 다루고, 여기에서 패턴을 찾아내고 결론을 유도하는 기술이 발전하게 됨에 따라, 과학적 방법론의 요체인 가설 수립 및 실험을 통한 검증 과정에서 인간의 역할이 점차 축소되고 있다는 것입니다. 예컨데 특정 개체의 염기서열을 분석하는 차원을 넘어 생태계 전체를 모델링하고, 이 모델의 성립에는 필요하나 발견되지 않은 종이 있다면 그 종의 특성을 모델로부터 예측할 수 있다는 겁니다.

데이터마이닝/기계학습 기술이 일 이년된 것도 아니며, 이 기사에서 이야기하는대로 만능도 아닌데 벌써 과학의 종언을 운운하는 것은 과장(hype)으로 여겨집니다. 제가 아는 한 현재의 기술 수준은 매우 잘 정의된 문제(이진 분류, 군집화)에 대해 비교적 깨끗한(모델 특성에 맞는) 데이터를 넣어줄 경우 납득할만한(거의 인간 수준의) 성능을 보여주는 것으로 알고 있습니다. 그나마도 대부분 한번에 원하는 결과가 나오지 않아 경험자라 할지라도 상당한 시행착오를 거치게 됩니다.

따라서 현실의 복잡한 문제를 나누어 각각을 적절한 알고리즘에 넣고 처리하여 결과를 종합하는 전 과정에 ’전문가’의 노하우가 필요한 것입니다. 그리고 이런 노하우의 채득은 저수준의 패턴 인식 문제를 푸는 것보다 훨씬 고도의 지적 능력을 요구합니다. 따라서 과학적 연구 프로세스를 자동화하는 것은 AI 발달 단계에서도 가장 나중에 일어날 것으로 전망되고 있죠. (이 상태를 Singularity라고 부르는 것 같습니다만…)

하지만 고도화된 데이터 처리기술이 많은 부분에서 ’전문가’의 영역을 침범하는 것은 사실입니다. 며칠전 읽은 ‘Supercrunchers’ 라는 책에는 포도주 산지의 평년 기온 및 강수량 등이 그해 그 고장에서 생산된 와인의 평균 가격에 미치는 영향을 간단한 회귀분석(regression)을 사용하여 모델링하고, 이 모델이 결국에는 세계 최고의 와인 테이스터보다 더 정확게 포도주의 품질을 예측하게 되었다는 일화가 나옵니다. 저자는 데이터 처리기술(number-crunching)의 가능성에 대해 다음과 같이 자신있게 말합니다.

As long as you have large enough dataset, almost any decision can be crunched.

자신의 전문성이 경험을 통한 ’감’의 정확성에 의존하는 경우, 조만간 컴퓨터에 자리를 내주어야 할지도 모른다는 생각입니다. 이 책에는 그밖에도 매치매이킹, 항공기 티켓 가격 예측 등에 응용되는 데이터 처리기술의 다양한 사례가 소개됩니다. (번역본은 아직 없군요.)

이런 기술로 인해 발생할 실업 만큼이나 걱정되는 것이 기술의 차이가 가져올 기업과 국가 경쟁력의 차이입니다. 앞서 언급한 기사에서도 소개되지만, 미국에서는 구글과 IBM에서 대학과 손을 잡고 대용량 데이터 처리 기술을 연구하고 확산시키는 프로젝트를 시작했습니다. 이미 저만치 있으면서 더 달아나려는 그들의 뒷모습이 점점 희미하게 보이는 것은 저 혼자의 느낌만은 아닐 겁니다.

'Essay' 카테고리의 다른 글

최선을 다하지 않는 것이 최선이다?  (10) 2010.03.06
개인 프로젝트를 왜 해야 하나  (0) 2007.03.01
글쓰기의 가치  (0) 2006.12.31

예전에 잠깐 정보 검색 연구를 소개한 적이 있지만, 앞으로 정보검색론(Information Retrieval이하 IR)에 대해 써볼 생각입니다. 아직 풋내기 대학원생이지만, 지난 1년간의 공부를 정리하고 앞으로의 방향을 잡아보는 차원에서 시작합니다.

IR은 웹 검색이다?

제 연구분야를 간단히 소개할 때 검색엔진을 연구한다고 말하곤 합니다. 그러면 보통 ‘검색엔진? 그거 다 연구된거 아냐?’ 라는 반응을 봅니다. 사실 저도 구글 등 상업용 검색엔진을 쓰면서 불편함을 많이 느끼지 못했기에 비슷한 의문을 가졌습니다.

하지만 IR은 단순히 웹 문서의 검색을 연구하는 것이 아닙니다. IR은 좀더 넓은 의미에서 사용자의 정보 욕구(information needs)를 만족시키는 정보물(information object)를 찾아주는 것을 목표로 하기 때문입니다. 웹 문서 검색이 가장 잘 알려진 분야인 것은 사실이지만, 우리가 ‘아 그게 뭐지?’, 혹은 ‘아 그것이 어디 있을까?’라고 궁금해 하는 순간순간이 모두 IR연구자들이 해결하고자 하는 문제인 것입니다. 실제 세상의 모든 유무형의 사물은 정보의 형태로 표현될 수 있으며, 이들 정보물의 양에 비해 사람의 인지능력은 항상 턱없이 부족하기에 검색 연구는 앞으로도 계속될 것입니다.

흔히 우리가 보는 웹 검색, 질문과 답변을 찾는 지식 검색, 뉴스 검색, 이미지와 비디오 검색, 지도와 전화번호 검색 이외에도 어떤 분야의 전문가를 찾아주는 전문가 검색, 도서 검색, 음악 검색, 제품 검색 등 검색의 대상에는 제한이 없습니다. 또한 현재 연구중인 RFID 기술 등이 보편화되어 세상의 모든 물체에 센서가 달리게 되면 실제 사물역시 검색의 대상이 될 수 있겠습니다.

검색의 방식 측면에서도 한국어로 검색어를 입력했을 떄 적절한 영어 문서를 찾아주는 교차어 검색(cross-language IR)이나 키워드가 아닌 질문 형태의 검색어를 받아 적절한 답(문서가 아닌)을 구해주는 질의 응답(question answering – 컴퓨터가 답변해주는 지식인이라고 생각하시면 됩니다.), 여러 곳에 나누어진 정보를 모아서 검색해주는 분산 검색(distributed IR) 역시 검색의 세부 분야로 연구되고 있습니다.

무엇을 어떻게 연구하나?

검색을 연구한다면 정확히 뭘 하는지 궁금하실 겁니다. 우선 사용자의 정보욕구는 검색어(query) 형태로 표현되기 때문에, 질의어를 분석하는 것이 필요합니다. 질의어에서 어구(phrase)나 사람 이름 등의 고유명사를 추출하기도 하고, 질의어에서 단어를 빼거나 추가하면 검색 결과가 좋아지는 경우가 많은데 관련된 기술을 질의어 확장(query expansion)이라고 합니다.

질의어가 분석되었다면 정보물(여기서는 문서를 가정)을 분석해야 할 것입니다. 문서는 미리 색인화(indexing)를 거쳐 속성 집합(feature set) 형태로 표현되는데, 이 속성에는 문서에 포함된 단어나 어구, 문서의 인기도나 최선성 등의 관련 정보가 모두 포함됩니다. 어떤 속성(feature)를 검색에 사용하느냐가 검색 성능을 좌우하기 때문에 검색회사나 연구자들은 검색에 도움이 되는 속성을 개발하느라 열심입니다. 상업용 검색엔진에는 수천개의 속성이 사용되고 있으며, 지금도 계속 추가된다고 하는군요!

질의어와 문서가 분석되고 나면 이를 비교해서 관련성(relevance)이 높은 문서 순으로 정렬해야 할 것입니다. 이를 위해 각 문서에 점수를 매기는데, 이때 사용되는 수식이 검색 모델입니다. 검색모델은 기본적으로 검색어와 문서의 유사성(textual similarity) 및 문서의 품질 등을 종합적으로 고려하여 순위를 매기는데, 검색어와 문서를 벡터로 놓고 비교하는 방법, 문서를 확률 변수로 보는 방법 등이 있지만 어느 모델이 더 우월한지는 결론이 나지 않은 상황입니다. 최근에는 각 속성간의 중요도를 자동으로 결정하는 기계학습 기반의 방법이 개발되어 널리 사용되고 있습니다.

검색 결과가 나온 다음에는 이를 평가해야 할 것입니다. 제가 검색 연구를 시작하기 전에 가장 궁금했던 부분인데, 결국에는 사람이 판단해준 결과를 바탕으로 검색 품질을 점수화하는 것이었습니다. 예컨데, 상위 10개 문서중 7개가 관련성이 있다면 0.7점을 주는 식이죠. 언뜻 간단하게 보이지만, 이 과정에는 비용도 많이 들어가고 고려해야 할 점이 많기에 검색 결과의 평가는 검색 연구의 중요한 축을 형성하고 있습니다.

아직 궁금하다면…

검색을 다루는 글이니만큼 참고자료도 ‘정보검색’ 이라는 키워드를 사용한 검색결과로 제공하겠습니다;) 목록을 보시면 위키피디아 페이지, 책 등의 자료가 첫페이지에 있는 것을 보실 수 있습니다. 저희학교 정보검색 수업 홈페이지도 있군요.

오늘 국내 포탈에서 검색과 관련된 일을 하시는 분을 뵈었습니다. 검색을 학문으로 공부하는 입장에서 현업 종사자의 생생한 경험을 들을 수 있는 기회였습니다. 보안상 구체적인 사항을 언급할 수는 없지만, 아직 우리나라 웹 서비스 회사의 기술적인 수준은 세계 수준과 상당한 격차가 있다는 생각이 들었습니다.

우선 검색 모델 개발 및 개선 절차가 체계화되어야 된다는 생각이 들었습니다. 흔히들 구글 검색이 검색어 매칭과 PageRank만을 기반으로 하는 것처럼 생각하시지만, 실제로는 수천개의 Feature가 정교하게 결합된 결과압니다. 이렇게 Feature의 개수가 많아질수록, 각 Feature의 결합은 각각이 검색 결과의 품질에 미치는 영향에 대한 엄밀한 분석을 바탕으로 해야 할 것입니다.

최근 학계에서 각광받고 있는 Learning to Rank 와 같은 기법을 사용하면 사용자의 클릭 등을 바탕으로 최적의 랭킹을 위한 주어진 Feature의 결합 가중치를 자동으로 학습할 수 있습니다. 지속적으로 검색 품질을 모니터링하고, 위와 같은 기법을 활용하여 주어진 Feature에서 최선의 결과를 끌어낼 수 있도록 해야 할 것입니다.

물론 위와 같은 기법의 활용을 위해서는 구글의 MapReduce, 야후!의 Hadoop과 같은 컴퓨팅 클러스터가 구축되어야 할 것입니다. 구글에서 나온 최근 논문 을 보면 구글이 활용하는 자동화된 알고리즘은 대부분 MapReduce연산의 반복으로 구현된다는 것을 알 수 있습니다. 구글이나 야후가 전세계를 상대로 인터넷 서비스를 제공할 수 있는 데에는 이와 같은 기본기가 바탕이 되는 것입니다.

아직 국내 인터넷 서비스는 토종 포털이 압도하고 있지만, 자동화된 알고리즘과 이를 뒷받침하는 컴퓨팅 파워를 갖춘 구글 등의 공세가 만만치 않을 것입니다. 국내 업체는 현지화를 강점으로 내세우고 있지만, 구글 등은 현지화를 넘어 모든 서비스의 개인화 에 도전하고 있습니다. 그것도 사람이 전혀 관여할 필요가 없는 방식으로 말입니다. 한국인 모두를 대상으로 최적화된 랭킹과 자신만을 위한 랭킹 중 어떤 것을 선택하시겠습니까.

이에 더 나아가 외국 업체들은 국경 없는 서비스 제공을 위한 기반 기술 개발에도 열심입니다. 구글이 막대한 투자를 아끼지 않고 있는 기계번역 기술이 어느 수준에 다다르는 순간, 각국 인터넷 업체와 구글간의 힘의 균형이 무너질 것이라는 예측은 지나친가요?

고3과 대학원

유학생활 : 2008. 2. 3. 12:53   By LiFiDeA

대학원에 진학하며 생각한 것 중 하나가 ‘고3때 처럼만’ 이었다. 부끄럽게도 스스로 가장 치열하게 살았다고 기억되는 때가 고3이였던 까닭이다. 아침 자율학습을 시작으로 야간 자율학습까지 마치고 그것도 모자라 도서관까지 갖다 집에 오던 날도, 공부가 잘 되던 날은 그렇게 행복할 수가 없었다. 원하는 것을 분명히 알았고, 그것을 향해 한걸음씩 다가가고 있다고 확신했기 때문일까.

어른이 되어 원하는 전공(전자)을 선택했지만 생각만큼 몰입할 수 없었고, 전공 공부보다 인생 공부에 관심이 많았던 학부 생활을 거쳤다. 그 후 정말 이거다 싶은 분야를 찾아 시작한 대학원 생활을 고3의 각오로 시작하는 것은 자연스러운 것이었다.

대학원과 고3은 비슷한 점도 많다. 깨어있는 시간의 대부분을 쏟아 넣어야 하고, 끊임없이 한계를 시험함으로써 스스로를 키워야 한다. 성과에 대한 엄밀하고 끊임없는 피드백(모의고사, 논문)이 주어진다는 점도 같다.

하지만 몇달이 지난 지금, 고3처럼 대학원 생활을 해서는 절대 성공할 수 없다는 생각이 든다. 심지어 고3 생활을 겪어내며 생긴 사고방식과 습관이 대학원 공부를 하는 데 장애가 된다고까지 느껴진다. 고3과 대학원은 전혀 다른 게임이라는 생각이 강하게 들기 때문이다.

고3은 대학에 가기 위해 공부를 한다. 좀더 구체적으로 잘 정리된 교과서와 참고서를 반복 숙달하며, (과외) 선생님이 떠 먹여주기도 한다. 공부에 대한 주된 동기는 주로 부모님과 선생님에게서 나온다. 이 게임에서 성공하는 학생은 현재보다는 미래를 바라보고 주변의 기대에 부응하기 위해서 스스로를 통제하고 주어진 일을 묵묵히 해나가는 방법을 배운다. 교과서를 감히 의심하거나, 그 이상을 알려는 것은 비효율적인 일이다. 시험 점수를 받을 수만 있다면 무턱대고 외워도 되기 때문이다. 출제 경향을 짚어 전과목에 적절한 시간을 배분하고, 빠른 시간에 정확하게 답을 골라내는 것이 핵심 기술이다.

대학원은 이와 다르다. 여기서는 자신의 선택으로, 스스로 정의하고 발견해 나가는 공부를 한다. 또한 이해의 깊이가 핵심이기 때문에 ‘전과목에서 고른 성적’을 받는 것은 별 의미가 없다. 끊임없이 묻고, 가설을 세우고, 이를 검증하여 이론을 만들고, 나아가 다른 사람에게 이해시키는 것이 능력이다.

지나친 이상론이라고 생각할지도 모른다. 실제로 많은 대학원생들이 자신보다는 지도교수에 의해 주어지는 일을 하지 않냐고, 대부분의 경우 그저 때맞춰 졸업하여 그럴듯한 곳에 자리잡는 것이 목표 아니냐고 말이다. 어쩌면 그럴지도 모르겠다. 나도 여기 오기 전에는 비슷한 생각을 했으니 말이다. 물론 원하는 공부를 한다는 핵심 동기가 있었지만, 주변에서 ‘눈 딱감고 5년만 버티면 된다’는 말을 들어도 별 거부감이 없었다. 고3때처럼 ‘밝은 미래’를 떠올리며 현재의 고통을 감내하면 될 줄 알았다.

여기 와서도 처음에는 그렇게 스스로를 채찍질했던 것 같다. 아침에 일어나서 어려운 수학책을 진도에 맞춰 읽기도 했고, 일년 내에 첫 논문을 쓰겠다고 랩에서 연구 주제를 붙잡고 늦게까지 있어보기도 했다. 하지만 이는 오래 가지 못했다. 고통도 고통이었지만, 무엇보다도 그렇게 해서 될 일이 아니라는 생각이 들었다. 목적했던 공부도 제대로 되지 않았고, 연구 자체도 뭔가 꽉 막힌 느낌이었다.

몇달이라면 가능했을지도 모른다. 익숙한 환경에서 부모님의 보호를 받는 상황이라면 좀더 쉬웠을 것이다. 하지만, 타국에서 혼자 수년을 그렇게 보낼 수는 없는 일이었다. 그것도 인생의 황금기에 말이다. 설사 가능하더라도 내가 원하는 삶의 모습과는 거리가 멀었다.

그제서야 깨달았다. 대학원 생활은 고3처럼 해서 되는 것이 아니라는 것을. 스스로가 중심이 되지 못하고 공부를 수단으로 전락시켜서는 새로운 발견을 가능케하는 깊이에 도달할 수 없다는 것을, 창조에 필요한 에너지는 대상에 대한 순수한 호기심에서 나온다는 것, 무엇보다도 그렇게 하지 않고서는 지속할 수 없다는 것을 말이다. 정해진 목표에 스스로를 얽매기보다는, 자신의 분야에 푹 빠져 스폰지처럼 지식을 흡수하고 미지의 영역을 개척하는 자유를 만끽해야 하는 것이다.

그렇게 마음을 고쳐먹고 공부할 내용을 해치워야 하는 정복의 대상으로 바라보기보다는 마음 깊은 곳에서 받아들이려고 노력했다. 시험만 끝나면 다 잊어버려도 되는 것이 아니라, 평생을 벗삼고 키워가야 할 지식이니 말이다. 그제서야 외계어처럼 보이던 책들이 친근하게 다가왔다. 논문을 써야 한다는 강박관념을 버리고서야 주제에 대한 새로운 시각이 보이기 시작했다.

물론 이는 말처럼 간단한 일이 아니다. 어리고 예민했던 시절에 각인된 습관을 버리는 일이니 말이다. 심지어 고3 생활을 지나치게(?) 열심히 했던 자신이 원망스럽기까지 했다. 하지만 아직도 20대, 스스로 선택한 길이 나를 올바른 방향으로 이끌고 있으니 다행이라고 해야 할까.

소년들은 야망을 가져야 된다고 하지만, 대학원생은 야망을 버려야 할 것 같다. ’야망’이 상징하는 세속적 가치가 눈이 들어오는 순간 연구자로서의 눈은 멀게 되니 말이다. 다만 물살을 거슬러 올라가는 듯한 지금의 숨가쁨이 훗날 대양을 주유(周遊)하는 돌고래의 해방감으로 바뀌기를 바랄 뿐이다.

'유학생활' 카테고리의 다른 글

화가는 캔버스를 두려워하지 않는다  (1) 2009.03.03
모범생이 싫다  (1) 2008.01.03
좋아하는 일 지켜가기  (1) 2007.11.03

모범생이 싫다

유학생활 : 2008. 1. 3. 12:47   By LiFiDeA
어떤 사람을 묘사할 때 종종 붙은 수식어로 ’모범생’이 있다. 이 말은 1)공부를 잘 하고 2)주변의 기대에 부응하는 삶을 살아가는 사람에게 주로 긍정적인 늬앙스로 사용된다.(한국에서는 1)과 2)가 거의 동의어다.) 불행인지 다행인지 나는 이 말을 상당히 많이 들어온 데다, 주변을 둘러봐도 ’모범생’이 가득하다.

이 말에 대해 원인모를 거부감을 가져왔던 내게 최근에 그 실체를 파악하게 해준 책이 있으니 바로 시오노 나나미(이하 시오노상 — 그녀가 사람들에게서 원하는 호칭이란다.)의 ‘남자들에게’ 였다. 관습보다는 독창성을, 지능보다 판단력을, 눈에 보이는 핸섬함보다 보일듯 말듯한 스타일을 추구한다는 시오노상이 자신이 생각하는 바람직한 남자의 모습에 대해 쓴 에세이다. 20대에 단신으로 유럽에 건너가 동서양을 넘나드는 온갖 체험을 하며 혼자 서양 고대사를 탐구하여 거의 대가급 작가가 된 여인의 남자론이니 한줄 한줄의 무게가 남다르다.

시오노상은 ‘매력있는 남자’를 다음과 같이 명쾌하게 정리한다.

매력 있는 남자란 자기 냄새를 피우는 자다. 스스로 생각하고, 스스로 판단하고, 무슨 무슨 주의주장에 파묻히지 않고 유연한 사람. 그러니 더욱 예리하고 통찰력 있는, 바로 그런 자다.


이 부분을 읽으며 온몸을 휘감는 전율을 느낀 것은, 내가 생각하는 삶의 지향점의 정수가 담겨있기 때문이 아니었을까. 그렇다. 나는 스스로의 목소리를 갖고, 이를 통해 세상을 바꾸고 싶었다. 지금까지 그렇게 해 왔으니까, 남들이 다 그렇게 하니까 그냥 그렇게 따라가는 것이 싫었다.

’모범생’이라는 말이 싫었던 것은, ’모범’이라는 말에 자신의 목소리 보다는 관습적으로 바람직하다고 여겨지는 기준에 충실하다는 뜻이 담겨있기 때문일 것이다. 그리고, 잠재적으로는 세상에 자신을 끌어다 맞춤으로써 얻어지는 안전한 보상에 가치 기준을 두고 있다는 뜻이기도 할 것이다.

하지만, 모범생을 거부하는 것는 간단한 일이 아니다. 내면의 목소리에 끊임없이 귀를 기울이며, 동시에 이를 객관적 진리, 그리고 세상의 기준에 맞춰가려는 노력을 하지 않으면 자신만의 ‘의미있는 목소리’를 갖기는 어려운 일이다. 또한 순응이 던져주는 달콤한 미끼를 덥석 베어물지 않아야 한다. 늘 ‘깨어있어야’ 하는 것이다.

그런 면에서 내게 주어진 환경이 감사하기도 하다. ’세상’보다는 ’자신’에게 충실하게 해주기 때문이다. 시오노상은 이런 말도 했다.

자유를 제한받은 곳에서 참된 자유가 발휘된다. 정신활동의 완전 연소는 어느 정도의 구속 없이는 성취하기 어려운 것 같다.

이곳 생활에 익숙해지며 가끔 답답함이 느껴지기도 하는 요즈음, 이 말을 떠올리며 마음을 다잡아 본다.

'유학생활' 카테고리의 다른 글

고3과 대학원  (2) 2008.02.03
좋아하는 일 지켜가기  (1) 2007.11.03
유학생 살아남기  (0) 2007.11.03