Grandes modelos de lenguaje - John Atkinson-Abutridy - E-Book

Grandes modelos de lenguaje E-Book

John Atkinson-Abutridy

0,0
19,99 €

-100%
Sammeln Sie Punkte in unserem Gutscheinprogramm und kaufen Sie E-Books und Hörbücher mit bis zu 100% Rabatt.
Mehr erfahren.
Beschreibung

¡Prepárese para sumergirse en el mundo fascinante y vanguardista de la inteligencia artificial! En este libro descubrirá el nexo en común que impulsa algunas de las aplicaciones recientes más revolucionarias de la inteligencia artificial (IA): desde sistemas conversacionales como ChatGPT o BARD, hasta la traducción automática, generación de resúmenes, respuesta a preguntas y mucho más. En el centro de estas innovadoras aplicaciones, se encuentra una disciplina poderosa y en creciente evolución, el procesamiento del lenguaje natural (PLN o NLP, por sus siglas en inglés). Durante más de 60 años, la investigación de esta ciencia ha estado enfocada en permitir que las máquinas comprendan y generen lenguaje humano de manera eficiente. Los secretos detrás de estos avances tecnológicos residen en los grandes modelos de lenguaje (LLM), cuyo poder radica en su capacidad de capturar patrones complejos y aprender representaciones contextuales del lenguaje. Imagine cómo estos modelos pueden poner atención en los detalles más relevantes de un texto, aprendiendo automáticamente relaciones complejas para brindar respuestas y resultados más precisos. ¿Cómo funcionan estos LLM? ¿Cuáles son los modelos disponibles y cómo se evalúan? Este libro le ayudará a responder estas y muchas otras preguntas. Con una introducción técnica pero accesible: •Explorará el fascinante mundo de los LLM, desde sus fundamentos hasta las aplicaciones más poderosas. •Aprenderá a construir sus propias aplicaciones simples con algunos de los LLM. Grandes modelos de lenguaje está diseñado para guiarle paso a paso en este emocionante viaje. Con 6 capítulos que combinan teoría y práctica, junto con ejercicios en Python en la plataforma Colab, dominará los secretos de los LLM y su aplicación en el procesamiento del lenguaje natural. Desde las redes neuronales profundas y los mecanismos de atención, hasta los LLM más relevantes tales como BERT, GPT-4, LLaMA, Palm-2 y Falcon, será testigo de los logros más importantes en NLP. No solo conocerá los benchmarks utilizados para evaluar las capacidades de estos modelos, sino que también adquirirá la habilidad para crear sus propias aplicaciones de NLP. No espere más para iniciar esta lectura. Gracias a ella entenderá los paradigmas, los métodos computacionales y los modelos para desarrollar aplicaciones que procesarán o generarán lenguaje natural para diferentes propósitos y nichos de aplicación.

Sie lesen das E-Book in den Legimi-Apps auf:

Android
iOS
von Legimi
zertifizierten E-Readern

Seitenzahl: 323

Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



Grandes modelos de lenguaje

Conceptos, técnicas y aplicaciones

John Atkinson-Abutridy

Grandes modelos de lenguaje

Conceptos, técnicas y aplicaciones

John Atkinson-Abutridy

 

 

Grandes modelos de lenguaje. Conceptos, técnicas y aplicaciones

Primera edición, 2023

© 2023 John Atkinson-Abutridy

© 2023 MARCOMBO, S. L.www.marcombo.com

Diseño de cubierta: ENEDENÚ DISEÑO GRÁFICOMaquetación: Reverté-AguilarCorrección: Mónica MuñozDirectora de producción: M.a Rosa Castillo

Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta obra solo puede ser realizada con la autorización de sus titulares, salvo excepción prevista por la ley. Diríjase a Cedro (Centro Español de Derechos Reprográficos, www.cedro.org) si necesita fotocopiar o escanear algún fragmento de esta obra

ISBN del libro en papel: 978-84-267-3679-6ISBN del libro electrónico: 978-84-267-3728-1Producción del ePub: booqlab

A mi esposa Ivana, mi inspiración, motivación y apoyo incondicional

Prólogo

El lenguaje es la herramienta más poderosa que tenemos para comunicarnos, expresar nuestras ideas y conectar con los demás. Desde los primeros días de la humanidad, el lenguaje ha evolucionado para adaptarse a las necesidades y complejidades de nuestra sociedad y ha sido objeto de estudio e investigación por parte de expertos en todo el mundo en el área de la inteligencia artificial (IA).

En este aspecto, la IA ha avanzado a pasos agigantados en los últimos años, y los grandes modelos de lenguaje son un ejemplo perfecto de ello. Estos han emergido como una tecnología fascinante y prometedora que puede ayudarnos a comprender y mejorar nuestra capacidad para producir y entender el lenguaje. En estos modelos, se utilizan técnicas avanzadas de aprendizaje automático y procesamiento del lenguaje natural para generar texto coherente y relevante, incluso en situaciones en las que la entrada de datos es incompleta o ambigua.

Este libro sobre grandes modelos de lenguaje fue pensado como una guía exhaustiva y práctica en la que se exploran los fundamentos teóricos y aplicaciones prácticas de esta tecnología innovadora. Desde la comprensión de los algoritmos de aprendizaje automático hasta la implementación de modelos de lenguaje en diferentes contextos, este libro es una herramienta esencial para estudiantes, investigadores y profesionales interesados en el procesamiento del lenguaje natural.

Al leer este libro, los lectores obtendrán una comprensión profunda de cómo funcionan los modelos de lenguaje generativos, así como las últimas tendencias y avances en esta área en constante evolución. Además, este libro ofrece varios ejemplos y casos de uso reales que demuestran el valor práctico de los grandes modelos de lenguaje en la vida diaria y en una amplia variedad de sectores.

Este libro, Grandes modelos de lenguaje: conceptos, técnicas y aplicaciones, es una guía completa para aquellos interesados en conocer en profundidad los grandes modelos de lenguaje. Los lectores encontrarán una explicación detallada de los conceptos clave detrás de estos modelos, así como una descripción de las tecnologías utilizadas en su desarrollo y sus aplicaciones.

El libro está dirigido tanto a profesionales de la industria como a estudiantes e investigadores interesados en la IA y el procesamiento del lenguaje natural. Así, los lectores encontrarán una explicación clara y accesible de los modelos de lenguaje, así como ejemplos prácticos y casos de estudio para ayudarlos a entender mejor su potencial y cómo pueden ser aplicados en situaciones reales.

John Atkinson-AbutridySantiago (Chile)

Acerca de este libro

Este libro es una introducción a la ciencia y aplicaciones a una de las áreas más fascinantes y de mayor crecimiento en la IA, el procesamiento de lenguaje natural (NLP) y, en particular, a los grandes modelos de lenguaje o LLM (Large Language Models), que permite que los ordenadores puedan realizar varias tareas y con diversas aplicaciones, tales como traducción automática, generación de resúmenes, contestación de preguntas, sistemas conversacionales o categorización de documentos, entre otras. Con este propósito, en el libro se introducen los principales conceptos, las técnicas subyacentes basadas en aprendizaje profundo (Deep learning), modelos grandes de lenguaje de última generación, aplicaciones prácticas y consideraciones y perspectivas futuras.

Este libro permite descubrir cómo el NLP está cambiando la forma en que interactuamos con las máquinas y cómo estas pueden comprendernos y responder a nuestras preguntas o instrucciones de manera más precisa que nunca.

Audiencia

El público objetivo de este libro es amplio y puede abarcar tanto a profesionales del mundo industrial como del mundo académico:

•Profesionales de la IA y científicos de datos: aquellos que trabajan en el campo de la IA, específicamente en el NLP y el aprendizaje profundo, pueden beneficiarse de los fundamentos técnicos, algoritmos y técnicas utilizadas en los LLM.

•Estudiantes e investigadores académicos: los alumnos de posgrado y los investigadores que se especializan en el área de la IA y NLP pueden encontrar en este libro una base útil y sólida en los conceptos y las técnicas utilizadas en los LLM.

•Profesionales en campos relacionados: personas que trabajan en áreas relacionadas con el NLP, tales como la traducción automática, la generación de contenido, la atención al cliente basada en chatbots o la categorización de documentos, entre otros, podrían beneficiarse al entender cómo los LLM pueden mejorar y optimizar sus tareas laborales.

Aunque este libro es introductorio, lo ayudaría si usted está familiarizado con los siguientes aspectos:

• Técnicas básicas de aprendizaje automático (machine learning) y/o aprendizaje profundo

• Conocimiento del lenguaje de programación Python

Organización de este libro

El libro está organizado en seis capítulos, donde se revisan los conceptos principales, técnicas y enfoques que subyacen en los LLM. Uno de estos capítulos contiene ejercicios prácticos en Python para diferentes tareas de NLP en las que se usan modelos de lenguaje y conceptos estudiados en los capítulos previos. Además, el libro incluye una extensa bibliografía que el lector puede utilizar para profundizar en los conceptos y técnicas descritos en el libro.

Por otro lado, para una mayor familiaridad del lector y búsqueda de bibliografía complementaria, a lo largo del libro, la terminología básica también se utiliza con su equivalente en inglés (i. e., codificadores y encoders) y, en algunos casos, el término directo en inglés original (i. e., transformers).

Los seis capítulos están basados en el contenido expuesto a continuación.

Capítulo 1. Introducción

Con este capítulo, se introduce al estado actual de la IA, los modelos generativos y los modelos de lenguaje, la necesidad y explosión de los grandes modelos de lenguaje, sus aplicaciones y su futuro.

Capítulo 2. Fundamentos

En este capítulo, se introducen los conceptos básicos de NLP, aprendizaje de representaciones, embeddings, redes neuronales simples y de secuencia para tareas de NLP, modelos de encoders-decoders, redes adversarias generativas, modelos de atención y Transformers.

Capítulo 3. Grandes modelos de lenguaje

En este capítulo, se describen varios modelos grandes de lenguaje populares (i. e., BERT, GPT, LAMDA, PaLM, etc.), sus enfoques y arquitecturas, los enfoques utilizados para preentrenamiento y fine-tuning, los grandes datasets utilizados para entrenamiento y con varios ejemplos.

Capítulo 4. Evaluación de modelos

En este capítulo, se describen las principales métricas utilizadas para evaluar grandes modelos de lenguaje en términos de su eficiencia y efectividad, los datasets estándares para la realización de benchmark, como también métricas recientes de evaluación de aspectos regulatorios y seguridad.

Capítulo 5. Aplicaciones

En este capítulo, se detallan varios ejemplos de aplicaciones utilizando varios de los modelos de lenguaje revisados, para tareas de NLP tales como generación de respuestas a preguntas, búsqueda semántica, categorización de documentos, generación de resúmenes, diseño de prompts, etc.

Capítulo 6. Consideraciones y perspectivas

En este capítulo, se sintetizan los principales aspectos en relación con la aplicación de los grandes modelos de lenguaje tales como consideraciones éticas, riesgos, habilidades emergentes e impredecibilidad, complejidad, alineación humana, aspectos regulatorios y beneficios y limitaciones.

Ejercicios prácticos

El libro es una combinación de aspectos teóricos con aplicaciones prácticas. Para estas últimas, en el capítulo 6, se incluyen varios ejercicios en los que se muestran ejemplos y aplicaciones sencillas prácticas para diversas tareas de NLP y usando varios de los modelos de lenguaje estudiados.

Los ejercicios están escritos en Python y desarrollados en el ambiente de desarrollo Colab1 de Google. Todos los programas fuentes y los datos de prueba utilizados en este libro están disponibles para ser bajados desde www.marcombo.info con el código LENGUAJE23, o pueden solicitarse directamente al autor, al correo: [email protected].

