2007년 8월 2일 목요일

IR Chapter2 Modeling - 2 전형적인 정보검색 모델

전형적인 정보 검색 모델에서 문헌은 색인어라고 불리는 키워드 집합으로 표현되며,
이 색인어는 의미적으로 해당 문헌의 주제를 기억하는데 도움을 주는 단어이다.

문헌 내용을 요약하기 위해 용어의 중요도를 결정하는 일은 그리 단순한 문제가 아니지만,
이 어려움에도 불구하고 용어의 중요도를 평가하는데 유용하거나 쉽게 측정할 수 있는 색인어의 특성이 존재한다. 예를 들어 수십만 개의 문헌 집합을 고려해 보자. 모든 문헌에 출현한 단어는 색인어로서 완전히 무용한데, 이는 어떤 문헌이 사용자가 관심있는 것인지에 대해 아무런 도움을 못 주기 때문이다. 반면, 단지 몇 개의 문헌에만 출현한 단어는 사용자가 관심있어 할 문헌 공간을 상당히 줄여주기 때문에 매우 유용하다.(이러한 개념에서 tf, itf가 도출될 수 있다.)

따라서 문헌 내용을 설명하는데 같이 사용된 단어들이라 하더라도 다양한 비중을 가지고 있으며, 문헌의 색인어 각각에 가중치를 부여하는 효과를 가져온다.

색인어 ki와 문헌 dj가 주어졌을때, Wi,j >= 0 를 (ki, dj)쌍의 가중치라고 하면,
이 가중치는 문헌의 의미적 내용을 설명하지 위한 색인어의 중요도를 정량화한다.

색인어 가중치는 상호 독립적이라고 가정하지만, 실제 문헌 내에서의 색인어 출현은 서로 무관하지 않기 때문에 이는 너무 단순화한 것이 된다. 예를 들면 컴퓨터 네트워크 분야의 한 문헌을 색인하기 위새 '컴퓨터'와 '네트워크'가 사용되었다고 할 때, 한 문헌에서 이 두 단어가 서로 독립적으로 나타나지 않으며 두 단어가 상호 연관되어 있고 색인어 가중치도 영향을 받는다.
그럼에도 불구하고 이런 색인어 가중치의 상호 독립적 가정은 모델을 매우 단순화하여 색인어 가중치 계산이나 빠른 순위 계산이 가능하게 한다. 더욱이 색인어 연관성을 고려한 연구가 좋은 결과를 낸 적이 없기 때문에 다른 언급이 없는 한 색인어는 상호 독립적이라고 가정한다.
최근엔 용어 연관성에 근거하여 특정 문헌 집합에서 좋은 결과를 낸 최신의 검색 기술이 있으며, 이런 추세가 점점 확대되어 가는 듯하다.
다음에서 볼 전형적인 정보 검색 모델에서 중요한 개념은 이 세가지다.
문헌, 색인어, 질의


!!! 꼭 기억하자. 문헌은 색인어 집합이며, 색인어는 질의와 문헌을 연결해주는 매개체이다.

다음으로 전형적인 정보 검색 모델 3가지에 대해 알아보자.

1. 불리안 모델

불리안 모델은 집합론과 불리안 대수에 기반한 단순 모델로서, 이때 질의는 명확한 의미를 가진 불리안 표현으로 정의된다.
간결함과 단순한 불리안 모델에는 몇개의 중대한 단점이 있다.
첫째, 검색 전략이 이진 값에 근거하여 순위 구분없이 연관/비연관 중의 하나로 결정된다는 점이며 이는 좋은 검색 성능을 방해한다. 따라서 불리안 모델은 실제로 정보 검색 모델ㅇ이라기 보다는 데이터 검색 모델에 더 가깝다.
둘째, 불리안 표현이 명확한 의미를 지니기는 하지만, 사용자 요구를 불리안 표현으로 변환하는 것은 그리 간단하지가 않다.
불리안 모델의 주요 장점은 모델의 명확한 형식과 단순성이며, 단점은 정확한 정합 때문에 검색 문헌이 너무 작거나 많다는 점이다. 오늘날, 색인어 가중치가 실질적인 검색 성능 향상을 가져온다고 알려져서 이 색인어 가중치를 고려한 벡터 모델이 선호되고 있다.

