¿Qué es el aprendizaje por refuerzo a partir de la retroalimentación humana (RLHF)?

Desde el lanzamiento de ChatGPT por parte de OpenAI, la gente se ha entusiasmado con este gran avance en los modelos de lenguaje extenso (LLM). Aunque ChatGPT tiene el mismo tamaño que otros modelos de lenguaje a gran escala de última generación, su rendimiento es mucho mayor y promete admitir nuevas aplicaciones o subvertir las originales.

Una de las razones principales detrás del increíble rendimiento de ChatGPT es gracias a su técnica de entrenamiento: Aprendizaje por refuerzo a partir de la retroalimentación humana (RLHF). Si bien RLHF ha demostrado resultados impresionantes en modelos de lenguaje grandes que se remontan a los primeros lanzamientos de GPT, las primeras aplicaciones de GPT no eran para el procesamiento de lenguaje natural.

Esto es lo que la gente necesita saber sobre RLHF y cómo se aplica a los modelos de lenguaje grandes.

¿Qué es RLHF?

El aprendizaje por refuerzo (RL) es un campo de aprendizaje automático en el que un agente aprende una política a través de la interacción con el entorno. El agente toma acción (incluyendo no hacer nada). Estas acciones afectan el entorno del agente, que a su vez pasa a un nuevo estado y devuelve una recompensa. La recompensa es la señal de retroalimentación que permite al agente de aprendizaje por refuerzo ajustar su política de acción. A medida que el agente se entrena, ajusta su política y toma una secuencia de acciones que maximiza su recompensa.

Diseñar el sistema de recompensas correcto es uno de los desafíos clave en el aprendizaje por refuerzo. En algunas aplicaciones, las recompensas se retrasarán durante mucho tiempo. Considere un agente de aprendizaje por refuerzo que se usa para jugar al ajedrez, donde las recompensas positivas solo se obtienen después de derrotar a un oponente, lo que puede requerir docenas de movimientos para obtener. En este caso, el agente perderá mucho tiempo de entrenamiento inicial moviéndose aleatoriamente hasta que encuentre una combinación ganadora. En otras aplicaciones, las recompensas ni siquiera se pueden definir mediante fórmulas matemáticas o lógicas (esto se analizará con más detalle cuando se analicen los modelos de lenguaje).

El aprendizaje por refuerzo a partir de la retroalimentación humana mejora la capacitación de los agentes de aprendizaje por refuerzo al incorporar humanos en el proceso de capacitación, lo que ayuda a explicar los elementos no medibles del sistema de recompensas.

¿Por qué no usar siempre RLHF? Primero, escala mal. Una ventaja importante del aprendizaje automático en general es su capacidad de escalar con la disponibilidad de recursos informáticos. A medida que las computadoras se vuelven más rápidas y los datos están más disponibles, los modelos de aprendizaje automático más grandes se pueden entrenar a un ritmo más rápido, y la dependencia de los humanos para entrenar los sistemas de aprendizaje por refuerzo se convierte en un cuello de botella.

En consecuencia, la mayoría de los sistemas RLHF se basan en una combinación de sistemas automatizados y señales de recompensa proporcionadas por humanos. Los sistemas de recompensa computacional brindan retroalimentación primaria a los agentes de aprendizaje por refuerzo. Los gerentes humanos ocasionalmente brindan señales adicionales de recompensa/castigo o brindan los datos necesarios para entrenar el modelo de recompensa.

Ejemplo de RLHF

Imagine crear un robot para cocinar pizza que incorpore algunos elementos medibles en un sistema de recompensa automático (por ejemplo, el grosor de la pizza, la cantidad de salsa y queso, etc.). Pero para asegurarse de que la pizza sepa bien, se requiere que los humanos prueben y califiquen las pizzas que cocina el robot durante el proceso de entrenamiento.

El lenguaje como un problema de aprendizaje por refuerzo

Los modelos de lenguaje grande han demostrado ser muy buenos en una variedad de tareas, incluido el resumen de texto, la respuesta a preguntas, la generación de texto, la generación de código, el plegamiento de proteínas y más. A escalas muy grandes, los modelos de lenguaje grandes pueden realizar un aprendizaje de intentos cero y pocos intentos para tareas para las que no fueron capacitados. Uno de los grandes logros del modelo Transformer (la arquitectura que se utiliza en los grandes modelos de lenguaje) es su capacidad para ser entrenado a través del aprendizaje no supervisado.

