Ajuste fino (aprendizaje profundo)

Técnica de aprendizaje automático

En el aprendizaje profundo , el ajuste fino es un enfoque para transferir el aprendizaje en el que los parámetros de un modelo de red neuronal entrenado previamente se entrenan con nuevos datos. [1] El ajuste fino se puede realizar en toda la red neuronal o solo en un subconjunto de sus capas , en cuyo caso las capas que no se están ajustando se "congelan" (es decir, no se modifican durante la retropropagación ). [2] Un modelo también se puede aumentar con "adaptadores" que constan de muchos menos parámetros que el modelo original y se pueden ajustar de una manera eficiente en cuanto a parámetros ajustando los pesos de los adaptadores y dejando congelados los pesos del resto del modelo. [3]

Para algunas arquitecturas, como las redes neuronales convolucionales , es común mantener congeladas las capas anteriores (las más cercanas a la capa de entrada), ya que capturan características de nivel inferior , mientras que las capas posteriores a menudo disciernen características de alto nivel que pueden estar más relacionadas con la tarea en la que se entrena el modelo. [2] [4]

Los modelos que se entrenan previamente en corpus generales y grandes suelen ajustarse reutilizando sus parámetros como punto de partida y agregando una capa específica para la tarea entrenada desde cero. [5] El ajuste fino del modelo completo también es común y, a menudo, produce mejores resultados, pero es más costoso desde el punto de vista computacional. [6]

El ajuste fino se logra normalmente a través del aprendizaje supervisado , pero también hay técnicas para ajustar un modelo utilizando una supervisión débil . [7] El ajuste fino se puede combinar con un aprendizaje de refuerzo a partir de un objetivo basado en la retroalimentación humana para producir modelos de lenguaje como ChatGPT (una versión ajustada de GPT-3 ) y Sparrow . [8] [9]

Robustez

El ajuste fino puede degradar la robustez de un modelo a los cambios de distribución . [10] [11] Una mitigación es interpolar linealmente los pesos de un modelo ajustado fino con los pesos del modelo original, lo que puede aumentar en gran medida el rendimiento fuera de la distribución mientras que conserva en gran medida el rendimiento dentro de la distribución del modelo ajustado fino. [12]

Variantes

Adaptación de bajo rango

La adaptación de bajo rango (LoRA) es una técnica basada en adaptadores para ajustar modelos de manera eficiente. La idea básica es diseñar una matriz de bajo rango que luego se agrega a la matriz original. [13] Un adaptador, en este contexto, es una colección de matrices de bajo rango que, cuando se agregan a un modelo base, produce un modelo ajustado. Permite un rendimiento que se acerca al ajuste fino del modelo completo con menos requisitos de espacio. Un modelo de lenguaje con miles de millones de parámetros se puede ajustar mediante LoRA con solo varios millones de parámetros.

El ajuste fino basado en LoRA se ha vuelto popular en la comunidad de difusión estable . [14] El soporte para LoRA se integró en la biblioteca Diffusers de Hugging Face . [15] El soporte para LoRA y técnicas similares también está disponible para una amplia gama de otros modelos a través del paquete de ajuste fino de parámetros eficientes (PEFT) de Hugging Face. [16]

Ajuste fino de la representación

El ajuste fino de la representación (ReFT, por sus siglas en inglés) es una técnica novedosa desarrollada por investigadores de la Universidad de Stanford que tiene como objetivo ajustar con precisión los modelos de lenguaje grandes (LLM, por sus siglas en inglés) modificando menos del 1 % de sus representaciones. A diferencia de los métodos tradicionales de ajuste fino con eficiencia de parámetros (PEFT, por sus siglas en inglés), que se centran principalmente en la actualización de pesos, ReFT se centra en partes específicas del modelo relevantes para la tarea que se está ajustando. Este enfoque se basa en la comprensión de que los modelos de aprendizaje profundo codifican información semántica rica en sus representaciones, lo que sugiere que modificar las representaciones podría ser una estrategia más eficaz que actualizar los pesos. [17]