2.벡터모델
벡터 모델은 이진 가중치 사용이 너무 제한적이어서(불리안 모델은 질의가 '나무 여행'이었다면, 본문에 '나무'만 있거나 '여행'만 있는 부분 정합의 경우는 제외된다.), 부분 정합이 가능한 틀을 제공한 것으로 인식할 수 있으며, 이는 질의나 문헌의 색인어에 비이진 가중치를 할당함으로써 가능하다.
정의
벡터 모델에서 용어, 문헌 쌍(Ki, Dj)의 가중치 Wi,j는 양의 비이진 값이며, 질의 색인어도 가중치를 가진다. [Ki, q]의 가중치를 Wi,q >= 0이라 하면, 질의 벡터 q벡터는
q벡터 = (W1,q , W2,q , ... , Wt,q)로 정의되며, 여기서 t는 시스템 내의 전체 색인어 수이다.
문헌 Dj벡터는 Dj벡터 = (W1,j , W2,j, ... , Wt,j)로 표현된다.



따라서 색인어가 2개인 경우 다음처럼 2차원 벡터로
질의와 문서가 표현될 수 있다. 보다 일반적으로 t차원 백터로 표시된다고 생각하자.
벡터 모델에서 문헌 Dj와 질의 q의 유사도 측정은 두 벡터 Dj벡터와 q벡터의 상관도로 구할 수 있으며, 이 상관도의 예로 두 벡터간 사이각의 코사인 값으로 정량화할 수 있다.

벡터모델의 결과로는 코사인 값으로 0과 1 사이의 값을 매기게 된다. 즉, 벡터 모델은 문헌이 관련있나 없나만을 예측하기 보다는 질의와의 유사도 값에 따라 순위를 매기기 때문에 부분적으로 질의에 정합되는 문헌이라도 검색되며 또, 일정한 유사도 값 이상의 문헌만을 검색하기 위해 임계치를 둘 수 도 있다.
그렇다면, 색인어 가중치는 어떻게 구할까? 언어학자들이 미리 정의 했둔걸까. 아니면 임의로 직접 값을 적절히 설정하는 것일까? 물론 여러 방법이 있을 수 있다. 여기서는 가장 효과적인 용어 가중치 기법의 주요 아이디어에 대해 집중해 보자.
먼저 용어 문헌쌍(문헌 색인어)가중치를 살펴보자.
정보 검색 문제를 클러스터링 중의 하나로 보는 관점은 Salton의 초반 작업에 따르며 후반에 나오는 클러스터링 기법의 기본 원칙과 연관이 있는데, 문헌을 객체의 전체 집합 C로 보고 사용자 질의를 모호한 객체 집합 A로 간주한다. 그러면 정보 검색 문제는 어떤 문헌이 집합 A에 속하는지 아닌지를 결정하는 클러스터링 문제로 간주할 수 있다.
클러스터링 문제에서는 두 가지 주요 과제를 해결해야 한다.
첫째는 집합 A에 속하는 객체를 잘 표현할 수 있는 특성을 결정하는 일이며,
둘째는 전체 컬렉션 C에서 집합 A에 속하는 것과 아닌것을 잘 구분할 수 있는 특성을 찾는 일이다.
첫번째 특성 집합은 클러스터 내 유사도(intra-cluster similarity)를 양자화하는데 사용되는데, 문헌 Dj에 출현한 용어 Ki의 빈도수를 측정함으로써 수치화된다. 이런 용어 빈도수는(term frequency) 통상 tf요소라고 불리며 그 용어가 문헌의 내용을 얼마나 잘 표현하는가의 척도가 된다.
두번째 특성 집합은 클러스터간 비유사도(inter-cluster dissimilarity)를 구하는데 사용되는데, 전체 문헌 컬렉션 중에서 용어 Ki가 출현한 문헌 빈도수의 역수를 계산함으로써 구할 수 있는데, 이는 역문헌 빈도수(inverse document frequency)요소라고 불리며, idf 요소 사용의 동기는 많은 문헌에 출현한 용어가 연관 문헌과 비연관 문헌의 구분에 무용하다는데 있다.
다음으로 질의 용어 가중치(질의 색인어 가중치) 역시 tf/idf로 구해진다.
벡터 모델의 주요 장점은
1. 용어-가중치 할당 기법이 검색 성능을 향상시키고,
2. 부분 정합 전략으로 질의 조건에 근접한 문헌 검색이 가능하며,
3. 코사인 순위화 수식이 문헌을 질의에 유사한 순서대로 정렬한다는 점이다.
반면, 벡터 모델은 색인어의 상호 독립성 가정이라는 이론적인 단점을 가지고 있지만 앞서 얘기한 대로 이 가정이 성능에서 문제를 가져온다고 볼 수는 없다.
다른 많은 모델이 있지만, 일반적으로 벡터 모델이 더 우월하거나 비슷한 것으로 나타났으며, 더욱이 단순하고 빠르기 때문에, 벡터 모델은 현재 가장 대중적인 검색모델이다.

