2

Je souhaite regrouper de manière incrémentielle des documents texte en les lisant en tant que flux de données, mais il semble y avoir un problème. La plupart des options de pondération à terme sont basées sur un modèle d'espace vectoriel utilisant TF-IDF comme poids d'une entité. Cependant, dans notre cas, l'IDF d'un attribut existant change avec chaque nouveau point de données et donc le cluster précédent ne reste plus valide et donc aucun algorithme populaire comme CluStream, CURE, BIRCH ne peut être appliqué qui suppose des données statiques dimensionnelles fixes. Est-ce que quelqu'un peut me rediriger vers une recherche existante liée à ceci ou donner des suggestions? Merci !comment regrouper des flux de données en évolution

Répondre

1

est ici une idée du haut de ma tête:

Quoi de vos données d'entrée comme? Je devine qu'il est au moins similaire sur le thème, de sorte que vous pouvez commencer avec un dictionnaire de phrases de base et l'utiliser pour idf. Apache Lucene est un excellent moteur d'indexation. Puisque vous avez un dictionnaire de base, vous pouvez exécuter kmeans ou ce que vous voulez. Au fur et à mesure que les documents arrivent, vous devrez reconstruire le dictionnaire à une certaine fréquence (qui peut être déchargée sur un autre thread/machine/etc) et ensuite re-cluster. Avec les données indexées dans un moteur flexible hautes performances comme Lucene, vous pouvez exécuter des requêtes même lorsque de nouveaux documents sont indexés. Je parie que si vous faites des recherches sur different clustering algorithms vous trouverez de bonnes idées.

Quelques papiers intéressants/liens:

  1. http://en.wikipedia.org/wiki/Document_classification
  2. http://www.scholarpedia.org/article/Text_categorization
  3. http://en.wikipedia.org/wiki/Naive_Bayes_classifier

Sans plus d'informations, je ne vois pas pourquoi vous ne pourriez pas re-groupe tous les temps dans un moment. Vous pourriez jeter un oeil à certains des systèmes de recommandation déjà là-bas.

Questions connexes