Pregunta

En Lucene, si tenía varios índices que cubrían solo una partición cada uno.¿Por qué la misma búsqueda en diferentes índices arroja resultados con puntuaciones diferentes?Los resultados de diferentes servidores coinciden exactamente.

es decir.si busqué:

  • Nombre - John Smith
  • Fecha de nacimiento: 11/11/1934

Partición 0 devolvería una puntuación de 0,345

Partición 1 devolvería una puntuación de 0,337

Ambos coinciden exactamente en nombre y fecha de nacimiento.

No hay solución correcta

Otros consejos

El puntuación contiene la frecuencia inversa del documento (IDF).Si el término "John Smith" está en una partición, 0, 100 veces y en la partición 1, una vez.La puntuación para la búsqueda de John Smith sería mayor para la búsqueda en la partición 1, ya que el término es más escaso.

Para solucionar esto, tendría que tener su índice sobre todas las particiones, o necesitaría anular el IDF.

Porque la puntuación se determina en función del índice, si no me equivoco del todo.

Si tiene índices diferentes (más/menos o diferentes datos que fueron indexados), la puntuación será diferente:

http://lucene.apache.org/core/3_6_0/scoring.html

(Advertencia:Contiene matemáticas :-))

También te puede interesar el resultado del explain() método, y el resultado Explanation objeto, que le dará una idea de cómo se puntúan las cosas tal como están.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top