Note que, para algunos ejercicios, usted deberá disponer de claves para acceder a las application programming interfaces (API) correspondientes a algunos modelos (i. e., GPT-3) directamente desde el proveedor; por ejemplo, la clave API para acceder a los modelos GPT-3 o GPT-4 de OpenAI se puede obtener desde https://platform.openai.com/account/api-keys. Por otro lado, la clave para la API de algunos servicios de Google se puede encontrar en: https://developers.google.com/webmaster-tools/search-consoleapi/. Una vez que obtenga alguna API key, deberá insertarla en los programas correspondientes donde se indique “Insertar clave API acá”.

1https://colab.research.google.com/.

Sobre el autor

John Atkinson-Abutridy posee un PhD en Inteligencia Artificial de la Universidad de Edimburgo (Escocia, Reino Unido). Él es actualmente profesor titular de la Facultad de Ingeniería y Ciencias de la Universidad Adolfo Ibáñez (Santiago, Chile) y ha sido profesor full-time en varias otras universidades chilenas en Valparaíso y Concepción (Concepción), como también profesor e investigador invitado en varias universidades y centros europeos (i. e., Universidad de Cambridge), norteamericanos (i. e., MIT) y latinoamericanos. Sus principales áreas de investigación incluyen NLP, analítica textual, inteligencia artificial y computación bioinspirada, donde ha publicado casi cien artículos científicos y dos libros. Por más de veinticinco años, ha dirigido varios proyectos científicos y tecnológicos a nivel nacional e internacional y ha sido consultor de empresas y fundador de AI-Empowered.com. En el año 2010, recibió la distinción Senior Member Award otorgada por la Association for Computing Machinery (ACM) en Estados Unidos, por sus aportes internacionales a la informática. Entre sus logros destacados, el doctor Atkinson desarrolló el primer modelo de diálogo en lenguaje natural alimentado con datos de la web en el año 2005, un precursor del sistema actual ChatGPT. En el año 2023, publicó la segunda versión de su libro (español e inglés) Text Analytics: An Introduction to the Science and Applications of Unstructured Information Analysis (Taylor & Francis, Estados Unidos), el cual ha sido catalogado como el mejor en la categoría text mining por la organización internacional Book Authorithy.

Tabla de contenido

Índice de figuras

Índice de tablas

CAPÍTULO 1

1.1. Inteligencia artificial generativa

1.1.1. Funcionamiento de la IA generativa

1.1.2. Focos de la IA generativa

1.1.3. Aplicaciones

1.2. Modelos de lenguaje generativos

1.3. Conclusiones

CAPÍTULO 2

2.1. Introducción

2.2. Modelos de lenguaje autorregresivos

2.3. Modelos de lenguaje estadísticos

2.4. Modelos de lenguaje neuronales

2.4.1. Modelos de lenguaje preentrenados

2.5. Grandes modelos de lenguaje

2.6. Modelos de embeddings de palabras

2.7. Redes neuronales recurrentes

2.7.1. Redes neuronales recurrentes simples

2.7.2. Redes de memoria a corto-largo plazo

2.8. Autoencoders

2.8.1. Cuello de botella de la información

2.8.2. Variables latentes

2.8.3. Arquitectura de un Autoencoder

2.8.4. Tipos de Autoencoders

2.9. Redes adversarias generativas

2.10. Modelos de atención

2.10.1. Problema del encoder-decoder

2.10.2. Atención en modelos de secuencia

2.11. Transformers

2.11.1. Capa del encoder

2.11.2. Codificación posicional

2.11.3. Conexiones residuales

2.11.4. Capa del decoder

2.11.5. Capa lineal y SoftMax

2.11.6. Entrenamiento

2.11.7. Inferencia

2.11.8. Función de pérdida

2.12. Conclusiones

CAPÍTULO 3

3.1. Introducción

3.1.1. Habilidades emergentes

3.1.2. Técnicas de mejoramiento de capacidades

3.1.3. Corpus comunes

3.1.4. Tipos de entrenamiento

3.1.5. Tipos de aprendizaje

3.1.6. Tipos de tokenización

3.2. BERT

3.2.1. Funcionamiento

3.2.2. Arquitectura

3.2.3. Entrada del modelo

3.2.4. Salida del modelo

3.2.5. Modelos preentrenados basados en BERT

3.3. GPT

3.3.1. El modelo GPT y GPT-2

3.3.2. El modelo GPT-3

3.3.3. El modelo GPT-4

3.3.4. Reinforcement Learning from Human Feedback

3.4. PaLM

3.4.1. Vocabulario

3.4.2. Entrenamiento

3.4.3. PaLM-2

3.5. LLaMA

3.5.1. Datos de preentrenamiento

3.5.2. Arquitectura

3.6. LaMDA

3.6.1. Objetivos y métricas

3.6.2. Preentrenamiento de LaMDA

3.7. MEGATRON

3.7.1. Datos de entrenamiento

3.8. Otros LLM

3.9. Conclusiones

CAPÍTULO 4

4.1. Introducción

4.2. Tareas de evaluación

4.2.1. Tareas básicas de evaluación

4.2.2. Tareas avanzadas de evaluación

4.2.3. Tareas de cumplimiento de regulaciones

4.3. Métricas y puntos de referencia

4.4.Datasets de Benchmark

4.4.1. SQuAD (Stanford Question Answering Dataset)

4.4.2. GLUE (General Language Understanding Evaluation)

4.4.3. SNLI (Stanford Natural Language Inference)

4.4.4. ARC (Abstraction and Reasoning Corpus)

4.5. Evaluación de LLM

4.6. Conclusiones

CAPÍTULO 5

5.1. Introducción

5.2. Clasificación de sentimientos

5.3. Búsqueda semántica en textos

5.4. Razonamiento con agentes de lenguaje

5.5. Inferencia causal

5.6. Acceso a bases de datos en lenguaje natural

5.7. Cargando y preguntando por datos propios

5.8. Realizando ajuste fino de un modelo con datos propios

