Compte tenu de ces données (fréquence de la lettre relative des deux langues): puis informatique la fréquence de la lettre de la chaîne "Ceci est un test" me donne: P> "this is a test" gives (shortest distance:) [:english, 13] ...
"esto es una prueba" gives (shortest distance:) [:spanish, 13] ...
3 Réponses :
Les exemples que vous avez donnés consistaient en une phrase courte chacune. Les statistiques dictent que si votre contribution était plus longue (paragraphe un paragraphe, les fréquences uniques devraient être plus faciles à identifier. P>
Si vous ne pouvez pas compter sur l'utilisateur donnant une entrée plus longue, cherchez peut-être des mots communs (par exemple, comme et, mais ...) dans la langue également, si les fréquences de la lettre correspondent à la correspondance? P >
Droite, je pensais à mettre en œuvre la fréquence de la première lettre et à la fréquence DigRaph / Trigraph pour obtenir des résultats plus précis
Avez-vous envisagé d'utiliser Similarité de cosinus pour déterminer la quantité de similitude entre deux vecteurs?
p>
Le premier vecteur serait les fréquences de lettre extraites de la chaîne de test (pour être classée) et le deuxième vecteur serait pour une langue spécifique. P>
Vous extrayez actuellement des fréquences de lettre unique (Unigrams). Je suggérerais d'extraire une commande supérieure N-grammes , tels que Bigrams ou Trigrams (et encore plus grand Si vous aviez suffisamment de données de formation). Par exemple, pour les bigrams, vous calculeriez les fréquences de "AA", "AB", "AC" ... "ZZ", qui vous permettra d'extraire plus d'informations que si vous envisagez simplement des fréquences de caractère unique. P >
Soyez prudent cependant, car vous avez besoin de plus de données de formation lorsque vous utilisez des n-grammes plus élevés, sinon vous aurez de nombreuses valeurs pour les combinaisons de caractères que vous n'avez pas vues auparavant. P>
En outre, une deuxième possibilité est d'utiliser TF-IDF (Fréverse-Fréverse-Fréquence à terme) Paysements au lieu de fréquences pure lettre (terme). P>
Voici un bon diaporama sur Identification de langue pour (très) textes courts a>, qui utilise des classificateurs d'apprentissage de la machine (mais aussi d'autres bonnes informations). P>
Voici un article court une comparaison de Approches d'identification de la langue
Sous court, les textes de style de requête que vous pourriez également trouver utile. P>
n-graphiques sera certainement aider avec des textes courts et aidera beaucoup. Avec tout texte de longueur raisonnable (un paragraphe?), Les fréquences de lettre simples fonctionnent bien. À titre d'exemple, j'ai écrit une petite démonstration de cela et vous pouvez télécharger la source sur http: // georgeflanagin. com / free.code.php p>
C'est le dernier exemple de la page. P>
Les exemples que j'ai vus ne se soucient pas du pourcentage réel des fréquences de lettres, ils réduisent simplement toutes les lettres en une seule chaîne, de sorte que la "fréquence de lettre anglaise" serait la suivante: "EASN" et la "fréquence de lettre espagnole: "Etaon". Ensuite, ils calculent la fréquence de la lettre pour la chaîne donnée et font de même, puis calculez la distance de levenShtein entre ces cordes.