Por Charles Foster

En Finetune, estamos creando soluciones de IA para abordar algunos de los problemas más desafiantes en la tecnología educativa, incluida la generación automatizada de contenido y la clasificación y recomendaciones de recursos de aprendizaje impulsadas por IA. Debido a que el tema que nuestras herramientas deben abordar abarca desde la educación primaria y secundaria hasta el desarrollo de la fuerza laboral, estamos invirtiendo fuertemente en métodos que nos permitan ampliar la amplitud y profundidad de lo que cubren nuestros modelos. Los componentes clave de este enfoque son métodos flexibles para entrenar redes neuronales especializadas en dominios donde los modelos de propósito general son insuficientes. En esta publicación del blog, me gustaría compartir un poco de nuestro viaje explorando estos métodos.

Sintonia FINA

El ajuste fino típico de los modelos neuronales del lenguaje implica optimizar simultáneamente todos sus parámetros entrenables, que pueden llegar a ser de muchos miles de millones para redes como GPT-J. En escalas como estas, tanto los procesos de ajuste fino como los de inferencia no son triviales, lo que dificulta su implementación generalizada. En nuestras propias investigaciones, algunas cuestiones clave parecieron ser las más importantes:

  • El simple hecho de ejecutar estos modelos de transformadores ya presiona contra los límites de la memoria de la GPU (VRAM), y durante el ajuste fino existe una relación directa entre la cantidad de parámetros que se optimizan y la cantidad de memoria adicional consumida.
  • Al modificar todos los parámetros de la red, se puede interrumpir el flujo de información aprendido durante el entrenamiento previo, lo que da como resultado olvidos y pérdida de capacidades de pocos disparos.
  • Ofrecer un modelo multigigabyte personalizado para cada caso de uso crearía una latencia y costos inaceptables.

Estas preocupaciones combinadas nos motivaron a explorar otros métodos de la literatura reciente para ajustar nuestros modelos neuronales del lenguaje. Afortunadamente, durante el último año, el ámbito de investigación del procesamiento del lenguaje natural ha desarrollado una serie de métodos para reducir el costo de personalizar el comportamiento de los modelos de lenguaje previamente entrenados.

Sintonización rápida

El enfoque original que seguimos se llama Prompt Tuning o Soft Prompting (Lester et al. 2021). En este método, los parámetros de la red del preentrenamiento se mantienen congelados. En su lugar, anteponemos una pequeña cantidad de vectores de incrustación que se pueden aprender (normalmente de 10 a 20) delante de los tokens de indicación de entrada y ajustamos estas incrustaciones con el objetivo habitual de modelado del lenguaje en un conjunto de datos de ajuste fino. Estas incrustaciones no representan tokens del lenguaje; podemos pensar en ellas, en cambio, como un denso almacén de contexto que la red puede condicionar (a través del mecanismo de atención ) a medida que hace predicciones sobre los tokens de la secuencia.


El ajuste de los avisos solo supone un pequeño coste de tiempo de ejecución para el modelo, ya que los avisos suaves están en el rango de kilobytes y se pueden ejecutar a través de la red en paralelo. Estas características los hacen atractivos para servir a muchos usuarios concurrentes, como han indicado las recientes implementaciones de la técnica en la narración de historias con IA . Sin embargo, la integración de avisos suaves en marcos populares como los transformadores de HuggingFace es compleja, ya que las interfaces están diseñadas en gran medida para operar en secuencias de índices de tokens en lugar de vectores densos. Además, a medida que se añade más contexto entre el aviso suave y la generación, empezamos a ver desequilibrios entre la fuerza del condicionamiento en el aviso suave y en el contexto del token. Conservar la capacidad de añadir de forma flexible cientos de tokens de contexto en tiempo de ejecución fue importante para nosotros, ya que proporciona palancas adicionales de control de grano fino en el proceso de creación de elementos. Si queremos guiar al modelo para que se centre en el contenido de una página concreta de un libro de texto, o para crear un elemento de comprensión lectora, o para proporcionar unos pocos ejemplos, la contextualización de formato largo es importante.

Adaptadores de rango bajo (LoRA)

Más tarde, pasamos a un método llamado LoRA o adaptadores de bajo rango (Hu et al. 2021). Esta técnica fue desarrollada por investigadores de Microsoft que trabajaban en modelos del tamaño de GPT-3 y se basa en enfoques de adaptadores anteriores. Si pensamos en un transformador como si refinara progresivamente sus estados latentes de token con cada capa residual, el concepto de un adaptador es agregar un pequeño delta dependiente de la entrada (inicializado a una operación nula) a esas latentes en una capa determinada. Este suave empujón puede entonces modular su comportamiento en sentido descendente, por ejemplo, enfatizando las partes de la entrada que son relevantes para la tarea.


Los adaptadores de bajo rango son un tipo de adaptador que apunta a un subespacio de bajo rango, lo que reduce la cantidad de nuevos parámetros que necesitamos entrenar (de D 2 a 2 × D × r, donde D está en los miles). Al igual que con el aviso suave, mantenemos los parámetros originales de la red congelados para preservar cualquier conocimiento que contengan del entrenamiento previo y solo ajustamos estos nuevos parámetros del adaptador. En nuestras pruebas internas, hemos visto buenos indicadores de LoRA. Además de permitirnos ajustar modelos grandes con presupuestos de hardware pequeños, los modelos con capas de adaptador intercaladas también conservan gran parte de su capacidad original de pocos disparos mientras siguen adaptándose al dominio objetivo. En particular, la integración de adaptadores de bajo rango en otros marcos es sencilla, ya que simplemente podemos intercambiar capas lineales existentes con capas lineales + adaptador según sea necesario.

