Utilisation du clustering dans le traitement de texte


11

Bonjour, c'est ma première question dans la pile Data Science. Je veux créer un algorithme de classification de texte. Supposons que j'ai un grand ensemble de textes et d'articles. Disons environ 5000 textes en clair. J'utilise d'abord une fonction simple pour déterminer la fréquence de tous les mots de quatre caractères et plus. J'utilise ensuite cela comme caractéristique de chaque échantillon de formation. Maintenant, je veux que mon algorithme puisse regrouper les ensembles de formation en fonction de leurs caractéristiques, qui est ici la fréquence de chaque mot dans l'article. (Notez que dans cet exemple, chaque article aurait sa propre caractéristique unique puisque chaque article a une caractéristique différente, par exemple un article a 10 "eau et 23" pur "et un autre a 8" politique "et 14" effet de levier "). Pouvez-vous suggérer le meilleur algorithme de clustering possible pour cet exemple?

Réponses:


5

Je ne sais pas si vous avez déjà lu SenseCluster par Ted Pedersen: http://senseclusters.sourceforge.net/ . Très bon papier pour le regroupement des sens.

Aussi, lorsque vous analysez des mots, pensez que "ordinateur", "ordinateurs", "informatique", ... représentent un concept, donc une seule fonctionnalité. Très important pour une analyse correcte.

Pour parler de l'algorithme de clustering, vous pouvez utiliser un clustering hiérarchique . A chaque étape de l'algo, vous fusionnez les 2 textes les plus similaires selon leurs caractéristiques (en utilisant une mesure de dissimilarité, la distance euclidienne par exemple). Avec cette mesure de dissimilarité, vous êtes en mesure de trouver le meilleur nombre de clusters et donc, le meilleur clustering pour vos textes et articles.

Bonne chance :)


6

Si vous souhaitez poursuivre sur votre chemin existant, je suggère de normaliser la fréquence de chaque terme par sa popularité dans l'ensemble du corpus, de sorte que les mots rares et donc prédictifs sont promus. Ensuite, utilisez des projections aléatoires pour réduire la dimensionnalité de ces très longs vecteurs à la taille afin que votre algorithme de clustering fonctionne mieux (vous ne voulez pas grouper dans des espaces de grande dimension).

Mais il existe d'autres façons de modéliser un sujet. Lisez ce tutoriel pour en savoir plus.



En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.