3. 확률 모델
여기서는 간략히 확률 모델의 중요 특성을 부각하기 위해 BIR(binary independence retrieval)이라는 전통 확률 모델을 소개한다.
만약, 사용자 질의가 주어졌을 때 확실히 연관된 문헌들의 집합이 존재하고 이를 이상적인 해답 집합이라 하며, 이 이상적인 해답 집합을 서술할 수만 있다면 그 문헌들을 검색하는데 문제가 없을 것이다. 따라서 질의 과정은 이상적인 해답 집합의 특성을 규정하는 작업으로 볼 수 있는데(정보 검색 문제를 클러스터링 문제로 해석하는 것과 유사), 문제는 이 특성이 정확히 무엇인지를 모르고 이 특성을 규정하는데 사용된 의미를 가진 색인어만 알고 있다는 점이다. 이 특성은 질의 시점에는 알 수 없으므로, 그것이 무엇인지 초기에 추정할 필요가 있으며, 이 초기 추정은 초기 문헌 집합을 검색하는데 사용될 예비 확률 표현을 생성하고, 사용자와의 상호작용을 통해 이상적인 해답 집합의 확률적 표현으로 개선된다. 즉, 반복적으로 해답 집합을 찾아가는 것이다.
이 과정은 다음과 같이 진행된다.
사용자는 검색된 문헌 중에서 어떤 것이 관련이 있고 없는 지를 제시하며(실제로 검색된 최상위 문헌들만이 대상이 된다.), 시스템은 이 정보를 이용해 이상적인 해답 집합 표현으로 수정된다. 이 작업을 반복적으로 수행하면, 그 표현은 점점 실제 이상적인 해답 집합 표현에 가까워질 것이라고 기대할 수 있다.(자꾸 머신러닝이 떠오르는 건 왜일까.)
시작 시에는 이상적인 해답 집합에 대한 추정이 필요하다는 점만 인식하고 있으면 되고, 의식적인 개선 노력이 확률 용어로 표현된다.
정의
확률 모델에서 색인어 가중치 변수는 모두 이진값으로 즉, Wij가 0이나 1인 가중치 값을 갖고 Di,q역시 0이나 1인 가중치 값을 갖으며, 질의 q는 색인어의 부분 집합이다. R(이상적인 해답 집합)을 초기 추정한 연관 문헌 집합이라고 하면, R^은 R의 여집합으로 비연관 문헌 집합이다.
P(R Dj벡터)는 문헌 Dj가 질의 q에 연관될 확률이고,
P(R^ Dj벡터)는 비연관 확률이다.
문헌 Dj와 질의 q의 유사도 sim(Dj, q)는 다음과 같이 정의 된다.
sim(Dj, q) = 문헌 Dj가 질의 q에 연관될 확률 / 비연관 확률
또한 P(Ki R)과 같은 R집합 내에서 색인어 Ki가 포함되어 있을 확률과 같은 것은 알 수 없으므로 단순한 가정을 한다. 예를 들면
P(Ki R) = 0.5
P(Ki R^) = ni/N(ni는 Ki가 출현한 문헌수)
확률 모델의 주요 장점은 이론상으로 문헌들이 연관 확률 값에 따라 내림차순으로 순위화 된다는 점이다.
단점은 문헌들을 연관/비연관으로 초기에 추정 분리할 필요가 있고, 문헌 내 색인어 빈도수가 고려되지 않는 방법이라는 사실과, 색인어에 대해 독립 가정을 적용했다는 점이다. 그러나 색인어 독립 가정은 실제 상황에서 성능에 어떤 영향을 미치는지 알 수 없으므로 문제가 있는지는 확실하지 않다.

4. 전통적 모델의 간략한 비교
일반적으로 부분 정합의 인식 불가로 인해 자주 낮은 성능을 보이는 불리안 모델이 세 전통 모델 중에서 가장 약한 것으로 여겨진다. 확률 모델이 벡터 모델보다 우월하다는 주장과 실험들이 있었지만, 이후 여러 측정을 통하여 일반 컬렉션의 경우 벡터 모델이 확률 모델보다 우월하다는 점이 일반적으로 받아들여지고 있다.

댓글 없음: