noticias

¿A dónde se ha ido el famoso BERT?La respuesta a esta pregunta señala un cambio de paradigma en LLM

2024-07-22

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

¿A dónde fue el modelo de codificador? Si BERT funciona bien, ¿por qué no ampliarlo? ¿Qué pasa con los modelos codificador-descodificador o solo codificador?



En el campo de los modelos de lenguaje grande (LLM), ahora es una era en la que solo dominan los modelos decodificadores (como la serie de modelos GPT). ¿Qué pasa con el desarrollo de modelos codificador-descodificador o sólo codificador? ¿Por qué BERT, que alguna vez fue tan famoso, cada vez menos gente le presta atención?

Recientemente, Yi Tay, científico jefe y cofundador de la startup de inteligencia artificial Reka, publicó una publicación en su blog para compartir sus puntos de vista. Yi Tay trabajó en Google Research y Google Brain durante más de tres años antes de cofundar Reka, y participó en el desarrollo de LLM famosos como PaLM, UL2, Flan-2 y Bard, así como modelos multimodales como PaLI-X y ViT-22B. El siguiente es el contenido de la publicación de su blog.



Introducción básica

En términos generales, la arquitectura del modelo LLM en los últimos años se divide principalmente en tres paradigmas principales: modelo de solo codificador (como BERT), modelo de codificador-decodificador (como T5) y modelo de solo decodificador (como la serie GPT). modelos). La gente suele estar confundida y malinterpretar estos métodos y estructuras de clasificación.

Lo primero que hay que entender es que el modelo codificador-decodificador es en realidad un modelo autorregresivo. En el modelo codificador-decodificador, el decodificador sigue siendo esencialmente un decodificador causal. En lugar de completar previamente el modelo de decodificador, descarga algo de texto al codificador y luego lo envía al decodificador mediante atención cruzada. Sí, ¡el modelo T5 también es un modelo de lenguaje!

Una variante de este tipo de modelo es el Prefix Language Model, o PrefixLM para abreviar, que funciona casi de la misma manera pero sin atención cruzada (y otros pequeños detalles como pesos compartidos entre codificador/decodificador y sin cuello de botella en el codificador). PrefixLM a veces se denomina decodificador no causal. En pocas palabras, ¡no hay mucha diferencia en general entre los modelos codificador-decodificador, solo decodificador y PrefixLM!

En la excelente conferencia reciente de Hyung Won, él explica de manera experta la relación entre estos modelos. Para obtener más información, consulte el informe de Machine Heart: "¿Cuál será la principal fuerza impulsora para la investigación de la IA?" Científico investigador del equipo ChatGPT: el costo de la computación disminuye》

Al mismo tiempo, el método de eliminación de ruido de los modelos de solo codificador como BERT es diferente (es decir, in situ y, hasta cierto punto, para que el modelo de solo codificador realmente desempeñe un papel después del entrenamiento previo); confiar en el encabezado de "tarea" de clasificación. Más tarde, modelos como el T5 adoptaron una versión "modificada" del objetivo de eliminación de ruido, que utilizaba un formato de secuencia a secuencia.

Con este fin, es importante señalar: la eliminación de ruido en T5 no es una nueva función objetivo (en el sentido del aprendizaje automático), sino una transformación de datos entre entradas, es decir, también se puede utilizar un decodificador causal entrenado en objetivos corruptos (corrupción de alcance). objetivo).

La gente siempre supone que los modelos de codificador-decodificador deben ser modelos de eliminación de ruido, en parte porque T5 es muy representativo. Pero este no es siempre el caso. Puede entrenar el codificador-decodificador mediante tareas habituales de modelado de lenguaje (como el modelado de lenguaje causal). A su vez, los decodificadores causales también se pueden entrenar utilizando tareas de corrupción de tramos. Como dije antes, esto es básicamente una transformación de datos.

Otro punto que vale la pena señalar: en general, un codificador-decodificador con 2N parámetros es computacionalmente igual que un modelo solo decodificador con N parámetros, por lo que su relación entre FLOP y número de parámetros es diferente. Esto es como distribuir la "escasez de modelos" entre la entrada y el objetivo.

Esto no es nada nuevo y no se me ocurrió a mí. Estaba en el artículo T5 en 2019, y el artículo UL2 también enfatizó este punto nuevamente.

