Domanda

Stiamo usando Solr ad articoli di varie lunghezze di ricerca. Abbiamo indice sia metadati descrittivi (titolo, autore, categoria, parole chiave, ecc) e il testo completo dell'articolo. Noi non rafforzare la loro pertinenza al momento dell'indice -. Tutte le spinte sono fatte in fase di query (usiamo dismax, accoppiato con vari qf, pf, e aumenta bf)

Al momento il nostro campo full-text utilizza i omitNorms standard = false; e, di conseguenza, tutti parità di altre condizioni, articoli brevi (articoli 2-3 colonna pollici) frequentemente hanno una maggiore rilevanza rispetto più lungometraggi (più pagine) articoli.

Nel nostro articolo caso la lunghezza è un indicatore significativo di rilevanza, e così sto considerando omitNorms impostazione = true sul nostro campo full-text.

Domande: 1. Perché la Lucene default / comportamento solr dare impulso lunghezze di campo più brevi nel corso superiore? Qual è il ragionamento? 2. Perché dovrei non voglio omitNorms? Non ho bisogno di query spinta su questo particolare settore, né utilizzare qualsiasi tipo di sfaccettatura su questo campo.

È stato utile?

Soluzione

Domanda 1:

Aumentare lunghezze di campo più brevi su lunghezze di campo più elevate ha a che fare con un concetto fondamentale per determinare la pertinenza documento denominato TF-IDF (vedi http://en.wikipedia.org/wiki/Tf%E2%80%93idf ). Come un breve esempio, si consideri la ricerca ha restituito due documenti: il primo è di 100 parole e il secondo è di 1.000 parole. Ciascuno contiene la vostra parola chiave di ricerca solo una volta. Dal momento che la parola chiave nel primo documento era 1% del testo, il breve documento è giudicato per essere più rilevante per la ricerca rispetto al documento lungo, in cui la parola chiave che hai cercato è stato solo lo 0,1% del testo.

Domanda 2:

Sembra che in base alle vostre esigenze, si potrebbe desiderare di provare a omettere norme. Tuttavia, questo può falsare i risultati della ricerca in modi che non ti aspetti. Potrebbe essere che vi sono stati benefici della alcune delle belle proprietà di lunghezza normalizzazione e non se ne rendeva conto. Un altro approccio potrebbe essere quello di realtà negozio lunghezza del documento come una sorta di campo tag come ad esempio documenti di etichettatura come "corto", "medio" e "lungo" e quindi aumentare i documenti che partita in lungo o lungo e medio o qualsiasi altra cosa. Ciò consentirebbe anche di offrire agli utenti finali la possibilità di filtro lunghezza del documento quando cercano.

Ancora una volta, quando ho citato belle proprietà di lunghezza normalizzazione, si potrebbe pensare di casi in cui un super lungo articolo esiste che tocca 10 argomenti diversi, di cui 1 corrisponde ricerca dell'utente o di un lungo articolo esiste che parla di solo 1 argomento , quello che è stato cercato. In questo caso, si sarebbe probabilmente preferisce il lungo articolo nel lungo articolo eccellente (anche se il super lungo articolo abbinato la ricerca per parole chiave più volte). Tutto dipende più sui tuoi dati e le tue casi d'uso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top