Los métodos ReFT operan sobre un modelo base congelado y aprenden intervenciones específicas de la tarea sobre representaciones ocultas y entrenan intervenciones que manipulan una pequeña fracción de las representaciones del modelo para dirigir los comportamientos del modelo hacia la solución de tareas posteriores en el momento de la inferencia. Un método específico dentro de la familia ReFT es el ReFT de subespacio lineal de bajo rango (LoReFT), que interviene sobre representaciones ocultas en el subespacio lineal abarcado por una matriz de proyección de bajo rango. [17] LoReFT puede considerarse como el equivalente basado en la representación de la Adaptación de bajo rango (LoRA).

Aplicaciones

Procesamiento del lenguaje natural

El ajuste fino es común en el procesamiento del lenguaje natural (PLN), especialmente en el dominio del modelado del lenguaje . Los modelos de lenguaje grandes como la serie de modelos básicos GPT de OpenAI se pueden ajustar con datos para tareas de PNL posteriores específicas (tareas que utilizan un modelo entrenado previamente) para mejorar el rendimiento con respecto al modelo entrenado previamente sin modificar. [6]

Modelos comerciales

Los modelos de lenguaje grandes que se ofrecen comercialmente a veces se pueden ajustar si el proveedor ofrece una API de ajuste fino. A partir del 19 de junio de 2023, OpenAI y Azure OpenAI Service de Microsoft Azure ofrecen API de ajuste fino de modelos de lenguaje para un subconjunto de sus modelos, así como Google Cloud Platform para algunos de sus modelos PaLM y otros. [18] [19] [20] Actualmente, no todos los modelos comerciales [ ¿cuándo? ] admiten el ajuste fino.

Modelos de código abierto

Empresas como Meta ( familia Llama LLM ), Alibaba (familia Qwen LLM) y Mistral AI (Mixtral) han publicado en GitHub modelos de lenguaje de código abierto de gran tamaño que se pueden ajustar. Los modelos de código abierto pueden ser ventajosos para las empresas en términos de seguridad de datos, ya que pueden controlar dónde se aloja el modelo.

Véase también

Referencias

  1. ^ Quinn, Joanne (2020). Sumérjase en el aprendizaje profundo: herramientas para la participación. Thousand Oaks, California. p. 551. ISBN 978-1-5443-6137-6Archivado desde el original el 10 de enero de 2023 . Consultado el 10 de enero de 2023 .{{cite book}}: Mantenimiento de CS1: falta la ubicación del editor ( enlace )
  2. ^ ab "CS231n Redes neuronales convolucionales para reconocimiento visual". cs231n.github.io . Consultado el 9 de marzo de 2023 .
  3. ^ Liu, Haokun; Tam, Derek; Muqeeth, Mohammed; Mohta, Jay; Huang, Tenghao; Bansal, Mohit; Raffel, Colin A (2022). Koyejo, S.; Mohamed, S.; Agarwal, A.; Belgrave, D.; Cho, K.; Oh, A. (eds.). El ajuste fino de parámetros con pocos disparos es mejor y más barato que el aprendizaje en contexto (PDF) . Avances en sistemas de procesamiento de información neuronal. Vol. 35. Curran Associates, Inc. págs. 1950–1965.
  4. ^ Zeiler, Matthew D; Fergus, Rob (2013). "Visualización y comprensión de redes convolucionales". ECCV . arXiv : 1311.2901 .
  5. ^ Dodge, Jesse; Ilharco, Gabriel; Schwartz, Roy; Farhadi, Ali; Hajishirzi, Hannaneh; Smith, Noah (2020). "Ajuste fino de modelos de lenguaje preentrenados: inicializaciones de peso, órdenes de datos y detención temprana". arXiv : 2002.06305 . {{cite journal}}: Requiere citar revista |journal=( ayuda )
  6. ^ ab Dingliwal, Saket; Shenoy, Ashish; Bodapati, Sravan; Gandhe, Ankur; Gadde, Ravi Teja; Kirchhoff, Katrin (2021). "Modelo de lenguaje Prompt Tuning GPT-2 para la adaptación de dominio eficiente en parámetros de sistemas ASR". InterDiscurso . arXiv : 2112.08718 .
  7. ^ Yu, Yue; Zuo, Simiao; Jiang, Haoming; Ren, Wendi; Zhao, Tuo; Zhang, Chao (2020). "Ajuste fino de un modelo de lenguaje preentrenado con supervisión débil: un enfoque de autoentrenamiento contrastivo-regularizado". Asociación de Lingüística Computacional . arXiv : 2010.07835 .
  8. ^ "Presentación de ChatGPT". openai.com . Consultado el 9 de marzo de 2023 .
  9. ^ Glaese, Amelia; McAleese, Nat; Trębacz, Maja; Aslanides, John; Firoiu, Vlad; Ewalds, Timo; Rauh, Maribeth; Weidinger, Laura; Chadwick, Martin; Thacker, Phoebe; Campbell-Gillingham, Lucy; Uesato, Jonathan; Huang, Po-Sen; Comanescu, Ramona; Yang, Fan; See, Abigail; Dathathri, Sumanth; Greig, Rory; Chen, Charlie; Fritz, Doug; Elias, Jaume Sanchez; Green, Richard; Mokrá, Soňa; Fernando, Nicholas; Wu, Boxi; Foley, Rachel; Young, Susannah; Gabriel, Iason; Isaac, William; Mellor, John; Hassabis, Demis; Kavukcuoglu, Koray; Hendricks, Lisa Anne; Irving, Geoffrey (2022). "Mejorar la alineación de los agentes de diálogo mediante juicios humanos específicos". DeepMind . arXiv : 2209.14375 .
  10. ^ Radford, Alec; Kim, Jong Wook; Hallacy, Chris; Ramesh, Aditya; Goh, Gabriel; Agarwal, Sandhini; Sastry, Girish; Askell, Amanda; Mishkin, Pamela; Clark, Jack; Krueger, Gretchen; Sutskever, Ilya (2021). "Aprendizaje de modelos visuales transferibles a partir de la supervisión del lenguaje natural". arXiv : 2103.00020 [cs.CV].
  11. ^ Kumar, Ananya; Raghunathan, Aditi; Jones, Robbie; Ma, Tengyu; Liang, Percy (2022). "El ajuste fino puede distorsionar las características preentrenadas y generar un rendimiento inferior fuera de la distribución". ICLR . arXiv : 2202.10054 .
  12. ^ Wortsman, Mitchell; Ilharco, Gabriel; Kim, Jong Wook; Li, Mike; Kornblith, Simon; Roelofs, Rebecca; Gontijo-Lopes, Raphael; Hajishirzi, Hannaneh; Farhadi, Ali; Namkoong, Hongseok; Schmidt, Ludwig (2022). "Ajuste fino robusto de modelos de disparo cero". arXiv : 2109.01903 [cs.CV].
  13. ^ Hu, Edward J.; Shen, Yelong; Wallis, Phillip; Allen-Zhu, Zeyuan; Li, Yuanzhi; Wang, Shean; Wang, Lu; Chen, Weizhu (28 de enero de 2022). "LoRA: adaptación de bajo rango de modelos de lenguaje grandes". ICLR . arXiv : 2106.09685 .
  14. ^ Ryu, Simo (13 de febrero de 2023). "Uso de la adaptación de bajo rango para ajustar rápidamente los modelos de difusión". GitHub . Consultado el 19 de junio de 2023 .
  15. ^ Cuenca, Pedro; Paul, Sayak (26 de enero de 2023). "Uso de LoRA para un ajuste fino de difusión estable y eficiente". Hugging Face . Consultado el 19 de junio de 2023 .
  16. ^ "Ajuste fino de parámetros eficientes mediante 🤗 PEFT". huggingface.co . Consultado el 20 de junio de 2023 .
  17. ^ ab Wu, Zhengxuan; Arora, Aryaman; Wang, Zheng; Geiger, Atticus; Jurafsky, Dan; Manning, Christopher D.; Potts, Christopher (7 de abril de 2024), ReFT: Ajuste fino de la representación para modelos de lenguaje , arXiv : 2404.03592
  18. ^ "Ajuste fino". OpenAI . Consultado el 19 de junio de 2023 .
  19. ^ "Aprenda a personalizar un modelo para su aplicación". Microsoft . Consultado el 19 de junio de 2023 .
  20. ^ "Ajustar los modelos de base textual" . Consultado el 19 de junio de 2023 .
Obtenido de "https://es.wikipedia.org/w/index.php?title=Ajuste_fino_(aprendizaje_profundo)&oldid=1255690425"