Estoy tratando de usar CNN (red neuronal convolucional) para clasificar documentos. CNN para textos cortos / oraciones ha sido estudiado en muchos artículos. Sin embargo, parece que ningún documento ha utilizado CNN para textos o documentos largos.
Mi problema es que hay demasiadas características de un documento. En mi conjunto de datos, cada documento tiene más de 1000 tokens / palabras. Para alimentar cada ejemplo a una CNN, convierto cada documento en una matriz usando word2vec o guante que resulta en una matriz grande. Para cada matriz, la altura es la longitud del documento y el ancho es el tamaño del vector de incrustación de palabras. Mi conjunto de datos tiene más de 9000 ejemplos y lleva mucho tiempo entrenar la red (una semana completa), lo que dificulta el ajuste de los parámetros.
Otro método de extracción de características es usar un vector de un solo hot para cada palabra, pero esto creará matrices muy dispersas. Y, por supuesto, este método incluso lleva más tiempo entrenar que el método anterior.
Entonces, ¿hay un mejor método para extraer características sin crear grandes matrices de entrada?
¿Y cómo debemos manejar documentos de longitud variable? Actualmente, agrego cadenas especiales para que el documento tenga la misma longitud, pero no creo que sea una buena solución.