Por ahora, me alegro de poder dejar esto claro. Ahora a por los goles.

Con respecto a los objetivos de eliminación de ruido (¿no funciona? ¿No se escala? ¿O es simplemente demasiado fácil?)

El objetivo de eliminación de ruido aquí se refiere a cualquier variante de la tarea de "daño de alcance". A esto a veces se le llama "rellenar" o "rellenar los espacios en blanco". Hay muchas formas de expresarlo, como longitud del tramo, aleatoriedad, token centinela, etc. Debes haber entendido la clave.

Aunque el objetivo de eliminación de ruido de los modelos de estilo BERT es básicamente in situ (por ejemplo, el cabezal de clasificación está en el token de máscara), el "estilo T5" es más moderno, es decir, a través de un codificador-decodificador o un solo decodificador. modelo para manejar la transformación de datos. En dicha transformación de datos, los tokens enmascarados simplemente se "retroceden" para que el modelo pueda hacer predicciones.

El objetivo principal de la capacitación previa es construir representaciones internas que estén alineadas con la tarea posterior de la manera más eficiente y efectiva posible. Cuanto mejor sea esta representación interna, más fácil será utilizar estas representaciones aprendidas para tareas posteriores. Todos sabemos que la predicción simple de la siguiente palabra funciona extremadamente bien para el objetivo del "modelado del lenguaje causal" y se ha convertido en el núcleo de la revolución LLM. La pregunta ahora es si el objetivo de eliminación de ruido es igualmente bueno.

Según información pública, sabemos que el T5-11B funciona bastante bien, incluso después de la alineación y el ajuste fino supervisado (la puntuación MMLU del Flan-T5 XXL es 55+, lo cual era bastante bueno para un modelo de este tamaño en ese momento) . Por lo tanto, podemos concluir que el proceso de transferencia de objetivos de eliminación de ruido (preentrenamiento → alineación) funciona relativamente bien a esta escala.

Mi opinión es que el objetivo de eliminación de ruido funciona bien, pero no lo suficientemente bien como para ser un objetivo por sí solo. Una gran desventaja surge de la llamada menor "exposición a pérdidas". En el objetivo de eliminación de ruido, solo se enmascara y aprende una pequeña cantidad de tokens (es decir, se tienen en cuenta en la pérdida). Por el contrario, en el modelado de lenguaje normal esto se acerca al 100%. Esto hace que las muestras por FLOP sean muy ineficientes, lo que coloca al objetivo de eliminación de ruido en una desventaja significativa en las comparaciones por flop.

Otra desventaja de los objetivos de eliminación de ruido es que son menos naturales que el modelado de lenguaje normal, ya que reformatea la entrada/salida de una manera extraña, lo que los hace menos adecuados para el aprendizaje en pocas oportunidades. (Pero aún es posible ajustar estos modelos para que funcionen razonablemente bien en tareas de pocas tomas). Por lo tanto, creo que los objetivos de eliminación de ruido solo deben usarse como objetivos complementarios al modelado de lenguaje regular.

Los primeros días de la unidad y la razón por la que desaparecieron los modelos tipo BERT

Modelos como BERT desaparecieron gradualmente y ya no mucha gente habla de ellos. Esto también puede explicar por qué ahora no podemos ver modelos BERT a gran escala. ¿Cuál es la razón? Esto se debe en gran medida a la unificación y cambio de paradigmas de tarea/modelado. Los modelos de estilo BERT son engorrosos, pero la verdadera razón por la que los modelos BERT quedaron obsoletos es que la gente quería hacerlo todo a la vez, por lo que se adoptó una mejor manera de eliminar el ruido: utilizar modelos autorregresivos.

Durante 2018-2021, hubo un cambio de paradigma implícito: del ajuste de una sola tarea a modelos multitarea a gran escala. Esto nos llevó poco a poco al modelo unificado de SFT, que es el modelo universal que vemos hoy. Esto es difícil de hacer con BERT. No creo que esto tenga mucho que ver con la "eliminación de ruido". Para las personas que todavía quieren usar un modelo de este tipo (es decir, T5), encontraron una manera de reformular la tarea de preentrenamiento de eliminación de ruido, lo que hace que los modelos de estilo BERT estén básicamente obsoletos hoy en día porque tenemos mejores planes alternativos.