Avanzando

Para dar una idea del tipo de mejoras que hemos visto en nuestras exploraciones, a continuación compartimos una pequeña selección de generaciones de modelos entrenados con diferentes enfoques de ajuste. Todos estos elementos se generaron utilizando las mismas tres indicaciones de entrada relacionadas con la prestación de atención de enfermería: la primera se centró en priorizar las necesidades de múltiples clientes y la segunda en tomar medidas en un entorno de equipo.

Item #1: A nurse is assessing a client who is scheduled for outpatient surgery. Which of the following patients would the nurse evaluate next? (A) A patient with type 1 diabetes (B) A patient with acute pancreatitis (C) A patient who requires intravenous antibiotic therapy (D) A patient with Crohn's disease Item #2: A client is admitted to the hospital with the diagnosis of congestive heart failure. The client's mother is refusing treatment. Which of the following actions should the nurse take? (A) Notify the provider of the situation. (B) Check the patient's medication list. (C) Check the client's medical chart. (D) Notify the client's doctor of the client's condition.

Item #3: A nurse is evaluating a patient on the pediatric unit. The client is scheduled for a diagnostic workup, including a chest radiograph. Which of the following patients should the nurse be planning to evaluate next? (A) A child who has pneumonia and is experiencing fever (B) A child who has a rash and is not responding to a medication (C) A child who has a fever and has a temperature >100.4 (D) A child who has a fever and a rash Item #4: A client with renal failure is in the hospital and is scheduled to undergo a renal transplant. The client has a strong belief that the transplant surgeon is incompetent. The client refuses to allow a doctor from another hospital to perform the transplant. Which of the following actions should the charge nurse take? (A) Take a statement from the client that the transplant surgeon is competent and give it to the transplant surgeon. (B) Ask the client for a signed statement to back up her assertion. (C) Contact the transplant surgeon and find out why the client refuses to allow the surgeon from another hospital to perform the transplant. (D) Inform the transplant surgeon that the client is refusing the transplant.

Item #5: A nurse is planning to assign clients to various bedside stations. Which of the following clients should the nurse assign to the bedside station closest to the nurses' station? (A) A client who has a suspected diagnosis of a pulmonary embolism and requires a computed tomography (CT) scan (B) A client who needs assistance with a bowel movement (C) A client who has an emergency indication for a chest X-ray (D) A client who requires a chest X-ray because she has a cough Item #6: An LPN is caring for a client with an indwelling urinary catheter and is asking the nurse to help her clean the catheter. Which of the following actions should the nurse take? (A) Explain to the client that she will need to provide the cleaning solution and will need to obtain the client's consent for the procedure. (B) Ask the LPN for assistance. (C) Offer to help the client clean the catheter. (D) Assure the LPN that the nurse will assist her.

Podemos observar que, si bien los mejores ítems del modelo de referencia son en gran medida fluidos y lógicamente coherentes, tienden a ser poco restringidos (como en el n.° 1) o requieren muy poco conocimiento del dominio de enfermería (como en el n.° 3). En comparación con los ítems de referencia, los ítems de los modelos de ajuste rápido y adaptador de rango bajo contienen mayor detalle en sus estímulos, enunciados y opciones. El tema es relevante para el dominio, lo que requiere conocimientos específicos en la gestión de la atención de enfermería en lugar de depender solo del conocimiento previo. Además, los ítems del modelo adaptador de rango bajo tienen una forma más consistente. Por ejemplo, los ítems se refieren consistentemente al "cliente" en lugar del "paciente", de acuerdo con el lenguaje que probablemente aparecería en las evaluaciones (compare el n.° 5 con el n.° 1 y el n.° 3). También rastrea con éxito las referencias a múltiples individuos dentro de un escenario (compare el n.° 6 con el n.° 4).

Las mejoras en la cobertura de dominios, la coherencia estilística y la coherencia lógica pueden traducirse en mejoras significativas en la utilidad de los modelos de lenguaje neuronal. Esto es solo el comienzo: a medida que la tecnología madure, se descubrirán aún más métodos para crear modelos de lenguaje natural personalizados y controlables a escala. Y a medida que se descubran esos métodos, continuaremos incorporando lo mejor de la academia, la industria y la investigación independiente a los productos de Finetune.

Nuestro más sincero agradecimiento a Nick Koprowicz, Jesse Hamer, Saad Khan y Ogden Morse por brindarnos comentarios amables y útiles en el desarrollo de esta publicación del blog.

Referencias

Hu, EJ, Shen, Y., Wallis, P., Allen-Zhu, Z., Li, Y., Wang, S., … y Chen, W. (2021). Lora: Adaptación de bajo rango de modelos lingüísticos grandes. Preimpresión de arXiv arXiv:2106.09685.

Lester, B., Al-Rfou, R. y Constant, N. (2021). El poder de la escala para un ajuste rápido y eficiente de los parámetros. Preimpresión de arXiv arXiv:2104.08691.