5.9. Diseño y optimización de prompts

5.10. Sistema conversacional ChatGPT

5.11. Sistema conversacional BARD

5.12. Conclusiones

CAPÍTULO 6

6.1. Introducción

6.2. Habilidades emergentes

6.3. LLM en producción

6.4. Alineación entre humanos y LLM

6.5. Ética

6.6. Aspectos regulatorios

6.7. Complejidad

6.8. Riesgos

6.9. Limitaciones

6.10. Conclusiones

Índice onomástico

Bibliografía

Índice de figuras

Figura 1.1: Arquitectura general de una GAN

Figura 1.2: Modelos discriminativos (izquierda) vs. generativos (derecha)

Figura 1.3: Rol de un gran modelo de lenguaje

Figura 2.1: Lista de palabras más probables a continuación de una frase

Figura 2.2: Un modelo de lenguaje simple para predecir la siguiente palabra

Figura 2.3: Entrenamiento de un LM a partir de grandes corpus o datasets

Figura 2.4: Representación vectorial en bajas dimensiones (word embeddings)

Figura 2.5: Arquitectura de un modelo Word2Vec del tipo CBOW

Figura 2.6: Una RNN con ciclos

Figura 2.7: Una RNN para traducir palabras de un texto en español

Figura 2.8: Una RNN desenrollada

Figura 2.9: Funcionamiento de una celda RNN

Figura 2.10: Transferencia de la entrada a cada celda de la RNN

Figura 2.11: Un módulo de una LSTM con cuatro capas de interacción

Figura 2.12: Flujo de información en una celda de la LSTM

Figura 2.13: Una puerta de olvido (forget)

Figura 2.14: Una puerta de entrada

Figura 2.15: El flujo de la puerta de entrada a la de salida

Figura 2.16: Puerta de salida

Figura 2.17: Arquitectura de un Autoencoder

Figura 2.18: Arquitectura de un Autoencoder incompleto

Figura 2.19: Arquitectura de un Autoencoder disperso

Figura 2.20: Arquitectura de un Autoencoder por eliminación de ruido

Figura 2.21: Composición de una GAN

Figura 2.22: La componente generativa de una GAN

Figura 2.23: La componente discriminadora de una GAN

Figura 2.24: Un modelo encoder-decoder para traducción

Figura 2.25: Focos de atención en la traducción de una oración

Figura 2.26: Atención en una oración de entrada

Figura 2.27: Una arquitectura encoder-decoder con tres estados ocultos para la secuencia «¿Dónde está Wally?» (en inglés)

Figura 2.28: Un decoder que produce el primer token de salida, considerando los estados ocultos del encoder

Figura 2.29: Un decoder que genera el primer token a partir de vectores de contexto

Figura 2.30: El mecanismo de atención desde los estados ocultos hasta el vector de contexto

Figura 2.31: Modelo de atención global

Figura 2.32: Alineación de la capa oculta con la de atención para generar el vector de contexto en atención global

Figura 2.33: La operación de la atención global

Figura 2.34: Modelo de atención local

Figura 2.35: Alineación de la capa oculta con la de atención para generar el vector de contexto en atención local

Figura 2.36: Cálculo de atención local con alineación monotónica

Figura 2.37: Modelo de autoatención

Figura 2.38: Puntajes de atención para la frase «Juanito compró un libro»

Figura 2.39: Autoatención como tarea de búsqueda desde una consulta Q

Figura 2.40: Puntajes de similitud en autoatención con consulta (Q)

Figura 2.41: Visualización de atención sobre una secuencia de palabras

Figura 2.42: Atención multicabeza con n mecanismos de atención

Figura 2.43: Optimización de bloques de cálculo de atención para atención simple (izquierda) y atención multihead (derecha)

Figura 2.44: Visión general de un transformer

Figura 2.45: Estructura típica de una arquitectura de transformer

Figura 2.46: Conexión entre encoder y decoder

Figura 2.47: Flujo de información en un bloque del encoder

Figura 2.48: Matriz de PE para la secuencia «Juanito compró un libro»

Figura 2.49: Matriz de PE calculada para la secuencia «Juanito compró un libro»

Figura 2.50: Posiciones en una secuencia con curvas de diferentes longitudes de onda

Figura 2.51: Conexiones residuales en un encoder

Figura 2.52: Operación de suma y normalización residual

Figura 2.53: Atención multicabeza del decoder

Figura 2.54: Cálculo de puntajes de atención enmascarados

Figura 2.55: Entrenamiento de un transformer

Figura 2.56: Inferencia en un transformer

Figura 2.57: Probabilidades para tokens generados (model output) versus resultados correctos (desired output)

Figura 3.1: Arquitectura de BERT basada en encoder

Figura 3.2: Ajuste de BERT para tareas de clasificación binaria

Figura 3.3: BERT ajustado para tareas de predicción de máscaras

Figura 3.4: BERT ajustado para predicción de oraciones (NSP)

Figura 3.5: Arquitectura de transformer de solo decoder

Figura 3.6: Atención en transformer de solo decoder

Figura 3.7: Autoatención enmascarada en GPT-2

Figura 3.8: Ejemplo de matriz de atención enmascarada en GPT-2

Figura 3.9: Bloques de decoders con atención enmascarada para «Juanito compró un libro»

Figura 3.10: Arquitectura de GPT-2

Figura 3.11: Modelo de preferencias para entrenar un modelo de referencia

Figura 3.12: Proceso de ajuste-fino supervisado (SFT)

Figura 3.13: Aprendizaje por refuerzo para un LLM que actúa como agente

Figura 3.14: Mecanismo de atención multi-query

Figura 3.15: Transformers serializado (izquierda) versus paralelo (derecha) en PaLM

Figura 3.16: Evaluación de respuestas candidatas según seguridad e interés

Figura 3.17: Paralelismo de modelos en Megatron

Figura 4.1: Evaluación de varios proveedores de modelos para 12 requerimientos de la UE en escala desde 0 (peor) a 4 (mejor). Fuente: HAI

