Red de conocimiento informático - Conocimiento del nombre de dominio - Comprenda rápidamente los principios estructurales de RNN (LSTM, GRU)

Comprenda rápidamente los principios estructurales de RNN (LSTM, GRU)

RNN se utiliza principalmente para resolver problemas de secuencia, enfatizando el orden de la secuencia y deriva el concepto de contexto en PNL. En un problema de traducción, el significado de una palabra puede estar relacionado con las palabras antes y después, formando. esta combinación (Skip-gram), también puede estar relacionada con todas las palabras anteriores (Atención) y, con la ayuda del estado del RNN. A través de la unidad de memoria de estado del RNN, la salida de una posición de secuencia está matemáticamente relacionada con la entrada de todas las secuencias anteriores. Por supuesto, debido al problema de multiplicidad de gradiente del RNN original, la influencia de la secuencia anterior es casi 0, lo que requiere que LSTM posterior corrija el problema de aditividad. La base matemática de RNN puede considerarse como una cadena de Markov, es decir, los valores posteriores están determinados por la probabilidad anterior y ciertos parámetros.

El modelo seq2seq se presentará por separado en un nuevo artículo.

El RNN ordinario no aprenderá la información anterior al procesar texto largo, por ejemplo: las nubes en el cielo predicen el cielo con mucha precisión, pero si es un texto muy largo, por ejemplo: Nací en China. ,... Pero si es un texto muy largo, por ejemplo: nací en China, hablo chino, habrá un problema de dependencia a largo plazo, que LSTM puede resolver con entrada, olvidándose de la puerta y salida a resolver.

Cuando empezamos a aprender LSTM, estábamos un poco confundidos sobre por qué esta estructura era tan complicada, pero de hecho, si primero entendemos cómo LSTM resuelve el problema de dependencia a largo plazo, será fácil. para recordar esta estructura.

La forma en que LSTM resuelve el problema de dependencia de LSTM es utilizar la entrada para decidir qué información se olvida de la memoria de estado oculta anterior, qué información se ingresa y qué información se genera.

En comparación con los estados ocultos de RNN, LSTM también introduce estados unitarios para registrar información. El estado de la unidad utiliza la estructura de la puerta para agregar nueva información de almacenamiento y eliminar la información de almacenamiento anterior

Este paso es olvidar parte de la información de almacenamiento en el estado de la unidad a través de la puerta de olvido

Después de la puerta de olvido, la nueva información que se agregará se agrega al estado de la unidad y se genera un nuevo estado de la unidad

La estructura de GRU es la siguiente. Contiene principalmente puerta de reinicio y puerta de actualización. Pensar en GRU como una variante de LSTM es equivalente a cancelar el estado de la unidad en LSTM, usar solo estados ocultos, usar puertas de actualización para reemplazar las puertas de entrada y olvidar en LSTM, cancelar la puerta de salida en LSTM y agregar la puerta de reinicio. puerta. La ventaja de esto es que bajo un efecto similar al LSTM, GRU tiene menos parámetros, la sobrecarga computacional del entrenamiento es menor y la velocidad del entrenamiento es más rápida.

Dado que GRU tiene menos parámetros y una velocidad de convergencia más rápida, generalmente es mejor elegir LSTM si el conjunto de datos es lo suficientemente grande.

En circunstancias normales, la diferencia entre LSTM y GRU no es grande. GRU tiene una velocidad de entrenamiento más rápida, por lo que generalmente se elige GRU para el entrenamiento y el ajuste de parámetros. Cuando la optimización no puede continuar, se puede usar LSTM en su lugar. GRU y ver si hay alguna mejora.

Explicación completa de RNN, variantes de RNN, Seq2Seq y mecanismo de atención

Comprender la red LSTM

Para problemas de predicción de secuencias, ¿cuáles son las ventajas de CNN y ¿RNN?