Un modelo de transformador es un tipo de modelo de deep learning que se introdujo en 2017. Estos modelos han pasado rápidamente a ser fundamentales en el procesamiento del lenguaje natural (PLN) y se han aplicado a una amplia gama de tareas de machine learning e inteligencia artificial.
El modelo fue descrito por primera vez en un artículo de 2017 titulado "Attention is All You Need" de Ashish Vaswani, un equipo de Google Brain y un grupo de la Universidad de Toronto. La publicación de este documento se considera un momento decisivo en este campo, dado lo extendido que está el uso de transformadores en aplicaciones como la formación de LLM.
Estos modelos pueden traducir texto y voz casi en tiempo real. Por ejemplo, hay aplicaciones que ahora permiten a los turistas comunicarse con los lugareños en la calle en su idioma principal. Ayudan a los investigadores a comprender mejor el ADN y acelerar el diseño de fármacos. Pueden ayudar a detectar anomalías y prevenir fraudes en las finanzas y la seguridad. Los transformadores de visión se utilizan de manera similar para tareas de visión por ordenador.
La conocida herramienta de generación de texto ChatGPT de OpenAI utiliza arquitecturas de transformadores para la predicción, el resumen, la respuesta a preguntas y mucho más, ya que permiten al modelo centrarse en los segmentos más relevantes del texto de entrada. El “GPT” visto en las distintas versiones de la herramienta (p. ej. GPT-2, GPT-3) significa "transformador generativo preentrenado". Las herramientas de IA generativa basadas en texto, como ChatGPT, se benefician de los modelos de transformadores porque pueden predecir más fácilmente la siguiente palabra en una secuencia de texto, basándose en conjuntos de datos grandes y complejos.
El modelo BERT, o Bidirectional Encoder Representations from Transformers, se basa en la arquitectura del transformador. A partir de 2019, BERT se utilizó para casi todos los resultados de búsqueda de Google en inglés y se ha implementado en más de 70 idiomas.1
Descubra el poder de integrar una estrategia basada en un lakehouse de datos en su arquitectura de datos, incluidas las mejoras para escalar la IA y las oportunidades de optimización de costes.
Regístrese para recibir el libro electrónico sobre IA generativa
La innovación clave del modelo de transformador es no tener que depender de redes neuronales recurrentes (RNN) o redes neuronales convolucionales (CNN), enfoques de redes neuronales que tienen inconvenientes significativos. Los transformadores procesan secuencias de entrada en paralelo, lo que los hace muy eficientes para el entrenamiento y la inferencia, porque no se pueden acelerar las cosas simplemente agregando más GPU. Los modelos de transformadores necesitan menos tiempo de entrenamiento que las arquitecturas de redes neuronales recurrentes anteriores, como la memoria a corto plazo (LSTM).
Las RNN y LSTM se remontan a las décadas de 1920 y 1990, respectivamente. Estas técnicas calculan cada componente de una entrada en secuencia (p. ej. palabra por palabra), por lo que el cálculo puede llevar mucho tiempo. Es más, ambos enfoques tienen limitaciones a la hora de retener el contexto cuando la "distancia" entre los fragmentos de información en una entrada es larga.
Hay dos innovaciones principales que los modelos de transformadores ponen sobre la mesa. Considere estas dos innovaciones en el contexto de la predicción de texto.
Codificación posicional: en lugar de mirar cada palabra en el orden en que aparece en una oración, se asigna un número único a cada palabra. Esto proporciona información sobre la posición de cada token (partes de la entrada, como palabras o subpalabras en NLP) en la secuencia, lo que permite al modelo considerar la información secuencial de la secuencia.
Autoatención: la atención es un mecanismo que calcula el peso de cada palabra de una oración en relación con todas las demás palabras de la oración, por lo que el modelo puede predecir las palabras que probablemente se usarán en secuencia. Esta comprensión se aprende con el tiempo a medida que un modelo se entrena con una gran cantidad de datos. El mecanismo de autoatención permite que cada palabra preste atención a todas las demás palabras de la secuencia en paralelo, sopesando su importancia para el token actual. De esta manera, se puede decir que los modelos de machine learning pueden "aprender" las reglas de la gramática, basándose en las probabilidades estadísticas de cómo se usan normalmente las palabras en el lenguaje.
Los modelos de transformador funcionan procesando datos de entrada, que pueden ser secuencias de tokens u otros datos estructurados, a través de una serie de capas que contienen mecanismos de autoatención y redes neuronales de proalimentación. La idea central detrás de cómo funcionan los modelos de transformadores se puede dividir en varios pasos clave.
Imaginemos que necesita traducir una frase de inglés a francés. Estos son los pasos que debe seguir para realizar esta tarea con un modelo de transformador.
Incrustaciones de entrada: la oración de entrada se transforma primero en representaciones numéricas llamadas incrustaciones. Estos capturan el significado semántico de los tokens en la secuencia de entrada. En el caso de las secuencias de palabras, estas incrustaciones se pueden aprender durante el entrenamiento u obtener de incrustaciones de palabras previamente entrenadas.
Codificación posicional: la codificación posicional se presenta normalmente como un conjunto de valores o vectores adicionales que se agregan a las incrustaciones de tokens antes de introducirlas en el modelo de transformador. Estas codificaciones posicionales tienen patrones específicos que codifican la información de posición.
Atención de múltiples cabezas: la autoatención opera en múltiples "cabezas de atención" para capturar diferentes tipos de relaciones entre tokens. Las funciones Softmax, un tipo de función de activación, se utilizan para calcular los pesos de atención en el mecanismo de autoatención.
Normalización de capas y conexiones residuales: el modelo utiliza la normalización de capas y las conexiones residuales para estabilizar y acelerar el entrenamiento.
Redes neuronales de retroalimentación: la salida de la capa de autoatención pasa a través de las capas de retroalimentación. Estas redes aplican transformaciones no lineales a las representaciones de tokens, lo que permite que el modelo capture patrones y relaciones complejos en los datos.
Capas apiladas: los transformadores suelen estar formados por varias capas apiladas una encima de la otra. Cada capa procesa la salida de la capa anterior, refinando gradualmente las representaciones. El apilamiento de varias capas permite al modelo capturar entidades jerárquicas y abstractas en los datos.
Capa de salida: en tareas de secuencia a secuencia, como la traducción automática neuronal, se puede agregar un módulo decodificador independiente en la parte superior del codificador para generar la secuencia de salida.
Entrenamiento: los modelos de transformadores se entrenan mediante el aprendizaje supervisado, en el que aprenden a minimizar una función de pérdida que cuantifica la diferencia entre las predicciones del modelo y la verdad fundamental para la tarea dada. El entrenamiento suele implicar técnicas de optimización como Adam o descenso de gradiente estocástico (SGD).
Inferencia: tras el entrenamiento, el modelo puede utilizarse para la inferencia sobre nuevos datos. Durante la inferencia, la secuencia de entrada pasa por el modelo preentrenado y éste genera predicciones o representaciones para la tarea en cuestión.
IBM watsonx.data es un almacén de datos diseñado para su propósito construido sobre una arquitectura abierta de lakehouse y respaldado por consultas, gobernanza y formatos de datos abiertos para ayudar a acceder y compartir datos.
Obtenga más información sobre IBM watsonx.data, un almacén de datos que ayuda a las empresas a unificar y gobernar fácilmente sus datos estructurados y no estructurados.
Explore la arquitectura de lagos de datos abiertos y descubra cómo combina la flexibilidad y las ventajas de costos de los lagos de datos con el rendimiento de los almacenes de datos.
Descubra cómo IBM watsonx.data ayuda a las empresas a abordar los desafíos del complejo panorama de datos actual y a escalar la IA para satisfacer sus necesidades.
Descubra cómo Presto, un motor de consultas SQL de código abierto rápido y flexible, puede ayudar a ofrecer la información que las empresas necesitan.
1 Google's BERT Rolls Out Out Out Worldwide, Search Engine Journal (enlace externo a IBM.com), 9 de diciembre de 2019