Détection de la langue d’un texte (2)
Il y a quelques temps j’ai présenté ma solution de détection de la langue d’un texte. Cette solution en Java est basée sur NGramJ.
C’est au tour de Cedric Champeau de présenter sa propre solution : JLangDetect. JLangDetect est également basé sur un calcul statistique des fréquences d’apparition de n-grams dans le texte puis une comparaison de ce résultat aux résultats obtenus sur des référentiels de documents dans différentes langues. Tout comme pour ma solution, les résultats ne sont pas fiables à 100% surtout avec des textes courts (quelques mots).
Une autre solution (toujours en Java) est proposée par Kevin Burton dans son article du 19 août 2005 : NGram Language Categorization Source. Toujours basé sur les n-grams, le projet nommé NGramCat est disponible sur Sourceforge (pour un acces direct au code source, c’est ici). Cette solution qui fonctionne avec tous les jeux de caractères et tous les encodages est basée sur un article de référence sur le sujet (1994) : N-gram-based text categorization. Encore basés sur cet article, voici 2 autres implémentations : Language categorization library for Java (lc4j) et TextCat (Perl).
Et la boucle est bouclée car NGramj que j’utilise est basée sur TextCat PERL.
Tags: detection langue, java, ngram, perl