J'essaie d'utiliser CNN (réseau neuronal convolutionnel) pour classer les documents. CNN pour les textes / phrases courts a été étudié dans de nombreux articles. Cependant, il semble qu'aucun article n'ait utilisé CNN pour un texte ou un document long.
Mon problème est qu'il y a trop de fonctionnalités d'un document. Dans mon jeu de données, chaque document a plus de 1000 jetons / mots. Pour alimenter chaque exemple en CNN, je convertis chaque document en matrice en utilisant word2vec ou gant résultant d'une grande matrice. Pour chaque matrice, la hauteur est la longueur du document et la largeur est la taille du vecteur d'intégration de mots. Mon ensemble de données contient plus de 9 000 exemples et il faut beaucoup de temps pour former le réseau (une semaine entière), ce qui rend difficile le réglage fin des paramètres.
Une autre méthode d'extraction de fonctionnalités consiste à utiliser un vecteur unique pour chaque mot, mais cela créera des matrices très clairsemées. Et bien sûr, cette méthode prend même plus de temps à s'entraîner que la méthode précédente.
Existe-t-il donc une meilleure méthode pour extraire des entités sans créer de grandes matrices d'entrée?
Et comment gérer la longueur variable des documents? Actuellement, j'ajoute des chaînes spéciales pour que le document ait la même longueur, mais je ne pense pas que ce soit une bonne solution.