2012-03-07 7 views
1

기본 용어 빈도 (tf)는 검색되는 특정 용어가 필드에 나타나는 횟수의 sqrt로 간단히 계산된다는 것을 알고 있습니다. 그래서 검색어를 여러 번 포함하는 문서는 더 높은 tf를 가지므로 체중이 더 커집니다.Lucene에서 tf가 커지면 항상 문서 스코어가 향상됩니까?

내가 대해 확실 해요 것은이 증가이 문서가 득점하는 데 도움 여부 무게가 더 높은 또는 문서 점수를 줄일 수 있기 때문에 그 이동 거리 액션의 책 하이버 네이트 검색과 질의 벡터에서 문서 벡터 때문에 말하는 것 같습니다 (363 쪽). 나는 문서 벡터 모델이 lucene 스코어링 방정식에 어떻게 들어 맞는지 고민하고있다.

답변

1

나는이 책을 검사 할 필요가 없지만 기본적으로 색인 생성시 수동으로 설정할 수있는 다른 부스트는 무시한다. 시간), 일부 문서의 점수가 루씬의 기본 점수 모델 및 특정 쿼리에 대한 다른 문서의 점수보다) 더 높은 (또는 낮은 데는 세 가지 이유가 있습니다 :

  • 조회 된 용어는 낮은 문서를 가지고 빈도 (IDF 점수를 올리는),
  • 쿼리 된 용어는 문서에서 많은 수의 발생이 있습니다 (TF 부분),
  • 쿼리 된 용어는 문서의 다소 작은 필드에 나타납니다 (norm 점수를 높이는 부분).

이는

  • T가 나타나는 N D1 타임스 경우 두 문서 D1 및 D2와 하나, 기간 T 쿼리 것을 의미
  • T는 D2에서 p> N 번 나타나고
  • D2의 질의 된 필드는 D1과 동일한 크기 (항의 수)를가집니다.

D2는 D1보다 점수가 좋습니다.

+0

고마워요. 원래 어떻게 이해했는지 알지만 조금 더 필요합니다.이 점수는 벡터 공간 모델에 어떻게 맞습니까? –

+0

Lucene은 VSM을 엄격하게 사용하지 않고 VSM과 부울 모델을 조합하여 사용합니다. 그러나 분리형 쿼리의 경우 VSM이 적용됩니다. Wikipedia에는 ​​TF-IDF 점수가 VSM에 적용되는 방법을 설명하는 매우 멋진 기사가 있습니다. http://en.wikipedia.org/wiki/Vector_space_model#Example:_tf-idf_weights – jpountz

+0

죄송합니다. 몇 번이나 링크를 읽었지만 아직도 이것이 Lucene 방정식에 어떻게 들어 맞는 지 알지 못합니다. Lucene은 부울 모델을 사용하여 모든 용어와 일치하지 않는 문서를 제거하지만 쿼리 벡터와 비교할 때 쿼리 벡터와 비교할 때 볼 수 없다는 것을 알 수 있습니다. 쿼리와 일치하는 문서에서 일치하는 각 용어에 대해 tf * idf * norm을 수행하는 것처럼 보입니다. 최고 점수를받습니다. 또한이 버전을 구현하려고 할 때 분리형 쿼리에 대한 요점을 확대 할 수도 있습니다. –