Le problème que j'aborde est de classer les textes courts en plusieurs classes. Mon approche actuelle consiste à utiliser les fréquences des termes pondérés tf-idf et à apprendre un classificateur linéaire simple (régression logistique). Cela fonctionne assez bien (environ 90% de macro F-1 sur le test, près de 100% sur le set d'entraînement). Un gros problème sont les mots / n-grammes invisibles.
J'essaie d'améliorer le classificateur en ajoutant d'autres fonctionnalités, par exemple un vecteur de taille fixe calculé en utilisant des similitudes de distribution (telles que calculées par word2vec) ou d'autres caractéristiques catégorielles des exemples. Mon idée était d'ajouter simplement les fonctionnalités aux fonctionnalités d'entrée clairsemées du sac de mots. Cependant, cela se traduit par de moins bonnes performances sur l'ensemble de test et d'entraînement. Les fonctionnalités supplémentaires donnent à elles seules environ 80% de F-1 sur l'ensemble de test, donc elles ne sont pas des ordures. La mise à l'échelle des fonctionnalités n'a pas aidé non plus. Ma pensée actuelle est que ce type de fonctionnalités ne se mélange pas bien avec le sac (clairsemé) de fonctionnalités de mots.
La question est donc la suivante: en supposant que les fonctionnalités supplémentaires fournissent des informations supplémentaires, quelle est la meilleure façon de les incorporer? Pourrait former des classificateurs séparés et les combiner dans une sorte de travail d'ensemble (cela aurait probablement l'inconvénient qu'aucune interaction entre les caractéristiques des différents classificateurs ne pourrait être capturée)? Y a-t-il d'autres modèles plus complexes que je devrais considérer?