¿Cómo se pueden usar las redes neuronales recurrentes para la clasificación de secuencias?

19

RNN se puede utilizar para la predicción, o el mapeo secuencia a secuencia. Pero, ¿cómo se puede usar RNN para la clasificación? Quiero decir, le damos a una secuencia completa una etiqueta.

usuario64003
fuente
Intentaría predecir el próximo término usando el anterior. Entonces, anteponer esa red a una función de base radial (de 3 * classlabelcount o más o menos neuronas pdf gaussianas) cuyas entradas son los errores de predicción de la serie y cuyas salidas son las etiquetas de clase. Tendría una cantidad decente de neuronas en la capa de entrada, suficiente para tener en cuenta cuántos elementos de la secuencia se requieren para clasificar. Este es solo mi enfoque personal.
EngrStudent - Reinstale a Monica el

Respuestas:

13

Se puede usar RNN para asignar múltiples entradas a una sola entrada (etiqueta), ya que esta figura ( fuente ) ilustra:

ingrese la descripción de la imagen aquí

Cada rectángulo es un vector y las flechas representan funciones (por ejemplo, matriz multiplicada). Los vectores de entrada están en rojo, los vectores de salida están en azul y los vectores verdes mantienen el estado del RNN (más sobre esto pronto). De izquierda a derecha: (1) Modo de procesamiento Vanilla sin RNN, desde entrada de tamaño fijo hasta salida de tamaño fijo (por ejemplo, clasificación de imágenes). (2) Salida de secuencia (p. Ej., Los subtítulos de imagen toman una imagen y generan una oración de palabras). (3) Entrada de secuencia (por ejemplo, análisis de sentimientos donde una oración dada se clasifica como expresión de sentimientos positivos o negativos). (4) Entrada de secuencia y salida de secuencia (por ejemplo, traducción automática: un RNN lee una oración en inglés y luego emite una oración en francés). (5) Entrada y salida de secuencia sincronizada (por ejemplo, clasificación de video donde deseamos etiquetar cada cuadro del video).

Franck Dernoncourt
fuente
4

En el caso de RNN simple, alimente la secuencia completa a su red y luego envíe la etiqueta de clase al último elemento de la secuencia (consulte este documento y las referencias allí para obtener un ejemplo temprano de este enfoque). En la fase de entrenamiento, podemos propagar el error a tiempo desde el último elemento de la secuencia hasta el comienzo de la secuencia. En general, esto no es diferente del problema de etiquetado de secuencia RNN, donde necesitamos asignar etiquetas solo a algunos elementos de la secuencia (o todos los demás elementos están etiquetados como OTROS).

Denis Tarasov
fuente
Se debe tener cuidado para secuencias más largas. La información desde el comienzo de la secuencia puede verse abrumada por la información de la secuencia.
Vladislavs Dovgalecs