Figura 4.2: Comparación de los tamaños de los LLM en billones de parámetros

Figura 5.1: Prompts de cero o pocos intentos

Figura 5.2: Encadenamiento de prompts

Índice de tablas

Tabla 2.1: Combinación de atención para determinar el referente de «él»

Tabla 3.1: Hiperparámetros de la arquitectura de GPT-2 para cuatro tamaños

Tabla 3.2: Diferentes tamaños de PaLM

Tabla 3.3: Diferencias entre PaLM y PaLM-2

Tabla 3.4: Hiperparámetros de modelos preentrenados LLaMA.

Tabla 3.5: Hiperparámetros de las diferentes configuraciones de LLaMA

Tabla 3.6: Hiperparámetros de diferentes configuraciones de LaMDA

Tabla 3.7: Hiperparámetros del modelo Megatron

Tabla 4.1: Regulaciones y compliance propuestas por la Unión Europea

Tabla 4.2: Comparación de LLM según capacidades de language inference sobre datasets A1, A2 y A3

Tabla 4.3: Evaluación de MNLI para los LLM de diferente complejidad

Tabla 4.4: Resultados de los modelos en tareas de comprensión de lectura

Tabla 4.5: Rendimiento de diferentes LLM en tareas ARC y QA

Tabla 4.6: Evaluación de modelos sobre GLUE y SQuAD

Tabla 4.7: Evaluación de sesgos de LLaMA vs. GPT-3

Tabla 4.8: Resultados de evaluación de exámenes con GPT-3 y GPT-4

Tabla 5.1 Comparación entre ChatGPT y BARD

CAPÍTULO 1

INTRODUCCIÓN

1.1. Inteligencia artificial generativa

Al inicio de la investigación en inteligencia artificial (IA), los científicos se enfocaron en desarrollar sistemas basados en reglas que pudieran razonar y en tomar decisiones basadas en reglas predefinidas. Sin embargo, estos sistemas eran tediosos de construir, pues necesitaban a expertos para escribir las reglas y estaban limitados por el hecho de que solo podían operar dentro de las restricciones de las reglas que estaban explícitamente programadas en ellos.

A medida que las tecnologías de IA avanzaron, se comenzó a explorar nuevos enfoques, tales como el aprendizaje automático (Machine Learning), desde donde surgieron varias técnicas tales como las redes neuronales artificiales (Artificial Neural Networks), que permitían a los ordenadores aprender por sí mismos a partir de grandes cantidades de datos de entrenamiento previamente etiquetados (Foster, 2019). Un problema con este enfoque radica en que los sistemas dependen de datos anotados manualmente, por lo que se requiere de muchas personas que asignen etiquetas a imágenes, textos y sonidos para enseñar a los sistemas de IA lo que deben buscar o escuchar.

Luego surgió la IA generativa, que no requiere de datos etiquetados. Esto es posible gracias a que los sistemas de IA generativa aprenden por sí mismos consumiendo grandes cantidades de datos (Park y otros, 2023) y aprendiendo las relaciones dentro de dichos datos, al igual que lo hace un animal en la naturaleza (Marcus, 2020).

En la IA generativa, se utilizan modelos de aprendizaje automático profundo para producir nuevo contenido basado en la entrada del usuario (i. e., descripción en lenguaje natural). El contenido nuevo (aka «sintético») que se puede generar incluye textos escritos, imágenes, vídeo, audio, música y código computacional (Alto, 2023).

Por ejemplo, cuando un humano escribe una pregunta o declaración en un sistema de diálogo o chatbot (Adiwardana y otros, 2020), como ChatGPT, este genera una respuesta escrita breve pero razonablemente detallada. Un usuario también puede ingresar preguntas de seguimiento y participar en una conversación continua con dicho chatbot, que puede recordar detalles anteriores en la conversación.

La IA generativa ha atraído recientemente la atención porque se están acelerando los principales avances en el área; por ejemplo, ChatGPT2, de la empresa OpenAI, puede generar texto gramaticalmente correcto que parece haber sido escrito por humanos, y su herramienta DALL-E3 produce imágenes realistas basadas en instrucciones en lenguaje natural. Otras empresas tales como Google, y Facebook también, han desarrollado modelos de IA generativa que pueden producir texto, imágenes o programas computacionales de apariencia auténtica.

1.1.1. Funcionamiento de la IA generativa

La IA generativa genera contenido nuevo basado en un conjunto de datos (aka dataset) de entrenamiento. Los investigadores proporcionan grandes cantidades de datos (i. e., texto, imágenes, música u otro contenido) en un sistema de aprendizaje profundo neuronal llamado GAN (Generative Adversarial Networks) (Bengio, 2014). En esta red neuronal supervisada, se filtran los datos y se utiliza un sistema en el que se premian los aciertos/avances y se penalizan los errores/fracasos. Con el tiempo y con la supervisión humana, este tipo de sistemas aprende a identificar y comprender relaciones complejas que subyacen en los datos de entrenamiento (Babcock y Bali, 2021).

Una GAN consta de dos redes neuronales: una generadora, en la que se crean nuevos datos, y una discriminadora, en la que se evalúan los datos. La generadora y la discriminadora trabajan juntas, y la generadora mejora sus resultados en función de la retroalimentación que recibe de la discriminadora, hasta que genera contenido que no se puede distinguir de los datos reales (véase Figura 1.1).

Figura 1.1: Arquitectura general de una GAN

Por ejemplo, el sistema Codex utilizado para ChatGPT de la empresa OpenAI permite traducir descripciones en lenguaje natural a código computacional. Este se alimenta de más de setecientos gigabytes de datos recopilados desde la web y otras fuentes tales como contenido de libros, artículos de revistas, sitios web, manuales técnicos, correos electrónicos, letras de canciones, obras de teatro, guiones y otras fuentes disponibles públicamente.

Informalmente, los modelos generativos pueden generar instancias de datos nuevas, mientras que los modelos discriminativos discriminan a los diferentes tipos de instancias de datos; por ejemplo, un modelo generativo puede generar nuevas fotos de animales que parecen animales reales, mientras que un modelo discriminativo podría distinguir un perro de un gato.

Formalmente, dado un conjunto de instancias de datos X y un conjunto de etiquetas Y:

- Un modelo generativo captura la probabilidad conjunta p(X, Y) o solo p(X), si no hay etiquetas.

- Un modelo discriminativo captura la probabilidad condicional p(Y | X).

Un modelo generativo incluye la distribución de los datos en sí y determina qué tan probable es un ejemplo determinado; por ejemplo, los modelos en los que se predice la siguiente palabra en una secuencia usualmente son modelos generativos (e. g., mucho más simples que las GAN), pues pueden asignar una probabilidad a una secuencia de palabras (Kuhn y Johnson, 2019). Por otro lado, un modelo discriminativo ignora la posibilidad de que un ejemplo o instancia determinada sea probable y solo se estima la probabilidad de que una etiqueta se asigne a dicha instancia.

Note que, por ejemplo, en un clasificador discriminativo tal como un árbol de decisión, se puede etiquetar una instancia sin asignar una probabilidad a dicha etiqueta. Este tipo de clasificador aún sería un modelo porque la distribución de todas las etiquetas predichas modelaría la distribución real de las etiquetas en los datos. De igual forma, un modelo generativo puede modelar una distribución mediante la producción de datos convincentes y falsos que parezcan extraídos de esa distribución.

Debido a lo anterior, la tarea de modelamiento de un enfoque generativo es mucho más difícil que uno discriminativo. Un modelo generativo para imágenes puede capturar correlaciones como elementos que parecen barcos; probablemente aparezcan cerca de elementos que parecen agua y que, posiblemente, los ojos no aparezcan en la frente. Por otro lado, un modelo discriminativo puede aprender la diferencia entre un velero o no velero con solo buscar algunos patrones narrativos, de ahí que este puede ignorar muchas de las correlaciones que debe tener el modelo generativo.

Los modelos discriminativos intentan trazar límites en el espacio de datos, mientras que los modelos generativos intentan modelar la forma en que se colocan los datos en el espacio. En la Figura 1.2, se muestra un ejemplo general de un modelo discriminativo y otro generativo para una tarea de reconocimiento de dígitos escritos a mano:

Figura 1.2: Modelos discriminativos (izquierda) vs. generativos (derecha)

El modelo discriminativo intenta distinguir entre 0 y 193 dígitos manuscritos mediante una línea en el espacio de datos. Si se obtiene la línea correcta, puede distinguir entre 0 y 1 sin necesidad de modelar exactamente dónde se ubican las instancias en el espacio de datos a ambos lados de la línea. Por otro lado, el modelo generativo intenta producir valores convincentes de 1 y 39 mediante la generación de dígitos que se asemejen a sus equivalentes reales en el espacio de datos. Para esto, se debe modelar la distribución en todo el espacio de datos. Así, varios modelos generativos de imágenes o textos permiten entrenar de forma efectiva estos modelos para que se parezcan a una distribución real. Una GAN es uno de varios modelos generativos (Bengio, 2014).

1.1.2. Focos de la IA generativa

La IA generativa y otros modelos de IA están impactando significativamente en el desarrollo de tecnologías de IA, y potenciando las capacidades para usuarios no técnicos. Esto incluye la creación de diferente tipo de contenido:

-Texto: muchas empresas y laboratorios están desarrollando capacidades de interacción en lenguaje natural incluidas Siri de Apple, LaMDA y Bard de Google, Cortana de Microsoft y Alexa de Amazon. Estos generan textos escritos o hablados mediante el uso de modelos de IA generativa.

-Imágenes: otras herramientas de IA generativa, como DALL-E y MiPNeRF de Google, pueden generar imágenes fotorrealistas basadas en la entrada de texto; por ejemplo, un diseñador web podría escribir las palabras «plaza española clásica» en el motor DALL-E y ver una imagen que parece increíblemente real, aunque no representa ningún lugar real.

-Música: se puede producir audio y música, incluidas composiciones completas y efectos de sonido especializados. Varias empresas, incluidas Amper Music, Aiva, Amadeus Code, Google Magenta y MuseNet, son capaces de generar música original con múltiples instrumentos que suenan realistas. Un usuario puede solicitar un género, artista o estilo, digamos jazz, Mozart, los Rolling Stones o upbeat, y escuchar la composición resultante generada por IA.

-Desarrollo de software: algunas herramientas, como CodeWhisperer de Amazon y CoPilot4 de GitHub, ya proporcionan plataformas low-code basadas en lenguaje natural para desarrolladores. Un desarrollador de software puede hablar o escribir una consulta en una plataforma y obtener líneas reales de código de software en algún lenguaje de programación. Esto permite a los desarrolladores trabajar más rápido y crear módulos reutilizables más fácilmente.

-Desarrollo de historias y juegos: los casos de uso más avanzados giran en torno al desarrollo de historias y juegos, diseños robóticos e incluso la depuración de productos o métodos operativos al hacer preguntas y explorar un tema.

1.1.3. Aplicaciones

La historia de la IA y los negocios está llena de innovación, disrupción y cambios profundos. La IA generativa promete llevar a las organizaciones por el mismo camino a través de varios casos de uso que incluyen:

- Marketing y ventas: los sistemas de IA generativa pueden producir una variedad de contenido escrito para correos electrónicos, texto e imágenes de sitios web, folletos, libros electrónicos y guías de productos, etiquetas de productos y documentos internos. Las organizaciones también pueden usar la tecnología para analizar los comentarios de los clientes, identificar riesgos y oportunidades e implementar chatbots altamente útiles y funcionales.

-Recursos humanos: los departamentos de recursos humanos pueden aprovechar la IA generativa para escribir un manual empresarial, descripciones de puestos y preguntas para entrevistas. Un chatbot brinda información y autoayuda a los empleados. Esto podría incluir la automatización de la incorporación o la provisión de opciones y consejos para elegir un seguro de salud o una estrategia de ahorro para la jubilación.

-Operaciones: los chatbots de servicio al cliente pueden ayudar a las empresas a gestionar consultas y dirigir a las personas a la información correcta, y entregárselas a un agente cuando sea beneficioso. Con la IA generativa, también se pueden identificar errores, defectos y otros problemas a través de imágenes comparativas; por ejemplo, una empresa puede usar IA generativa para crear una imagen ideal de un componente altamente técnico y, luego, capturar imágenes durante la fabricación para garantizar que cumplan con los estándares de control de calidad.

-Desarrollo de software: la tecnología generativa puede escribir código en lenguajes modernos como Python, Perl, Go, PHP y JavaScript. Los equipos de desarrollo pueden conectar estos fragmentos y bloques al software y almacenarlos en bibliotecas. Del mismo modo, la IA generativa puede autocompletar tablas de datos y producir datos sintéticos que mejoren la precisión de los modelos de aprendizaje automático. La tecnología también puede simular métodos de ciberataque.

1.2. Modelos de lenguaje generativos

Algunas aplicaciones de IA generativa destacados incluyen sistemas de generación de imágenes, como Stable Diffusion5 y DALL-E, y sistemas de diálogo en lenguaje natural, como ChatGPT y Bard, de las empresas OpenAI y Google, respectivamente.

En los sistemas de procesamiento de lenguaje natural (Natural Language Processing o NLP) (Eisenstein, 2019; Martin y Jurafsky, 2014) de estas últimas aplicaciones, se utilizan grandes modelos de lenguaje o Large Language Models (LLM) generativos, como GPT-3, GPT-4 y LaMDA (Zhao y otros, 2023). Estos permiten muestrear estadísticamente nuevos textos en función de grandes datasets de entrenamiento que se utilizaron para crearlos (Figura 1.3) (Hu y otros, 2023). Sin embargo, los primeros modelos de lenguaje generativo habían sido explorados varios años atrás para generar diálogos interactivos basados en aprendizaje evolutivo a partir de datos de la web (Atkinson, 2005).

En términos simples, un LLM es un modelo de lenguaje que consiste en una red neuronal con muchos parámetros (e. g., miles de millones de pesos o más), entrenados sobre grandes cantidades de texto sin etiquetar mediante aprendizaje autosupervisado (Ge y otros, 2023; Zhao y otros, 2023). En general, los LLM que utilizan IA generativa aprenden el mundo a partir de textos, para luego producir nuevas respuestas similares a las humanas e incluso participar en conversaciones, tal como se muestra en la Figura 1.3 (Bommasani y otros, 2021).

Figura 1.3: Rol de un gran modelo de lenguaje

La capacidad de los LLM para producir un texto coherente se convierte en un punto de inflexión en la tecnología humana (Gao y Kean, 2023). Además, estos destacan por su capacidad para capturar el significado y el contexto del texto (i. e., artículos, mensajes, documentos, etc.) para lograr que la máquina trate el texto de manera más inteligente (Wies, Levine y Shashua, 2023). Sin embargo, su poder más notable proviene de tres aspectos:

1. Un solo LLM se puede utilizar para varias tareas de NLP.

2. El rendimiento de un LLM continúa escalando a medida que se agregan más parámetros al modelo y se entrena con más datos.

3. Los LLM preentrenados son capaces de hacer buenas predicciones cuando se les entrega pocos ejemplos etiquetados.

La clave de los LLM (Gao y Kean, 2023) reside en su poder para aprender las mejores representaciones para las palabras y textos de modo de poder manipularlas posteriormente. Estas representaciones matemáticas se conocen como word embeddings y son fundamentales para diversas aplicaciones de NLP que permiten ponderar y clasificar diferentes oraciones en los textos (Martin y Jurafsky, 2014). Por otro lado, la capacidad de generación de los LLM se basa en servir como modelos neuronales predictores de la siguiente palabra desde las representaciones de embeddings previas. Su fundamentación es una técnica llamada Recognizing Textual Entailment (RTE), que permite comprender mejor las relaciones entre las palabras. Así, a medida que se agrega más datos al entrenamiento de los LLM, el sistema continúa comparando y contrastando palabras buscando relaciones de entailment (aka «implicancia»), contradicciones o neutralidad.

Por ejemplo, la premisa «un perro tiene patas» implica (entails) «las patas tienen pies», pero contradice «los perros nadan bajo el mar», mientras permanece neutral a una expresión como «todos los perros son buenos». A medida que el sistema se ejecuta a través de millones de combinaciones, este aprende cómo construir un modelo predictivo preciso y contextualmente correcto. Esto fue la base de uno de los primeros LLM llamado BERT, desarrollados por Google.

Usualmente, los LLM generan texto a partir de la salida de las palabras que con mayor probabilidad vendrán después de las anteriores, en función de los datos de entrenamiento (Baron, 2019). Estos textos incluyen una amplia variedad de contenido de Internet (i. e., Wikipedia) y otros lugares, tales como obras de ficción, teorías de conspiración, propaganda, etc.; de ahí que también los LLM pueden inventar cosas que podrían ser falsas y/o no verificables.

Debido a lo anterior, los LLM comenzaron a considerar a los humanos en el ciclo de entrenamiento y retroalimentación. En el caso de aplicaciones como ChatGPT, el modelo principal (i. e., GPT) se alimentó con más de trescientos billones de palabras. Inicialmente, entrenadores de IA humanos proporcionaron entradas para ambos lados —como un usuario y como un asistente de IA (generador o discriminador)—. Luego, los humanos revisaron textos generados por el modelo elegidos aleatoriamente, evaluaron varias completaciones del modelo y lo realimentaron para entrenar un modelo de recompensa (aka reward). El resultado es un algoritmo de aprendizaje por reforzamiento denominado Reinforcement Learning from Human Feedback (RLHF) que, con entrenamiento adicional y entradas del usuario, el modelo de lenguaje mejora con el tiempo.

El predictor de recompensas evalúa los resultados de ChatGPT y predice una puntuación numérica que representa qué tan bien se alinean esas acciones con el comportamiento deseado del sistema. Un evaluador humano verifica periódicamente las respuestas de ChatGPT y selecciona aquellas que mejor reflejan el comportamiento deseado.

A medida que pasa el tiempo, el modelo de recompensa se actualiza y refina, produciendo resultados más realistas. Sin embargo, el contenido generado por los LLM puede ser sesgado, no verificable; puede constituir una investigación original, y puede violar los derechos de autor, de ahí que los LLM no deberían usarse para tareas y en áreas temáticas con las que el editor no tiene familiaridad; de ahí que sus resultados deben revisarse rigurosamente para verificar el cumplimiento de todas las políticas aplicables.

Como consecuencia, la verdadera autonomía de los LLM depende de la confianza y la confiabilidad de las aplicaciones de IA, que pueden surgir a medida que esos modelos mejoren. Por ahora, los humanos son los amos supremos, y los resultados confiables dependen de la colaboración entre los humanos y estos modelos de IA.

Como un todo, los LLM cambian las reglas del juego para la productividad, pues pueden acceder y procesar información en tiempo real, abordar problemas complejos y hacer más en menos tiempo; por ejemplo, un grupo de teatro del Reino Unido utilizó el modelo GPT-3 para escribir una obra de teatro. El sistema generó una historia basada en descripciones de los escritores, y la historia se editó aún más antes de que la versión final de la narración estuviera lista para la obra. En otro caso, la agencia The Guardian usó el modelo GPT-3 para escribir ocho artículos diferentes, que luego se compilaron en uno.

Tipos de LLM populares

Existen varios LLM con muy buenas capacidades y alto rendimiento en varias tareas de NLP. Sin embargo, no todos los LLM son iguales. Algunos son de propósito general (i. e., GPT-3), otros son modelos ajustados (aka fine-tuning) a tareas específicas y otros poseen un tamaño muy comprimido y están limitados a unas pocas capacidades, diseñados específicamente para ejecutarse en dispositivos de baja capacidad. Estos diferentes enfoques tienen grandes diferencias en fortalezas, deficiencias y requisitos:

•BERT (Bidirectional Encoder Representations from Transformers): es un LLM preentrenado que utiliza técnicas de aprendizaje profundo para generar texto en lenguaje natural. BERT utiliza un enfoque bidireccional que tiene en cuenta tanto el contexto izquierdo como el derecho de una palabra, al predecir la siguiente palabra en una secuencia. El modelo se entrena sobre grandes corpus de textos utilizando un enfoque de aprendizaje autosupervisado. Durante el entrenamiento, se presenta a BERT una oración o secuencia de texto con algunas palabras enmascaradas, y el modelo debe predecir las palabras faltantes. Al hacerlo, BERT aprende a representar las relaciones contextuales entre las palabras en una oración y se puede ajustar para tareas específicas de NLP, tales como clasificación de texto, pregunta-respuesta y traducción automática.

•GPT-3 (Generative Pretrained Transformer): es un modelo autorregresivo previamente entrenado sobre un gran corpus de texto para generar texto en lenguaje natural de alta calidad. GPT-3 está diseñado para ser flexible y puede ajustarse para una variedad de tareas de lenguaje, como la generación de resúmenes, respuesta a preguntas, etc.

•GPT-4: es un LLM multimodal de GPT-3 que puede aceptar entradas de imágenes y texto, para producir salidas de texto. GPT-4 es un modelo basado en Transformers preentrenados para predecir el siguiente token (por ejemplo, palabra) en un texto. El proceso de alineación posterior al entrenamiento produce un mejor rendimiento en las medidas de factualidad y la adherencia al comportamiento deseado.

•LaMDA: es un modelo de lenguaje para aplicaciones de diálogo basados en Transformers preentrenado para generar texto en lenguaje natural de alta calidad, similar a GPT-4. Sin embargo, LaMDA recibió entrenamiento sobre el diálogo con el objetivo de captar los matices de una conversación abierta.

•LLaMA: es un LLM más pequeño que GPT-3 y LaMDA, pero con el objetivo de tener el mismo rendimiento. Este también es un modelo de lenguaje autorregresivo basado en Transformers, pero está entrenado con más tokens, para mejorar el rendimiento con una menor cantidad de parámetros.

•BLOOM: es un LLM desarrollado por Facebook AI que ha sido entrenado utilizando aprendizaje no supervisado. BLOOM puede generar texto en lenguaje natural con alta coherencia y fluidez, y ha logrado un alto rendimiento en una amplia gama de tareas de NLP, incluyendo clasificación de texto, y respuesta a preguntas. Una de sus características clave es su capacidad para capturar estructuras lingüísticas complejas y relaciones semánticas entre palabras, lo que le permite generar texto de alta calidad que se asemeja estrechamente al lenguaje humano.

Recientemente, se han observado habilidades impredecibles de los LLM que no estaban presentes en modelos más simples (aka «habilidades emergentes»). Tales habilidades no se pueden predecir simplemente extrapolando el rendimiento de modelos más pequeños. Los ejemplos incluyen aritmética de varios pasos, realización de exámenes de nivel universitario y descodificación del Alfabeto Fonético Internacional, entre otros.

1.3. Conclusiones

La IA generativa ha revolucionado el campo de la IA, al permitir que los sistemas computacionales aprendan por sí mismos y generen contenido nuevo sin depender de reglas predefinidas o datos etiquetados. A través de modelos de aprendizaje automático profundo, como las GAN, los sistemas de IA generativa pueden crear textos escritos, imágenes, música y código computacional de apariencia auténtica. Estos avances han abierto numerosas oportunidades en diversas áreas, como el marketing, las operaciones empresariales, el desarrollo de software