이번 달에 첫 논문 A Probabilistic Retrieval Model for Semistructured Data 을 발표하러 프랑스 툴루즈에서 열리는 ECIR (유럽 정보검색 학회)에 다녀왔습니다. ‘첫’ 기억은 항상 소중하지만, 연구자에게 첫 논문이 주는 감회는 남다른 것 같습니다.

이번 작업은 굉장히 단순한 관찰에서 시작되었습니다. ‘감독’, ‘배우’, ‘제목’ 등의 정보가 항목(element or field)별로 기록된 문서(XML or Database record)를 생각해봅시다. 저의 착안점은 이런 종류의 구조화된 데이터베이스를 검색하는 사용자의 질의어는 문서의 각 항목에 매핑(mapping)될 수 있다는 것입니다. 예를 들어 ‘meg ryan romance’라는 질의어에 대해서 문서를 평가할 때 ’meg’과 ’ryan’은 배우의 이름이고, ’romance’는 장르일 것이라는 것을 어렵지않게 알 수 있습니다.

더 중요한 것은 이러한 매핑을 간단한 (그리고 효율적인) 분류(bayesian classification) 알고리즘을 통해 찾을 수 있으며, 이 관계를 바로 검색 결과를 향상시킬 수 있다는 사실입니다. 앞의 예제를 계속 살펴보면 질의어 ’meg’과 ’ryan’에 대해서는 ‘배우’ 항목에 더 큰 가중치를 부여하고, ’romance’에 대해서는는 ’장르’에 더 큰 가중치를 부여하는 것입니다. 또한 이렇게 계산된 가중치는 기존 language modeling 검색 모델에 자연스럽게 통합됩니다.

이렇게 각 질의어에 대해 적절한 문서의 항목을 찾고 이를 검색 모델의 항목별 가중치로 활용하는 기법은 문서를 통째로(bag-of-words) 처리하거나 각 항목에 대해 고정된 가중치를 부어햐는 기법에 비해 훨씬 나은 성능(20~30% 향상)을 보입니다. 예컨대 영화 문서를 찾는 데에는 “’제목’이 ’줄거리’보다 2배 더 중요하다”고 일괄적으로 단정짓기보다는 각 질의어(query-term)에 대해 적절한 항목을 찾아주는 것이 효과적이라는 거죠.

논문에서는 영화(IMDB)와 이력서(Monster.com) 데이터베이스를 사용한 실험을 소개했지만, 대부분의 웹 서비스가 이렇게 구조화된 형태로 데이터를 보관하며 웹 문서를 구조화하려는 XML, Semantic Web등의 움직임을 미루어볼때 이러한 알고리즘의 쓰임새는 점점 넓어질 것입니다.

이번 연구를 통해 느낀 것은 꼭 복잡한 기법이 더 가치있는 것은 아니며, 나은 성능을 가져다주는 것도 아니라는 점입니다. 오히려 직관적이며 어쩌면 너무나 당연해 보이는 모델이 놀랄만큼 좋은 결과를 나타낼 수 있다는 생각을 했습니다. 인간의 편단 과정을 흉내내려는 검색 연구에 있어서 어쩌면 너무나 당연한 일일까요?

P.S. 더 자세한 정보는 영문 포스팅발표 슬라이드 를 참조하시면 됩니다.