Saltar al contenido principal

términos del glosario

Encoder

Categoría
Neural Networks & Architectures
Dificultad
Intermedio

Definición

Un encoder es un componente de red neuronal que transforma datos de entrada en una representación latente comprimida y de alta dimensión, a menudo denominada vector de contexto o embedding.

Cómo funciona y contexto

En el aprendizaje profundo moderno, el encoder sirve como el motor de extracción de características de un modelo. Procesa la entrada sin procesar (como una secuencia de palabras o píxeles) y la mapea en un espacio latente donde las entradas similares se posicionan más cerca entre sí. En el contexto de la arquitectura Transformer, el encoder procesa toda la secuencia de entrada simultáneamente utilizando mecanismos de autoatención para capturar dependencias bidireccionales. Esto difiere de las arquitecturas recurrentes más antiguas que procesaban los datos de forma secuencial. Una limitación principal es que la salida del encoder suele ser opaca; aunque captura información semántica rica, interpretar exactamente qué características corresponden a dimensiones específicas en el espacio latente sigue siendo un desafío importante en la investigación de IA.

Por qué es importante

Al crear embeddings de alta calidad, permiten que las tareas posteriores (como la clasificación, la traducción o la generación) operen sobre representaciones numéricas significativas en lugar de entradas sin procesar y ruidosas. Sin una codificación efectiva, los modelos tendrían dificultades para generalizar en diferentes contextos o mantener la consistencia semántica en tareas complejas.

Ejemplo real

En un sistema de traducción automática, un encoder procesa una oración en inglés como 'The cat sits on the mat.' Analiza las relaciones entre las palabras y convierte toda la oración en una representación vectorial de longitud fija. Este vector actúa como un 'pensamiento' o resumen del significado de la oración, que luego se pasa a un decoder para generar la traducción correspondiente en otro idioma, como el francés.

Errores frecuentes

  • Confundir el encoder con el decoder; el encoder crea una representación, mientras que el decoder genera una salida a partir de esa representación.
  • Asumir que el encoder siempre debe reducir la dimensionalidad de la entrada; aunque es común, algunas arquitecturas mantienen o expanden las dimensiones para tareas específicas.
  • Creer que el espacio latente del encoder es legible por humanos sin técnicas de visualización especializadas como t-SNE o UMAP.

Preguntas frecuentes

¿En qué se diferencia un encoder de una capa de embedding?

Una capa de embedding suele ser una tabla de búsqueda que mapea tokens discretos a vectores, mientras que un encoder es una red neuronal multicapa que procesa esos embeddings para capturar relaciones contextuales complejas.

¿Puede un encoder funcionar independientemente de un decoder?

Sí. Muchos modelos, como BERT, son arquitecturas 'solo encoder' utilizadas para tareas como el análisis de sentimientos, la clasificación de texto y la recuperación de información donde no se requiere generar texto nuevo.

¿Qué sucede si el espacio latente del encoder es demasiado pequeño?

Si el espacio latente está demasiado restringido, el modelo sufre un cuello de botella de información, lo que lleva a la pérdida de detalles críticos y a una disminución en la capacidad del modelo para realizar tareas posteriores precisas.