Long Short-Term Memory: redes con memoria a corto-largo plazo
La long short-term memory (LSTM) o memoria a corto-largo plazo es una forma de entrenar redes neuronales y almacenar información importante a largo plazo. Esta tecnología utiliza una memoria a corto plazo y otra a largo plazo y es de crucial importancia para el desarrollo de la inteligencia artificial.
¿Qué es la long short-term memory (LSTM)?
La memoria a corto-largo plazo es una técnica informática que se utiliza para almacenar información dentro de una red neuronal durante un periodo de tiempo más largo. Esto es especialmente importante en el procesamiento de datos secuenciales. La memoria a corto-largo plazo permite a la red acceder a eventos anteriores y tenerlos en cuenta para nuevos cálculos. Esto la distingue en particular de las Redes Neuronales Recurrentes (RNN) o puede complementarlas en el mejor de los casos. En lugar de una simple “memoria a corto plazo”, la LSTM dispone de una “memoria a largo plazo” adicional en la que se almacena la información seleccionada durante un periodo de tiempo más largo.
Por tanto, las redes con memoria a corto-largo plazo pueden almacenar información durante largos periodos de tiempo y reconocer así dependencias a largo plazo. Esto es especialmente importante en el campo del aprendizaje profundo y la inteligencia artificial o IA. La base de este proceso son las llamadas puertas o “gates”, del inglés, cuyo funcionamiento se explica con más detalle más adelante en este artículo. Las redes proporcionan modelos eficientes de predicción y procesamiento basados en datos de series temporales.
- Crea tu página web en tiempo récord
- Impulsa tu negocio gracias al marketing de IA
- Ahorra tiempo y obtén mejores resultados
¿De qué elementos consta una celda LSTM?
Una celda que dispone de long short-term memory (LSTM) consta de elementos que brindan diversas opciones a la red. Esta debe tener la capacidad de almacenar información durante un largo período de tiempo y vincularla con nueva información cuando sea necesario. Al mismo tiempo, es crucial que la celda elimine de forma autónoma el conocimiento irrelevante o desactualizado de su “memoria”. Por ello, está formada por cuatro componentes diferentes:
- Input Gate: la puerta de entrada decide qué información nueva se almacena en la memoria y de qué forma.
- Forget Gate: la “puerta del olvido” determina qué información debe permanecer en una celda y cuál debe ser eliminada.
- Output Gate: la puerta de salida determina cómo se deben emitir los valores de una celda. La decisión se basa en el estado actual y en la información de entrada correspondiente.
- Cell State o estado de la celda: este componente sigue una lógica de conexión propia que regula cómo interactúan los otros componentes y cómo se gestionan los flujos de información y los procesos de almacenamiento.
¿Cómo funciona la memoria a corto-largo plazo?
De forma similar a la ya mencionada Red Neuronal Recurrente o a la red neuronal de propagación, también conocida como Red Neuronal Feedforward (FNN), más simple que la primera, las celdas con long short-term memory también operan en capas. Sin embargo, a diferencia de otras redes, almacenan información durante largos periodos de tiempo y pueden procesarla o recuperarla de manera posterior. Para ello, cada celda LSTM utiliza las tres puertas o gates antes mencionadas, así como una especie de memoria a corto plazo y una memoria a largo plazo.
- La memoria a corto plazo, es decir, la memoria en la que se guardan temporalmente las informaciones de pasos de cálculo anteriores, también es conocida en otras redes. En el contexto de la long short-term memory se denomina Hidden State o estado oculto. Sin embargo, a diferencia de otras redes, una celda LSTM también puede retener información a largo plazo. Esta información se almacena en el llamado estado de la celda (Cell State en inglés). La nueva información pasa entonces a través de las tres puertas.
- En la Input Gate o puerta de entrada, la entrada actual se multiplica por el Hidden State (estado oculto) y la ponderación del último ciclo. De este modo, la puerta de entrada decide el valor de la nueva entrada. La información importante se añade entonces al estado de la celda actual, convirtiéndose así en el nuevo estado de la celda.
- La Forget Gate o puerta del olvido decide qué información se utiliza y cuál se elimina. Para ello, se tienen en cuenta el último estado oculto y la entrada actual. Esta decisión se toma mediante una función sigmoide (función en forma de S), que genera valores entre 0 y 1. Un valor de 0 significa que la información anterior se olvida, mientras que un valor de 1 significa que la información anterior se conserva como estado actual. El resultado se multiplica por el estado de la celda actual. Por tanto, los valores con 0 se descartan.
- El resultado final se calcula en la Output Gate o puerta de salida. Para ello se utiliza el estado oculto y la función sigmoide. A continuación, el estado de la celda se activa con una función tanh (tangente hiperbólica) y se multiplica para determinar qué información debe pasar por la puerta de salida.
¿Qué diferentes arquitecturas existen?
Aunque este modo de funcionamiento es similar para todas las redes con memoria a corto-largo plazo, a veces existen diferencias significativas en la arquitectura de las variantes de LSTM. Por ejemplo, se utilizan mucho las llamadas peephole LSTM o LSTM con mirilla, que deben su nombre al hecho de que las puertas individuales pueden observar el estado de la celda correspondiente. Una alternativa son las peephole convolutional LSTM, que utilizan la convolución discreta además de la multiplicación matricial para calcular la actividad de una neurona.
¿Cuáles son las aplicaciones más importantes de la long short-term memory?
En la actualidad, numerosas aplicaciones se basan total o parcialmente en redes neuronales con memoria a corto-largo plazo. Los ámbitos de aplicación son muy variados, pero esta tecnología contribuye de manera especialmente valiosa en las siguientes áreas:
- Generación automatizada de textos
- Análisis de datos de series temporales
- Reconocimiento de voz
- Previsión de la evolución de los mercados bursátiles
- Composición
La long short-term memory también se utiliza para la identificación de anomalías, por ejemplo, en caso de intentos de fraude o ataques a redes. Las aplicaciones correspondientes también pueden recomendar medios como películas, series, grupos musicales o libros basándose en los datos de usuarios o analizar vídeos, imágenes o canciones. Es una forma sencilla no solo de aumentar la seguridad, sino también de reducir considerablemente los costes.
Numerosas grandes empresas utilizan la memoria a corto-largo plazo para sus servicios y productos. Google utiliza las redes correspondientes para sus sistemas de asistencia inteligentes, el programa de traducción Google Translate, el software de juegos AlphaGo y el reconocimiento de voz en los smartphones. Los dos asistentes de voz Siri (Apple) y Alexa (Amazon) también se basan en la long short-term memory, al igual que la función de autocompletado del teclado de Apple.