Lucene Analyseur Standard vs boule de neige
on commence avec Lucene.Net. J'ai indexé 100 000 lignes à l'aide d'un analyseur standard, j'ai lancé des requêtes de test, et j'ai remarqué que les requêtes plurielles ne renvoient pas de résultats si le terme original était singulier. Je comprends que l'analyseur de boule de neige ajoute un support de bourrage, ce qui semble bien. Cependant, je me demande s'il y a des inconvénients à gong avec boule de neige sur standard? Est-ce que je perds quelque chose en allant avec? Existe-il d'autres analyseurs de là à considérer?
3 réponses
Oui, en utilisant un analyseur morphologique comme la boule de neige, vous perdez l'information à propos de l'origine de la forme de votre texte. Parfois, cela sera utile, parfois pas.
par exemple, boule de neige va ramener "organisation" en "organe", donc une recherche pour "organisation" va donner des résultats avec "organe", sans pénalité de notation.
Si c'est approprié pour vous, dépend de votre contenu, et le type de requêtes que vous soutenez (par exemple, les recherches très basique, ou sont les utilisateurs très sophistiqués et en utilisant votre recherche pour filtrer avec précision les résultats). Vous pouvez également regarder dans moins agressive, conjugaison, exemple KStem.
boule de neige l'analyseur va augmenter votre rappel, parce qu'il est beaucoup plus agressif que l'analyseur standard. Si vous avez besoin d' évaluer vos résultats de recherche pour voir si pour vos données vous devez augmenter rappel ou la précision.
je viens de finir un analyseur qui effectue la lemmatisation. C'est similaire à découlant, sauf qu'il utilise le contexte pour déterminer un mot (nom, verbe, etc.) et utilise cette information pour trouver la tige. Il conserve également la forme originale du mot dans l'index. Peut-être ma bibliothèque peut vous être utile. Il nécessite Lucene Java, cependant, et je ne suis pas au courant d'aucun C#/.NET lemmatizers.