Sin embargo, a pesar de sus fascinantes logros, los grandes modelos de lenguaje comparten características fundamentales con otros modelos de aprendizaje automático. En esencia, son máquinas de predicción muy grandes diseñadas para adivinar el siguiente token (mensaje) en una secuencia. Entrenados en un corpus de texto muy grande, los modelos de lenguaje grandes desarrollan un modelo matemático que puede producir (en su mayoría) textos largos coherentes y consistentes.

El mayor desafío con los idiomas es que, en muchos casos, las indicaciones tienen muchas respuestas correctas. Sin embargo, no todos estos enfoques son deseables según el usuario, la aplicación y el escenario de un modelo de lenguaje grande. Desafortunadamente, el aprendizaje no supervisado en grandes corpus de texto no hace que el modelo sea consistente con todas las diferentes aplicaciones para las que se usará.

Afortunadamente, el aprendizaje por refuerzo puede ayudar a mover grandes modelos lingüísticos en la dirección correcta. Pero primero defina el lenguaje como un problema de aprendizaje por refuerzo:

  • Agentes: los modelos de lenguaje son agentes de aprendizaje por refuerzo que deben aprender para crear una salida de texto óptima.
  • Espacio de acción: un espacio de acción es el conjunto de posibles salidas de lenguaje que puede generar un modelo de lenguaje grande (muy grande).
  • Espacio de estado: el estado del entorno incluye indicaciones para el usuario y la salida de un modelo de lenguaje grande (muy grande).
  • Recompensa: la recompensa mide qué tan bien se alinea la respuesta de un modelo de lenguaje grande con los escenarios de la aplicación y la intención del usuario.

Todos los elementos del sistema de aprendizaje por refuerzo descrito anteriormente son triviales, excepto el sistema de recompensa. A diferencia de jugar ajedrez, Go o incluso problemas de robótica, las reglas para recompensar a los modelos de lenguaje no están bien definidas. Afortunadamente, con la ayuda de RLHF, es posible crear buenos sistemas de recompensas para los modelos de lenguaje.

RLHF para modelos de lenguaje

RLHF para modelos de lenguaje consta de tres etapas. Primero, es muy importante comenzar con un modelo de lenguaje previamente entrenado, porque los modelos de lenguaje grandes requieren una gran cantidad de datos de entrenamiento. Capacitarlos desde cero con comentarios humanos es casi imposible. Los modelos de lenguaje grandes preentrenados con aprendizaje no supervisado ya tienen un modelo de lenguaje sólido y crearán resultados coherentes, aunque algunos o muchos de ellos pueden no alinearse con los objetivos y la intención del usuario.

En la segunda etapa, se crea un modelo de recompensa para el sistema de aprendizaje por refuerzo. En esta etapa, se entrena otro modelo de aprendizaje automático que toma el texto generado por el modelo principal y produce un puntaje de calidad. El segundo modelo suele ser otro modelo de lenguaje grande que se ha modificado para generar valores escalares en lugar de secuencias de tokens de texto.

Para entrenar un modelo de recompensa, es necesario crear un conjunto de datos de texto etiquetado como calidad generado por un modelo de lenguaje grande. Para componer cada ejemplo de entrenamiento, dé una pista al modelo principal de lenguaje grande y deje que genere varios resultados. Luego, haga que los evaluadores clasifiquen los textos generados de mejor a peor. Luego, entrene el modelo de recompensa para predecir puntajes para textos de modelos de lenguaje extensos. Los modelos de recompensa crean una representación matemática de las preferencias humanas entrenando la salida y clasificando las puntuaciones de modelos de lenguaje grandes.

En la etapa final, se crea un ciclo de aprendizaje por refuerzo. Una copia del modelo principal de lenguaje grande se convierte en el agente de aprendizaje por refuerzo. En cada conjunto de entrenamiento, un modelo de lenguaje grande toma varias señales del conjunto de datos de entrenamiento y genera texto. Luego, su salida se pasa a un modelo de recompensa, que proporciona una puntuación para evaluar su alineación con las preferencias humanas. Luego, los modelos de lenguaje extenso se actualizan para crear resultados que obtienen una puntuación más alta en el modelo de recompensa.

Aunque este es el marco general que usa RLHF para los modelos de lenguaje, las diferentes implementaciones también hacen modificaciones. Por ejemplo, debido a que actualizar un modelo de lenguaje grande e importante es costoso, los equipos de aprendizaje automático a veces congelan muchas de sus capas para reducir los costos de capacitación.

