tige ('pommes') = 'pomme'
tige ('pomme') = 'appl'
tige ('appl') = 'appl'
Pourquoi Porter Stemmer cède-t-il une corde qui peut être à nouveau bloquée?
est pas une faille dans l'algorithme de stemming?
(ce utilise le Porter Stemming Algorithm)
tige ('pommes') = 'pomme'
tige ('pomme') = 'appl'
tige ('appl') = 'appl'
Pourquoi Porter Stemmer cède-t-il une corde qui peut être à nouveau bloquée?
est pas une faille dans l'algorithme de stemming?
(ce utilise le Porter Stemming Algorithm)
Cela ressemble plus à un bogue dans la mise en œuvre de l'algorithme que vous utilisez. Lorsque je suis les étapes the original algorithm (à partir de la page à laquelle vous avez lié), le "s" final de "pommes" est supprimé à l'étape 1a, et le "e" à l'étape 5a, donc la racine de "pommes" "est aussi" appl ".
J'ai trouvé une implémentation de l'algorithme de stemming porteur avec un support de dictionnaire ici http://preciselyconcise.com/apis_and_installations/smart_stemmer.php.
Cette API était vraiment simple à utiliser et les mots terminés ont été corrigés pour des fautes d'orthographe. Je vous suggère d'utiliser ce stemmer puisque cette API a une option auto correcte des mots stemmed.