Más precisamente, los modelos codificador-decodificador y solo decodificador se pueden utilizar para una variedad de tareas sin la necesidad de encabezados de clasificación específicos de la tarea. Para el codificador-decodificador, los investigadores e ingenieros comenzaron a descubrir que el efecto de renunciar al codificador era similar al del codificador BERT. Además, esto preserva las ventajas de la atención bidireccional, una ventaja que hace que BERT sea competitivo con GPT a pequeña escala (a menudo escalas de producción).

El valor del objetivo de eliminación de ruido.

El objetivo de preentrenamiento de eliminación de ruido también aprende a predecir la siguiente palabra de una manera similar al modelado del lenguaje normal. Sin embargo, a diferencia del modelado de lenguaje causal convencional, esto requiere el uso de una transformación de datos en la secuencia para que el modelo pueda aprender a "completar los espacios en blanco" en lugar de simplemente predecir el texto natural de izquierda a derecha.

Vale la pena señalar que los objetivos de eliminación de ruido a veces se denominan "tareas de relleno" y a veces se mezclan con tareas habituales de modelado del lenguaje en el proceso de preentrenamiento.

Aunque los detalles exactos de configuración e implementación pueden variar, los LLM modernos de hoy pueden usar alguna combinación de modelado y relleno de lenguaje. Curiosamente, este híbrido de "modelo de lenguaje + relleno" en realidad se extendió durante el mismo período (como UL2, FIM, GLM, CM3), y muchos equipos trajeron sus propias soluciones híbridas únicas. Por cierto, el modelo más grande conocido entrenado de esta manera es probablemente el PaLM-2.

También debe tenerse en cuenta que la combinación de tareas previas al entrenamiento también se puede apilar en orden y no necesariamente tiene que mezclarse al mismo tiempo. Por ejemplo, Flan-T5 se entrenó inicialmente en fichas dañadas de 1T y luego se cambió. a 100 mil millones de tokens para el objetivo de modelado de lenguaje de avance. Luego, ajuste el comando flan. Hasta cierto punto, esto es adecuado para modelos híbridos de eliminación de ruido/objetivo LM. Para ser claros, el objetivo del modelado del lenguaje de prefijos (que no debe confundirse con la arquitectura) es el modelado del lenguaje puramente causal, con un punto de división determinado aleatoriamente y enviado a la entrada (sin pérdida ni enmascaramiento no causal).

Por cierto, el relleno puede haberse originado en el campo de código LLM, donde "rellenar los espacios en blanco" era más bien una función necesaria para escribir código. Al mismo tiempo, la motivación de UL2 es más unificar el objetivo de eliminación de ruido y la clase de tarea en la que sobresale el LLM bidireccional con tareas inherentemente generativas (como el resumen o la generación abierta). La ventaja de este "desplazamiento hacia atrás" de la decodificación autorregresiva es que no sólo permite que el modelo aprenda dependencias de mayor alcance, sino que también le permite beneficiarse implícitamente de una atención bidireccional no explícita (porque para completar los espacios en blanco, he visto el futuro).

Existe una experiencia legendaria: las representaciones aprendidas mediante objetivos de eliminación de ruido funcionan mejor en categorías de tareas específicas y, a veces, tienen una mayor eficiencia de muestra. En el artículo de U-PaLM, mostramos cómo una pequeña cantidad de entrenamiento ascendente dañado cambia el comportamiento y los fenómenos emergentes en un conjunto de tareas de BIG-Bench. Sobre esta base, el ajuste fino de un modelo entrenado con este objetivo a menudo da como resultado un modelo ajustado y mejor supervisado, especialmente cuando la escala es pequeña.

En términos de ajuste de una sola tarea, se puede ver que el modelo PaLM-1 62B es derrotado por el modelo T5, mucho más pequeño. ¡A una escala relativamente pequeña, "atención bidireccional + objetivo sin ruido" es una hermosa combinación de golpes! Creo que muchos profesionales también han notado esta situación, especialmente en aplicaciones de producción.

¿Qué pasa con la atención bidireccional?

La atención bidireccional es un "sesgo inductivo" interesante para los modelos lingüísticos, que la gente suele confundir con objetivos y la columna vertebral del modelo. El sesgo inductivo tiene diferentes usos en diferentes dominios informáticos y puede tener diferentes efectos en la curva de expansión. Dicho esto, la atención bidireccional puede ser menos importante a escalas más grandes que a escalas más pequeñas, o puede tener diferentes efectos en diferentes tareas o modalidades. Por ejemplo, PaliGemma utiliza la arquitectura PrefixLM.