Otra consideración de RLHF para los modelos de lenguaje es mantener un equilibrio entre la optimización de recompensas y la consistencia del lenguaje. Los patrones de recompensa son aproximaciones imperfectas de las preferencias humanas. Como la mayoría de los sistemas de aprendizaje por refuerzo, la representación de grandes modelos de lenguaje puede encontrar un atajo para maximizar la recompensa mientras se viola la coherencia sintáctica o lógica. Para evitar que esto suceda, el equipo de ingeniería de aprendizaje automático mantiene una copia del modelo de lenguaje grande original en el ciclo de aprendizaje por refuerzo. La diferencia entre la salida del modelo de lenguaje grande original y la salida del modelo de lenguaje grande entrenado por el aprendizaje por refuerzo (también conocido como divergencia KL) se integra en la señal de recompensa como un valor negativo para evitar que el modelo se desvíe demasiado de la salida original.

Cómo utiliza ChatGPT RLHF

OpenAI no ha publicado los detalles técnicos de ChatGPT. Pero se puede aprender mucho de los detalles en la publicación del blog ChatGPT e InstructGPT, que también usa RLHF.

ChatGPT utiliza el marco general de RLHF descrito anteriormente con algunas modificaciones. En la primera fase, los ingenieros realizaron un "ajuste fino supervisado" en un modelo GPT-3.5 previamente entrenado. Contrataron a un equipo de escritores humanos y les pidieron que respondieran a una serie de indicaciones. Afinan modelos de lenguaje grandes utilizando un conjunto de datos de pares de pistas y respuestas. Según se informa, OpenAI gastó mucho dinero en estos datos, que es parte de la razón por la que ChatGPT supera a otros modelos de lenguaje similarmente grandes.

En la segunda fase, OpenAI creó el modelo de recompensa siguiendo procedimientos estándar para generar múltiples respuestas a las indicaciones, que luego fueron clasificadas por anotadores humanos.

En la etapa final, el principal modelo de lenguaje grande se entrena utilizando un algoritmo de aprendizaje por refuerzo de optimización de política proximal (PPO). OpenAI no proporcionó más detalles, como si congela alguna parte del modelo o cómo garantiza que el modelo entrenado por el aprendizaje por refuerzo no se desvíe demasiado de la distribución original.

Proceso de formación de ChatGPT

Restricciones de RLHF en modelos lingüísticos

Aunque RLHF es una técnica muy efectiva, tiene algunas limitaciones. El trabajo humano siempre se convierte en el cuello de botella de las canalizaciones de aprendizaje automático. El etiquetado manual de datos es lento y costoso, por lo que el aprendizaje no supervisado ha sido un objetivo buscado durante mucho tiempo por los investigadores de aprendizaje automático.

En algunos casos, se pueden obtener etiquetas gratuitas de los usuarios de sistemas de aprendizaje automático. Esto es lo que hacen los botones de votación arriba/abajo que ve en ChatGPT y otras interfaces similares de modelos de lenguaje grande. Otra técnica es obtener datos etiquetados de foros en línea y redes sociales. Por ejemplo, muchas publicaciones de Reddit se publican como preguntas y las mejores respuestas obtienen más votos a favor. Sin embargo, dichos conjuntos de datos aún deben limpiarse y modificarse, pero hacerlo es costoso y lento, y no hay garantía de que los datos requeridos estén disponibles en una fuente en línea.

Las grandes empresas de tecnología y los laboratorios bien financiados, como OpenAI y DeepMind, pueden permitirse invertir mucho en la creación de conjuntos de datos especiales de RLHF. Pero las empresas más pequeñas tendrán que confiar en conjuntos de datos de código abierto y técnicas de web scraping.

RLHF tampoco es una solución perfecta. La retroalimentación humana puede ayudar a que los modelos de lenguaje extenso eviten resultados dañinos o erróneos, pero las preferencias humanas no son explícitas y nunca será posible crear patrones de recompensa que coincidan con las preferencias y normas de todas las sociedades y estructuras sociales.

Sin embargo, RLHF proporciona un marco para alinear mejor los modelos de lenguaje grande con los humanos. Hasta ahora, se ha visto que RLHF funciona junto con modelos generales como ChatGPT, y RLHF será una técnica muy eficaz para optimizar modelos de lenguaje grandes para aplicaciones específicas.

Título original: ¿Qué es el aprendizaje por refuerzo a partir de la retroalimentación humana (RLHF)? , por Ben Dickson

Supongo que te gusta

Origin blog.csdn.net/Z__7Gk/article/details/131707449
Recomendado
Clasificación