Sto cercando di usare la CNN (rete neurale convoluzionale) per classificare i documenti. La CNN per brevi testi / frasi è stata studiata in molti articoli. Tuttavia, sembra che nessun documento abbia usato la CNN per lunghi testi o documenti.
Il mio problema è che ci sono troppe funzioni da un documento. Nel mio set di dati, ogni documento ha più di 1000 token / parole. Per alimentare ogni esempio in una CNN, converto ogni documento in una matrice usando word2vec o guanto risultando una matrice grande. Per ogni matrice, l'altezza è la lunghezza del documento e la larghezza è la dimensione del vettore di incorporamento delle parole. Il mio set di dati ha più di 9000 esempi e ci vuole molto tempo per addestrare la rete (un'intera settimana), il che rende difficile mettere a punto i parametri.
Un altro metodo di estrazione delle funzionalità consiste nell'utilizzare un vettore a caldo per ogni parola, ma ciò creerà matrici molto sparse. E, naturalmente, questo metodo richiede anche più tempo per allenarsi rispetto al metodo precedente.
Esiste quindi un metodo migliore per estrarre funzionalità senza creare matrici di input di grandi dimensioni?
E come dovremmo gestire la lunghezza variabile dei documenti? Attualmente, aggiungo stringhe speciali per rendere il documento della stessa lunghezza, ma non credo sia una buona soluzione.