Hyung Won también señaló en su charla: Los modelos PrefixLM (modelos solo decodificadores que utilizan atención bidireccional) también tienen problemas de almacenamiento en caché, lo cual es un defecto inherente de este tipo de arquitectura. Sin embargo, creo que hay muchas maneras de solucionar este defecto, pero eso está más allá del alcance de este artículo.

Pros y contras de la arquitectura codificador-decodificador

La arquitectura codificador-decodificador tiene ventajas y desventajas en comparación con el modelo solo decodificador. El primer caso es que el lado del codificador no está restringido por la máscara causal. Hasta cierto punto, puede quitar las manos de la capa de atención y realizar agrupaciones o cualquier forma de atención lineal de manera agresiva sin preocuparse por las limitaciones de diseño de la autorregresión. Esta es una excelente manera de descargar "contexto" menos importante al codificador. También puedes hacer el codificador más pequeño, lo cual también es una ventaja.

Un ejemplo de una arquitectura de codificador-decodificador requerida es Charformer, que hace un uso audaz de codificadores y mitiga la desventaja de velocidad de los modelos de nivel de bytes. Innovar en el lado del codificador puede generar beneficios rápidos sin preocuparse por los importantes inconvenientes del enmascaramiento causal.

Al mismo tiempo, en comparación con PrefixLM, una desventaja del codificador-decodificador es que a la entrada y al destino se les debe asignar un presupuesto fijo. Por ejemplo, si el presupuesto de entrada es de 1024 tokens, entonces el lado del codificador debe completar este valor, lo que puede desperdiciar una gran cantidad de cálculos. Por el contrario, en PrefixLM, las entradas y los destinos se pueden conectar directamente, aliviando así este problema.

Relevancia para los modelos actuales y conclusiones clave

En la era actual, una habilidad clave para ser un investigador y profesional calificado de LLM es poder inferir sesgos inductivos tanto desde el aspecto arquitectónico como desde el aspecto previo a la capacitación. Comprender las diferencias sutiles puede ayudar a las personas a extrapolar y continuar innovando.

Aquí están mis conclusiones clave:

Los modelos codificador-decodificador y solo decodificador son modelos autorregresivos, difieren en el nivel de implementación y tienen sus propias ventajas y desventajas. Son sesgos inductivos ligeramente diferentes. Cuál usar depende de los casos de uso posteriores y las limitaciones de la aplicación. Al mismo tiempo, los modelos de codificador estilo BERT pueden considerarse obsoletos para la mayoría de los casos de uso de LLM y casos de uso especializados.

El objetivo de eliminación de ruido se puede utilizar principalmente como complemento del modelo de lenguaje causal. Se han utilizado con éxito como "objetivos de apoyo" durante la fase de formación. Entrenar modelos de lenguaje causal utilizando objetivos de eliminación de ruido a menudo ayuda hasta cierto punto. Aunque esto es muy común en el mundo de los modelos de código (es decir, relleno de código), también es común que los modelos de propósito general actuales utilicen un modelo de lenguaje causal más algún objetivo de eliminación de ruido para el entrenamiento previo.

La atención bidireccional puede ser de gran ayuda para los modelos más pequeños, pero es prescindible para los modelos más grandes. En su mayoría son rumores. Creo que la atención bidireccional tiene un sesgo inductivo, similar a muchos otros tipos de modificaciones del modelo Transformer.

Finalmente, un resumen. Actualmente no existe una versión a gran escala del modelo BERT en funcionamiento: el modelo BERT ha quedado obsoleto y reemplazado por el modelo T5 de eliminación de ruido (autoregresivo) más flexible. Esto se debe principalmente a la unificación de paradigmas, es decir, las personas prefieren utilizar un modelo general para realizar diversas tareas (en lugar de utilizar un modelo de tarea específica). Al mismo tiempo, la eliminación de ruido autorregresiva a veces puede utilizarse como objetivo secundario de los modelos de lenguaje causal.

Enlace original: https://www.yitay.net/blog/model-architecture-blogpost-encoders-prefixlm-denoising