El Machine Learning y la inteligencia artificial - Sebastian Raschka - E-Book

El Machine Learning y la inteligencia artificial E-Book

Sebastian Raschka

0,0
25,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

Si está listo para aventurarse más allá de los conceptos introductorios e indagar en el aprendizaje automático, en el aprendizaje profundo y en la inteligencia artificial (IA), el formato de preguntas y respuestas que presenta el libro El Machine Learning y la IA le facilitará mucho las cosas. Nacido de las cuestiones que a menudo se plantea el autor, Sebastián Raschka, este libro muestra un método directo y sin rodeos para acercarle a temas avanzados, que presenta de forma rápida y accesible. Cada capítulo es breve y autónomo, y aborda una cuestión fundamental de la IA, desvelándola con explicaciones claras, diagramas y ejercicios prácticos. En esta lectura encontrará: CAPÍTULOS CONCISOS: Las preguntas clave de la IA se responden de forma sencilla y las ideas complejas se desglosan en piezas fáciles de digerir. GAMA AMPLIA DE TEMAS: Raschka cubre temas que van desde la arquitectura de las redes neuronales y la evaluación de los modelos hasta la visión informática y el procesamiento del lenguaje natural. USOS PRÁCTICOS: Conocerá técnicas para mejorar el rendimiento de los modelos, afinar modelos grandes y mucho más. También aprenderá a: "Gestionar las distintas fuentes de aleatoriedad en la formación de redes neuronales "Diferenciar entre arquitecturas de codificador y decodificador en modelos de lenguaje grandes "Reducir el sobreajuste con modificaciones de datos y modelos "Construir intervalos de confianza para clasificadores y optimizar los modelos con datos etiquetados limitados "Elegir entre paradigmas distintos de formación multi-GPU y tipos diferentes de modelos de IA generativa "Comprender las métricas de rendimiento para el procesamiento del lenguaje natural "Dar sentido a los sesgos inductivos en los transformadores de visión Si busca el recurso perfecto para mejorar su comprensión del aprendizaje automático, El Machine Learning y la IA le ayudará a avanzar fácilmente en este camino.

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

Android
iOS
von Legimi
zertifizierten E-Readern

Seitenzahl: 318

Veröffentlichungsjahr: 2024

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.



Copyright © 2024 by Sebastian Raschka. Title of English-language original: Machine Learning Q and AI: 30 Essential Questions and Answers on Machine Learning and AI, ISBN 9781718503762, published by No Starch Press Inc.

245 8th Street, San Francisco, California United States 94103.

The Spanish-Language 1st edition Copyright © 2024 by Marcombo, S.L. under license by No Starch Press Inc. All rights reserved.

Primera edición original publicada en inglés por No Starch Press Inc. con el título Machine Learning Q and AI: 30 Essential Questions and Answers on Machine Learning and AI, ISBN 9781718503762 © Sebastian Raschka, 2024.

Título de la edición en español:

El Machine Learning y la inteligencia artificial

Primera edición en español, 2025

© 2025 MARCOMBO, S.L.

www.marcombo.com

Ilustración de portada: Gina Redman

Diseño del interior: Octopod Studios

Revisión técnica: Andrea Panizza

Traducción: Miguel Ángel Torres

Corrección: Cristina Pazos

Directora de producción: M.ª 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. La presente publicación contiene la opinión del autor y tiene el objetivo de informar de forma precisa y concisa. La elaboración del contenido, aunque se ha trabajado de forma escrupulosa, no puede comportar una responsabilidad específica para el autor ni el editor de los posibles errores o imprecisiones que pudiera contener la presente obra.

ISBN del libro en papel: 978-84-267-3862-2

ISBN del libro electrónico: 978-84-267-3930-8

Producción del ePub: booqlab

A mi pareja, Liza; a mi familia y a la comunidad mundialde creadores que han motivado e influidoen mi trayectoria como autor.

Acerca del autor

Sebastián Raschka es doctor e investigador del aprendizaje automático (AA) y la inteligencia artificial (IA) con una pasión fuerte por la educación. Como educador principal de IA en Lightning AI, le entusiasma hacer que la IA y el aprendizaje profundo sean más accesibles y enseñar a la gente a utilizar estas tecnologías a escala. Antes de dedicarse plenamente a Lightning AI, Sebastián ocupó el puesto de profesor de estadística adjunto en la Universidad de Wisconsin-Madison, donde se especializó en la investigación del aprendizaje profundo y el aprendizaje automático (machine learning, en inglés). Puede obtener más información sobre sus investigaciones en el sitio web (https://Sebastiánraschka.com). A Sebastián también le encanta el software de código abierto y es un colaborador apasionado desde hace más de una década. Aparte de programar, también le encanta escribir y es autor de los libros superventas Python Machine Learning y Machine Learning with PyTorch and Scikit-Learn (ambos de Packt Publishing).

Acerca del revisor técnico

Andrea Panizza es especialista principal en IA en Baker Hughes, donde aprovecha las técnicas de IA/AA de vanguardia para acelerar el diseño de ingeniería y automatizar la recuperación y extracción de información de paquetes grandes de documentos, y utiliza la visión informática para impulsar la inspección de activos sin supervisión. Tiene un doctorado en dinámica de fluidos computacional. Antes de unirse a Baker Hughes, trabajó como investigador de CFD (Computational Fluid Dynamics, en inglés) en el CIRA (Centro Italiano de Investigación Aeroespacial).

RESUMEN DEL CONTENIDO

Preámbulo

Agradecimientos

Introducción

PARTE I:REDES NEURONALES Y APRENDIZAJE PROFUNDO

Capítulo 1. Incrustaciones, espacio latente y representaciones

Capítulo 2. Aprendizaje autosupervisado

Capítulo 3. Aprendizaje con pocos golpes

Capítulo 4. La hipótesis del boleto de lotería

Capítulo 5. Reducción del sobreajuste con datos

Capítulo 6. Reducción del sobreajuste con modificaciones del modelo

Capítulo 7. Paradigmas de la formación multi-GPU

Capítulo 8. El éxito de los transformadores

Capítulo 9. Modelos de IA generativa

Capítulo 10. Fuentes de aleatoriedad

PARTE II:VISIÓN INFORMÁTICA

Capítulo 11. Cálculo del número de parámetros

Capítulo 12. Capas convolucionales y totalmente conectadas

Capítulo 13. Conjuntos de formación grandes para transformadores de visión

PARTE III:PROCESAMIENTO DEL LENGUAJE NATURAL

Capítulo 14. La hipótesis distribucional

Capítulo 15. Aumento de datos para texto

Capítulo 16. Autoatención

Capítulo 17. Transformadores tipo codificador y decodificador

Capítulo 18. Uso y afinación de transformadores con formación previa

Capítulo 19. Evaluación de modelos de lenguaje grandes generativos

PARTE IV:PRODUCCIÓN E INSTALACIÓN

Capítulo 20. Formación sin estado y con estado

Capítulo 21. IA centrada en los datos

Capítulo 22. Aceleración de la inferencia

Capítulo 23. Cambios en la distribución de los datos

PARTE V:DESEMPEÑO PREDICTIVO Y EVALUACIÓN DE LOS MODELOS

Capítulo 24. Regresión de Poisson y ordinal

Capítulo 25. Intervalos de confianza

Capítulo 26. Intervalos de confianza y predicciones conformes

Capítulo 27. Métricas adecuadas

Capítulo 28. La k en la validación cruzada de k iteraciones

Capítulo 29. Discordancia entre los conjuntos de formación y los de prueba

Capítulo 30. Datos etiquetados limitados

Epílogo

Respuestas a los ejercicios

CONTENIDO DETALLADO

PREÁMBULO

AGRADECIMIENTOS

INTRODUCCIÓN

¿Para quién es este libro?

¿Qué conseguirá con este libro?

Cómo leer este libro

Recursos en línea

PARTE IREDES NEURONALES Y APRENDIZAJE PROFUNDO

1.INCRUSTACIONES, ESPACIO LATENTE Y REPRESENTACIONES

Incrustaciones

Espacio latente

Representación

Ejercicios

Referencias

2.APRENDIZAJE AUTOSUPERVISADO

El aprendizaje autosupervisado frente al aprendizaje por transferencia

Aprovechamiento de datos sin etiqueta

Autopredicción y aprendizaje autosupervisado contrastivo

Ejercicios

Referencias

3.APRENDIZAJE CON POCOS GOLPES

Conjuntos de datos y terminología

Ejercicios

4.LA HIPÓTESIS DEL BOLETO DE LOTERÍA

El procedimiento de formación con boleto de lotería

Implicaciones prácticas y limitaciones

Ejercicios

Referencias

5.REDUCCIÓN DEL SOBREAJUSTE CON DATOS

Métodos comunes

Recopilación de más datos

Aumento de datos

Formación previa

Otros métodos

Ejercicios

Referencias

6.REDUCCIÓN DEL SOBREAJUSTE CON MODIFICACIONES DEL MODELO

Métodos comunes

Regularización

Modelos más pequeños

Precauciones con los modelos más pequeños

Métodos de ensamble

Otros métodos

Elección de una técnica de regularización

Ejercicios

Referencias

7.PARADIGMAS DE LA FORMACIÓN MULTI-GPU

Los paradigmas de la formación

Paralelismo del modelo

Paralelismo de los datos

Paralelismo tensorial

Paralelismo de las tuberías

Paralelismo de secuencias

Recomendaciones

Ejercicios

Referencias

8.EL ÉXITO DE LOS TRANSFORMADORES

El mecanismo de atención

Formación previa con el aprendizaje autosupervisado

Número de parámetros grande

Paralelización sencilla

Ejercicios

Referencias

9.MODELOS DE IA GENERATIVA

Modelado generativo frente a modelado discriminativo

Tipos de modelos generativos profundos

Modelos basados en energía

Autocodificadores variacionales

Redes adversarias generativas

Modelos basados en el flujo

Modelos autorregresivos

Modelos de difusión

Modelos de consistencia

Recomendaciones

Ejercicios

Referencias

10.FUENTES DE ALEATORIEDAD

Inicialización del peso del modelo

Muestreo y distribución de conjuntos de datos

Algoritmos no determinísticos

Algoritmos de tiempo de ejecución

Hardware y controladores

Aleatoriedad e IA generativa

Ejercicios

Referencias

PARTE IIVISIÓN INFORMÁTICA

11.CÁLCULO DEL NÚMERO DE PARÁMETROS

Cómo contar los parámetros

Capas convolucionales

Capas totalmente conectadas

Usos prácticos

Ejercicios

12.CAPAS CONVOLUCIONALES Y TOTALMENTE CONECTADAS

Cuando los tamaños del núcleo y de la entrada son iguales

Cuando el tamaño del núcleo es 1

Recomendaciones

Ejercicios

13.CONJUNTOS DE FORMACIÓN GRANDES PARA TRANSFORMADORES DE VISIÓN

Los sesgos inductivos en las CNN

Los ViT pueden superar a las CNN

Sesgos inductivos en los ViT

Recomendaciones

Ejercicios

Referencias

PARTE IIIPROCESAMIENTO DEL LENGUAJE NATURAL

14.LA HIPÓTESIS DISTRIBUCIONAL

Word2vec, BERT y GPT

¿Se cumple la hipótesis?

Ejercicios

Referencias

15.AUMENTO DE DATOS PARA TEXTO

Reemplazo de sinónimo

Eliminación de palabras

Intercambio de posición de palabras

Barajado de oraciones

Inyección de ruido

Traducción inversa

Datos sintéticos

Recomendaciones

Ejercicios

Referencias

16.AUTOATENCIÓN

Atención en las RNN

El mecanismo de autoatención

Ejercicios

Referencias

17.TRANSFORMADORES TIPO CODIFICADOR Y DECODIFICADOR

El transformador original

Codificadores

Decodificadores

Híbridos codificadores-decodificadores

Terminología

Modelos de transformadores contemporáneos

Ejercicios

Referencias

18.USO Y AFINACIÓN DE TRANSFORMADORES CON FORMACIÓN PREVIA

Uso de transformadores para tareas de clasificación

Aprendizaje en contexto, indexación y afinación de indicaciones

Ajuste fino con parámetros eficientes

El aprendizaje por refuerzo con retroalimentación humana

Adaptación de modelos de lenguaje preformados

Ejercicios

Referencias

19.EVALUACIÓN DE MODELOS DE LENGUAJE GRANDES GENERATIVOS

Métricas de evaluación para los LLM

Perplejidad

Puntuación BLEU

Puntuación ROUGE

Puntuación BERT (BERTScore)

Métricas de sustitución

Ejercicios

Referencias

PARTE IVPRODUCCIÓN E INSTALACIÓN

20.FORMACIÓN SIN ESTADO Y CON ESTADO

(Re)formación sin estado

Formación con estado

Ejercicios

21.IA CENTRADA EN LOS DATOS

IA centrada en los datos frente a IA centrada en los modelos

Recomendaciones

Ejercicios

Referencias

22.ACELERACIÓN DE LA INFERENCIA

Paralelización

Vectorización

Mosaico de bucles

Fusión de operadores

Cuantificación

Ejercicios

Referencias

23.CAMBIOS EN LA DISTRIBUCIÓN DE LOS DATOS

Cambio de covariable

Cambio de etiqueta

Deriva del concepto

Cambio de dominio

Tipos de cambios en la distribución de los datos

Ejercicios

Referencias

PARTE VDESEMPEÑO PREDICTIVO Y EVALUACIÓN DE LOS MODELOS

24.REGRESIÓN DE POISSON Y ORDINAL

Ejercicios

25.INTERVALOS DE CONFIANZA

Definición de intervalos de confianza

Los métodos

Método 1: Intervalos de aproximación normal

Método 2: Conjuntos de formación con pruebas de arranque

Método 3: Predicciones con conjunto de pruebas de arranque

Método 4: Reformación de modelos con semillas aleatorias diferentes

Recomendaciones

Ejercicios

Referencias

26.INTERVALOS DE CONFIANZA Y PREDICCIONES CONFORMES

Intervalos de confianza e intervalos de predicción

Intervalos de predicción y predicciones conformes

Regiones, intervalos y conjuntos de predicción

Cálculo de predicciones conformes

Un ejemplo de predicción conforme

Los beneficios de las predicciones conformes

Recomendaciones

Ejercicios

Referencias

27.MÉTRICAS ADECUADAS

Los criterios

El error cuadrático medio

La pérdida de entropía cruzada

Ejercicios

28.LA K EN LA VALIDACIÓN CRUZADA DE K ITERACIONES

Compensaciones en la selección de valores para k

Determinación de los valores apropiados para k

Ejercicios

Referencias

29.DISCORDANCIA ENTRE LOS CONJUNTOS DE FORMACIÓN Y LOS DE PRUEBA

Ejercicios

30.DATOS ETIQUETADOS LIMITADOS

Mejora del rendimiento del modelo con datos etiquetados limitados

Etiquetado de más datos

Arranque de los datos

Aprendizaje por transferencia

Aprendizaje autosupervisado

Aprendizaje activo

Aprendizaje con pocos golpes

Metaprendizaje

Aprendizaje con supervisión débil

Aprendizaje semisupervisado

Autoformación

Aprendizaje multitarea

Aprendizaje multimodal

Sesgos inductivos

Recomendaciones

Ejercicios

Referencias

EPÍLOGO

RESPUESTAS A LOS EJERCICIOS

PREÁMBULO

Hay cientos de textos introductorios sobre el aprendizaje automático. Los hay en una gran variedad de estilos y enfoques; desde perspectivas teóricas para estudiantes de posgrado hasta puntos de vista empresariales para directivos. Estos textos son recursos inestimables para las personas que dan sus primeros pasos en este campo y lo seguirán siendo durante décadas.

Sin embargo, el camino hacia la pericia no consiste únicamente en el inicio. También abarca los desvíos intrincados, las subidas empinadas y los matices que no son evidentes inicialmente. Dicho de otro modo, después de estudiar lo básico, los alumnos se preguntan: «¿Y ahora qué?». Es aquí, en el reino más allá de lo básico, que este libro encuentra un propósito.

En estas páginas, Sebastián guía a los lectores a través de un espectro amplio de temas intermedios y avanzados en el aprendizaje automático aplicado que probablemente encontrarán en el camino hacia la especialización. Difícilmente podría pedirse un guía mejor que Sebastián, que es, sin exageración, el mejor profesor de aprendizaje automático actualmente en el campo. En cada página, Sebastián no solo imparte sus conocimientos amplios, sino que también comparte la pasión y la curiosidad que marcan la experiencia verdadera.

Para todos los estudiantes que han cruzado el umbral inicial y están ansiosos por profundizar: este libro es para ustedes. Terminarán este libro siendo unos practicantes del aprendizaje automático más preparados que al comenzar. Dejen que este sea el puente hacia la próxima fase de aventuras gratificantes en el aprendizaje automático.

Buena suerte.

Chris Albon

Director de aprendizaje automático en la Fundación Wikimedia

San Francisco Agosto de 2023

AGRADECIMIENTOS

Escribir un libro es una tarea enorme. Este proyecto no habría sido posible sin la ayuda de las comunidades de código abierto y aprendizaje automático que crearon colectivamente las tecnologías de las que se trata en este libro.

Quiero extender mi agradecimiento a las siguientes personas por los comentarios inmensamente útiles sobre el manuscrito:

• Andrea Panizza, por ser un revisor técnico excepcional, que proporcionó comentarios muy valiosos y perspicaces.

• Anton Reshetnikov, por sugerir un diseño más limpio para el diagrama de flujo de aprendizaje supervisado en el capítulo 30.

• Nikan Doosti, Juan M. Bello-Rivas y Ken Hoffman, por compartir varios errores tipográficos.

• Abigail Schott-Rosenfield y Jill Franklin, por ser unos editores ejemplares. Su habilidad para hacer las preguntas correctas y mejorar el lenguaje ha elevado significativamente la calidad de este libro.

INTRODUCCIÓN

Gracias a los rápidos avances en el aprendizaje profundo, hemos visto una expansión significativa del aprendizaje automático y la IA en los últimos años.

Este progreso es emocionante si esperamos que estos avances creen industrias nuevas, transformen las existentes y mejoren la calidad de vida de la gente en todo el mundo. Por otro lado, la aparición constante de técnicas nuevas puede hacer que sea desafiante y lento mantenerse al día con los últimos desarrollos. Sin embargo, mantenerse al día es esencial para los profesionales y organizaciones que utilizan estas tecnologías.

Escribí este libro como un recurso para los lectores y profesionales del aprendizaje automático que quieren avanzar en la experiencia en el campo y aprender sobre técnicas que considero útiles y significativas, pero que a menudo se pasan por alto en los libros de texto y clases tradicionales e introductorias. Espero que encuentren en este libro un recurso valioso para obtener una perspectiva nueva y descubrir otras técnicas que puedan poner en práctica en el trabajo.

¿Para quién es este libro?

Navegar por el mundo de la IA y la literatura de aprendizaje automático a menudo puede ser como caminar sobre una cuerda floja, con la mayoría de los libros posicionados en los extremos: introducciones amplias para novatos o tratados profundamente matemáticos. En este libro se ilustran y discuten desarrollos importantes en estos campos sin dejar de ser accesible y sin requerir conocimientos avanzados de matemática o codificación.

Este libro es para personas con cierta experiencia en el aprendizaje automático y que quieren aprender conceptos y técnicas nuevos. Es ideal para quienes han realizado un curso para principiantes en aprendizaje automático o aprendizaje profundo o han leído un libro introductorio equivalente sobre el tema. (A lo largo de este libro, usaré aprendizaje automático como un término general para el aprendizaje automático, el aprendizaje profundo y la IA).

¿Qué conseguirá con este libro?

En este libro se adopta un estilo único de preguntas y respuestas, donde cada capítulo breve se estructura en torno a una pregunta central relacionada con conceptos fundamentales en el aprendizaje automático, el aprendizaje profundo y la IA. Cada pregunta se sigue con una explicación, varias ilustraciones y figuras, así como ejercicios para poner a prueba su comprensión. Muchos capítulos también incluyen referencias para una lectura posterior. Estas píldoras de información son un buen punto de partida para pasar de aprendiz a experto en el aprendizaje automático.

En el libro se cubre una gama de temas amplia. Se incluyen conocimientos nuevos sobre las arquitecturas establecidas, como las redes convolucionales, que le permiten utilizar estas tecnologías de manera más efectiva. También se discuten técnicas más avanzadas, como el funcionamiento interno de los modelos de lenguaje grandes (LLM, sigla en inglés) y los transformadores de visión (ViT, sigla en inglés). Incluso los investigadores y profesionales experimentados en el aprendizaje automático encontrarán algo nuevo que añadir al arsenal de técnicas.

Si bien este libro le expondrá a conceptos e ideas nuevos, no es un libro de matemática o codificación. No necesitará resolver pruebas o ejecutar código alguno mientras lee. En otras palabras, este libro es un compañero de viaje perfecto o algo que puede leer en su silla de lectura favorita con el café o té de la mañana.

Cómo leer este libro

Cada capítulo de este libro está diseñado para ser autónomo, ofreciéndole la libertad de saltar entre temas como desee. Cuando el concepto de un capítulo se explica con más detalle en otro, he incluido referencias de capítulos que puede seguir para llenar los vacíos de comprensión.

Sin embargo, hay una secuencia estratégica en los capítulos. Por ejemplo, el primer capítulo sobre las incrustaciones prepara el escenario para discusiones posteriores sobre el aprendizaje autosupervisado y el aprendizaje con pocos golpes. Para hacer una lectura más fácil y una comprensión más completa del contenido, mi recomendación es abordar el libro de principio a fin.

Cada capítulo va acompañado de ejercicios opcionales para los lectores que quieren poner a prueba la comprensión, con una lista de respuestas al final del libro.

Además, para cualquier artículo mencionado en un capítulo o lectura posterior sobre el tema del capítulo, puede encontrar la información completa de la cita en la sección de «Referencias» de ese capítulo.

El libro está estructurado en cinco partes principales centradas en los temas más importantes del aprendizaje automático y la IA de hoy.

En la parte I: Redes neuronales y aprendizaje profundo, se cubren preguntas sobre redes neuronales profundas y aprendizaje profundo que no son específicas de un subdominio en particular. Por ejemplo, discutimos alternativas al aprendizaje supervisado y técnicas para reducir el sobreajuste, que es un problema común al utilizar modelos de aprendizaje automático para problemas del mundo real donde los datos son limitados.

En el capítulo 1: Incrustaciones, espacio latente y representaciones, se profundiza en las distinciones y similitudes entre los vectores de incrustación, los vectores latentes y las representaciones. Se aclara cómo estos conceptos ayudan a codificar la información en el contexto del aprendizaje automático.

En el capítulo 2: Aprendizaje autosupervisado, nos centramos en el aprendizaje autosupervisado, un método que permite a las redes neuronales utilizar conjuntos de datos grandes, sin etiqueta, de una manera supervisada.

En el capítulo 3: Aprendizaje con pocos golpes, se introduce el aprendizaje con pocos golpes, una técnica de aprendizaje supervisado especializada y adaptada para conjuntos pequeños de datos de formación.

En el capítulo 4: La hipótesis del boleto de lotería, se explora la idea de que las redes neuronales inicializadas aleatoriamente contienen subredes más pequeñas y eficientes.

En el capítulo 5: Reducción del sobreajuste con datos, se discuten este reto y estrategias centradas en el aumento de datos y el uso de datos sin etiquetar para reducir el sobreajuste.

En el capítulo 6: Reducción del sobreajuste con modificaciones del modelo, se extiende la conversación sobre el sobreajuste, centrándose en soluciones relacionadas con el modelo, como la regularización, la elección de modelos más sencillos y las técnicas de ensamble.

En el capítulo 7: Paradigmas de la formación multi-GPU, se explican varios paradigmas de la formación para configuraciones multi-GPU para acelerar la formación de modelos, incluyendo el paralelismo de datos y modelos.

En el capítulo 8: El éxito de los transformadores, se explora esta arquitectura popular, destacando atributos como mecanismos de atención, facilidad de paralelización y recuentos de parámetros altos.

En el capítulo 9: Modelos de IA generativa, se proporciona una visión general completa de los modelos generativos profundos, que se utilizan para producir medios de comunicación diversos, incluyendo imágenes, texto y audio. Se discuten las fortalezas y debilidades de cada tipo de modelo.

En el capítulo 10: Fuentes de aleatoriedad, se abordan varias fuentes de aleatoriedad en la formación de redes neuronales profundas que pueden conducir a resultados inconsistentes e irreproducibles durante la formación y la inferencia. Si bien la aleatoriedad puede ser accidental, también puede ser introducida intencionalmente en el diseño.

La parte II: Visión informática, se centra en temas relacionados principalmente con el aprendizaje profundo, pero específicos para la visión informática, muchos de los cuales cubren redes neuronales convolucionales y transformadores de visión.

En el capítulo 11: Cálculo del número de parámetros, se explica el procedimiento para determinar los parámetros en una red neuronal convolucional, que es útil para medir los requisitos de almacenamiento y memoria de un modelo.

En el capítulo 12: Capas convolucionales y totalmente conectadas, se ilustran las circunstancias en las que las capas convolucionales pueden reemplazar sin problemas las capas completamente conectadas, lo que puede ser útil para la optimización de hardware o simplificar las implementaciones.

En el capítulo 13: Conjuntos de formación grandes para transformadores de visión, se prueba la lógica tras los transformadores de visión que requieren conjuntos de formación más extensos en comparación con las redes neuronales convolucionales convencionales.

En la parte III: Procesamiento del lenguaje natural, se cubren temas relacionados con el trabajo con texto, muchos de los cuales están relacionados con arquitecturas de transformadores y autoatención.

En el capítulo 14: La hipótesis distribucional, se profundiza en esta hipótesis, una teoría lingüística que sugiere que las palabras que aparecen en los mismos contextos tienden a poseer significados similares, lo que tiene implicaciones útiles para la formación de los modelos de aprendizaje automático.

En el capítulo 15: Aumento de datos para texto, se destaca la importancia de esta técnica utilizada para aumentar artificialmente el tamaño de los conjuntos de datos, lo que puede ayudar a mejorar el rendimiento del modelo.

En el capítulo 16: Autoatención, se presenta la autoatención, un mecanismo que permite que cada segmento de la entrada de una red neuronal se refiera a otras partes. La autoatención es un mecanismo clave en los modelos de lenguaje grandes modernos.

En el capítulo 17: Transformadores tipo codificador y decodificador, se describen los matices de las arquitecturas de transformadores codificadores y decodificadores y se explica qué tipo de arquitectura es más útil para cada tarea de procesamiento de lenguaje.

En el capítulo 18: Uso y afinación de transformadores con formación previa, se explican los diferentes métodos para afinar los modelos de lenguaje grandes con formación previa y se discuten los puntos fuertes y débiles.

En el capítulo 19: En la evaluación de modelos de lenguaje grandes generativos, se enumeran las métricas de evaluación prominentes para modelos de lenguaje como Perplejidad, BLEU, ROUGE y puntuación BERT.

En la parte IV: Producción e instalación, se cubren cuestiones relacionadas con escenarios prácticos, como el aumento de las velocidades de inferencia y varios tipos de cambios de distribución.

En el capítulo 20: Formación sin estado y con estado, se distingue entre las metodologías de formación sin estado y con estado utilizadas en la implementación de modelos.

En el capítulo 21: IA centrada en los datos, se explora la IA centrada en datos, que prioriza el refinamiento de conjuntos de datos para mejorar el rendimiento del modelo. Este método contrasta con el método convencional centrado en el modelo, que enfatiza la mejora de las arquitecturas o métodos de los modelos.

En el capítulo 22: Aceleración de la inferencia, se presentan técnicas para mejorar la velocidad de la inferencia del modelo sin ajustar la arquitectura del modelo o comprometer la exactitud.

En el capítulo 23: Cambios en la distribución de los datos, tras su despliegue, los modelos de IA pueden enfrentarse a discrepancias entre los datos de formación y las distribuciones de datos en el mundo real, lo que se conoce como cambios en la distribución de datos. Estos cambios pueden deteriorar el rendimiento del modelo. En este capítulo se categorizan y desarrollan cambios comunes como el cambio de covariable, la deriva de concepto, el cambio de etiqueta y el de dominio.

En la parte V: Desempeño predictivo y evaluación de los modelos, se profundiza en varios aspectos de extracción de rendimiento predictivo, como cambiar la función de pérdida, configurar la validación cruzada de k iteraciones y tratar con datos etiquetados limitados.

En el capítulo 24: Regresión de Poisson y ordinal, se destacan las diferencias entre regresión de Poisson y ordinal. La regresión de Poisson es adecuada para los datos de conteo que siguen una distribución de Poisson, como el número de resfriados contraídos en un avión. En contraste, la regresión ordinal consiste en datos categóricos ordenados sin asumir categorías equidistantes, como la gravedad de la enfermedad.

En el capítulo 25: Intervalos de confianza, se profundiza en los métodos para construir intervalos de confianza para clasificadores de aprendizaje automático. Se revisa el propósito de los intervalos de confianza, se discute cómo se estiman los parámetros desconocidos de la población y se presentan técnicas como intervalos de aproximación normal, pruebas de arranque y reformación con varias semillas aleatorias.

En el capítulo 26: Intervalos de confianza y predicciones conformes, se discute la distinción entre ellos, siendo esta última una herramienta para crear intervalos de predicción que cubren los resultados reales con probabilidad específica.

En el capítulo 27: Métricas adecuadas, el enfoque está en las propiedades esenciales de una métrica adecuada en las ciencias de la matemática y la informática. Se examina si las funciones de pérdida comúnmente utilizadas en el aprendizaje automático, como el error cuadrático medio y la pérdida de entropía cruzada, satisfacen estas propiedades.

En el capítulo 28: La k en la validación cruzada de k iteraciones, se explora el papel de la k y se proporciona información sobre las ventajas y desventajas de escoger una k grande.

En el capítulo 29: Discordancia entre los conjuntos de formación y los de prueba, se trata la situación en la que un modelo obtiene resultados mejores en un conjunto de datos de prueba que en el de formación. Se ofrecen estrategias para descubrir y abordar discrepancias entre los conjuntos de datos de formación y los de prueba, presentando el concepto de validación contradictoria.

En el capítulo 30: Datos etiquetados limitados, se presentan varias técnicas para mejorar el rendimiento del modelo en situaciones en las que los datos son limitados. Se cubren el etiquetado de datos, las pruebas de arranque y paradigmas como el aprendizaje por transferencia, el aprendizaje activo y el aprendizaje multimodal.

Recursos en línea

He proporcionado materiales complementarios opcionales con ejemplos de código para ciertos capítulos para mejorar su experiencia al aprender (consulte www.marcombo.info con el código MACHINE25). Estos materiales están diseñados como extensiones prácticas e inmersiones profundas en temas cubiertos en el libro. Puede utilizarlos junto a cada capítulo o explorarlos después de la lectura para solidificar y ampliar su conocimiento.

Sin más preámbulos, entremos en materia.

PARTE I

REDES NEURONALES Y APRENDIZAJE PROFUNDO

1

INCRUSTACIONES, ESPACIO LATENTE Y REPRESENTACIONES

En el aprendizaje profundo, a menudo usamos los términos vectores de incrustación, representaciones y espacio latente. ¿Qué tienen en común estos conceptos y cómo difieren?

Si bien estos tres términos a menudo se usan indistintamente, podemos hacer distinciones sutiles entre ellos:

• Los vectores de incrustación son representaciones de datos de entrada donde elementos similares están cerca unos de otros.

• Los vectores latentes son representaciones intermedias de los datos de entrada.

• Las representaciones son versiones codificadas de la entrada original.

En las secciones siguientes se explora la relación entre incrustaciones, vectores latentes y representaciones, y cómo cada una funciona para codificar información en contextos de aprendizaje automático.

Incrustaciones

Los vectores de incrustación, o incrustaciones para abreviar, codifican datos de dimensiones relativamente altas en vectores de dimensiones relativamente bajas.

Podemos utilizar métodos de incrustación para crear un vector denso continuo (no disperso) a partir de una codificación (dispersa) de un bit alto. La codificación de un bit alto es un método utilizado para representar los datos categóricos como vectores binarios, donde cada categoría se asigna a un vector que tiene un 1 en la posición del índice de la categoría, y un 0 en todas las demás. Esto asegura que los valores categóricos se representen de un modo que ciertos algoritmos de aprendizaje automático pueden procesar. Por ejemplo, si tenemos una variable categórica color con tres categorías, rojo, verde y azul, la codificación de un bit alto representaría rojo con [1, 0, 0], verde con [0, 1, 0] y azul con [0, 0, 1]. Estas variables categóricas codificadas de un bit alto se pueden asignar a vectores de incrustación continuos utilizando la matriz de peso aprendido de una capa o módulo de incrustación.

También podemos utilizar métodos de incrustación para datos densos como imágenes. Por ejemplo, las últimas capas de una red neuronal convolucional pueden producir vectores de incrustación, como se ilustra en la figura 1-1.

Figura 1-1:Una incrustación de entrada (izquierda) y una incrustación desde una red neuronal (derecha).

Técnicamente, todas las salidas de capa intermedia de una red neuronal podrían producir vectores de incrustación. Dependiendo del objetivo de formación, la capa de salida también puede producir vectores de incrustación útiles. Para simplificar, la red neuronal convolucional en la figura 1-1 asocia la segunda a la última capa con incrustaciones.

Las incrustaciones pueden tener un número mayor o menor de dimensiones que la entrada original. Por ejemplo, usando métodos de incrustaciones para expresión extrema, podemos codificar datos en representaciones densas y continuas bidimensionales para fines de visualización y análisis de agrupación, como se ilustra en la figura 1-2.

Figura 1-2:Asignación de palabras (izquierda) e imágenes (derecha) a un espacio de atributos bidimensional.

Una propiedad fundamental de las incrustaciones es que codifican distancia o similitud. Es decir, que las incrustaciones capturan la semántica de los datos de modo que las entradas similares están cerca en el espacio de incrustaciones.

Para los lectores interesados en una explicación más formal utilizando terminología matemática, una incrustación es un mapa inyectivo y de preservación de la estructura entre un espacio de entrada X y el espacio de incrustación Y. Esto implica que las entradas similares se ubicarán en puntos cercanos dentro del espacio de incrustación, lo que puede verse como la característica de «preservación de la estructura» de la incrustación.

Espacio latente

El espacio latente se utiliza típicamente como sinónimo del espacio de incrustación, el espacio en el que se asignan los vectores de incrustación.

Elementos similares pueden aparecer cerca en el espacio latente; sin embargo, esto no es un requisito estricto. Más libremente, podemos pensar en el espacio latente como cualquier espacio de atributos que contiene atributos, a menudo versiones comprimidas de los atributos de entrada originales. Estos atributos de espacio latente pueden ser aprendidos por una red neuronal, como un autocodificador que reconstruye las imágenes de entrada, como se muestra en la figura 1-3.

Figura 1-3:Un autocodificador que reconstruye la imagen de entrada.

El cuello de botella de la figura 1-3 representa una capa intermedia pequeña de la red neuronal que codifica o asigna la imagen de entrada a una representación de dimensión inferior. Podemos pensar en el espacio objetivo de esta asignación como un espacio latente. El objetivo de formación del autocodificador es reconstruir la imagen de entrada; es decir, minimizar la distancia entre las imágenes de entrada y salida. Con el fin de optimizar el objetivo de formación, el autocodificador puede aprender a poner los atributos codificados de entradas similares (por ejemplo, imágenes de gatos) cerca entre sí en el espacio latente y crear así vectores de incrustación útiles donde entradas similares están cerca en el espacio de incrustación (latente).

Representación

Una representación es una forma codificada, típicamente intermedia de una entrada. Por ejemplo, un vector de incrustación o vector en el espacio latente es una representación de la entrada, como se discutió anteriormente. Sin embargo, las representaciones también pueden ser producidas por procedimientos más simples. Por ejemplo, los vectores codificados de un bit alto se consideran representaciones de una entrada.

La idea clave es que la representación capte algunos atributos o características esenciales de los datos originales para que sean útiles en el análisis posterior o el procesamiento.

Ejercicios

1-1. Supongamos que estamos formando una red convolucional con cinco capas convolucionales seguidas de tres capas totalmente conectadas (FC), similar a AlexNet (https://en.wikipedia.org/wiki/AlexNet), como se ilustra en la figura 1-4.

Figura 1-4:Una ilustración de AlexNet.

Podemos pensar en estas capas totalmente conectadas como dos capas ocultas y una capa de salida en un perceptrón multicapa. ¿Cuál de las capas de la red neuronal se puede utilizar para producir incrustaciones útiles? Los lectores interesados encontrarán más detalles sobre la arquitectura e implementación de AlexNet en la publicación original de Alex Krizhevsky, Ilya Sutskever y Geoffrey Hinton.

1-2. Nombre algunos tipos de representaciones de entrada que no sean incrustaciones.

Referencias

• El artículo original en que se describe la arquitectura e implementación de AlexNet: Alex Krizhevsky, Ilya Sutskever y Geoffrey Hinton, «ImageNet Classification with Deep Convolutional Neural Networks» (2012), https://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks.

2

APRENDIZAJE AUTOSUPERVISADO

¿Qué es el aprendizaje autosupervisado, cuándo es útil y cuáles son los principales métodos para implementarlo?

El aprendizaje autosupervisado es un procedimiento de preformación que permite a las redes neuronales aprovechar conjuntos grandes de datos sin etiqueta de una manera supervisada. En este capítulo se compara el aprendizaje autosupervisado con el aprendizaje por transferencia, un método relacionado para la preformación de redes neuronales, y se discuten los usos prácticos del aprendizaje autosupervisado. Por último, se describen las principales categorías de aprendizaje autosupervisado.

El aprendizaje autosupervisado frente al aprendizaje por transferencia

El aprendizaje autosupervisado está relacionado con el aprendizaje por transferencia, una técnica en la que un modelo preformado con una tarea se reutiliza como punto de partida para un modelo en una segunda tarea. Por ejemplo, supongamos que estamos interesados en formar un clasificador de imágenes para clasificar especies de aves. En el aprendizaje por transferencia, preformaríamos una red neuronal convolucional con el conjunto de datos ImageNet, un gran conjunto de datos de imágenes etiquetadas con muchas categorías diferentes, incluidos varios objetos y animales. Después de la formación previa con el conjunto de datos general ImageNET, tomaríamos ese modelo preformado y lo formaríamos con el conjunto de datos de destino más pequeño y específico que contiene las especies de aves de interés. (A menudo, solo tenemos que cambiar la capa de salida específica de la clase, pero, de lo contrario, podemos adoptar la red formada previamente tal cual).

En la figura 2-1 se ilustra el proceso de aprendizaje por transferencia.

Figura 2-1:Formación previa con aprendizaje por transferencia convencional.

El aprendizaje autosupervisado es un método alternativo al aprendizaje por transferencia en el que el modelo es formado previamente no con datos etiquetados sino no etiquetados. Consideramos un conjunto de datos sin etiqueta para el cual no tenemos información de etiqueta y luego tenemos una manera de obtener etiquetas de la estructura del conjunto de datos para formular una tarea de predicción para la red neuronal, como se ilustra en la figura 2-2. Estas tareas de formación autosupervisadas también se llaman tareas de pretexto.

Figura 2-2:Formación previa con aprendizaje autosupervisado.

La principal diferencia entre el aprendizaje por transferencia y el autosupervisado radica en cómo obtener las etiquetas durante el paso 1 en las figuras 2-1 y 2-2. En el aprendizaje por transferencia, asumimos que las etiquetas se proporcionan junto con el conjunto de datos; típicamente son creadas por etiquetadores humanos. En el aprendizaje autosupervisado, las etiquetas pueden derivarse directamente de los ejemplos de formación.

Una tarea de aprendizaje autosupervisado podría ser la predicción de palabras omitidas en un contexto de procesamiento del lenguaje natural. Por ejemplo, dada la oración «hace un día precioso y soleado», podemos enmascarar la palabra soleado, introducir en la red la entrada «hace un día precioso y [MÁSCARA]» y hacer que la red prediga la palabra que falta en lugar de «[MÁSCARA]». Del mismo modo, podríamos eliminar parches de imagen en un contexto de visión informática y hacer que la red neuronal rellene los espacios en blanco. Estos son solo dos ejemplos de tareas de aprendizaje autosupervisado; existen muchos más métodos y paradigmas para este tipo de aprendizaje.

En resumen, podemos pensar en el aprendizaje autosupervisado en la tarea de pretexto como aprendizaje de representación. Podemos tomar el modelo preformado para afinarlo en la tarea objetivo (también conocida como la tarea descendente).

Aprovechamiento de datos sin etiqueta

Las arquitecturas de redes neuronales grandes requieren cantidades grandes de datos etiquetados para funcionar y generalizar bien. Sin embargo, para muchas áreas problemáticas, no tenemos acceso a conjuntos grandes de datos etiquetados. Con el aprendizaje autosupervisado, podemos aprovechar los datos no etiquetados. Por lo tanto, es probable que el aprendizaje autosupervisado sea útil cuando se trabaja con redes neuronales grandes y con una cantidad limitada de datos de formación etiquetados.

Se sabe que las arquitecturas basadas en transformadores que forman la base de los LLM y los transformadores de visión requieren un aprendizaje autosupervisado para que la formación previa tenga un buen desempeño.

Para modelos de redes neuronales pequeñas, como los perceptrones multicapa con dos o tres capas, el aprendizaje autosupervisado normalmente no se considera ni útil ni necesario.

El aprendizaje autosupervisado tampoco es útil en el aprendizaje automático tradicional con modelos no paramétricos, como bosques aleatorios basados en árboles o aumento de gradientes. Los métodos convencionales basados en árboles no tienen una estructura de parámetros fijos (a diferencia de las matrices de peso, por ejemplo). Así, los métodos convencionales basados en árboles no pueden realizar el aprendizaje por transferencia y son incompatibles con el aprendizaje autosupervisado.

Autopredicción y aprendizaje autosupervisado contrastivo

Hay dos categorías principales de aprendizaje autosupervisado: autopredicción y autosupervisado contrastivo. En la autopredicción, ilustrada en la figura 2-3, típicamente se cambian u ocultan partes de la entrada y se forma al modelo para reconstruir las entradas originales, por ejemplo, con una máscara de perturbación que ofusca ciertos píxeles en una imagen.

Figura 2-3:Autopredicción después de utilizar una máscara de perturbación.

Un ejemplo clásico es un autocodificador de eliminación de ruido que aprende a eliminar el ruido de una imagen de entrada. Alternativamente, considere un autocodificador enmascarado que reconstruye las partes faltantes de una imagen, como se muestra en la figura 2-4.

Figura 2-4:Un autocodificador enmascarado que reconstruye una imagen enmascarada.

Los métodos de autopredicción de entradas ausentes (enmascaradas) también se utilizan habitualmente en contextos de procesamiento del lenguaje natural. Muchos LLM generativos, como GPT, se forman con una tarea de pretexto de predicción de la próxima palabra (GPT se discutirá con mayor detalle en los capítulos 14 y 17). Aquí, alimentamos los fragmentos de texto de red, donde se tiene que predecir la palabra siguiente en la secuencia (como discutiremos más adelante en el capítulo 17).

En el aprendizaje autosupervisado contrastivo formamos a la red neuronal para aprender un espacio de incrustación donde las entradas similares están cerca unas de otras y las diferentes están muy separadas. En otras palabras, formamos a la red para producir incrustaciones que minimicen la distancia entre entradas de formación similares y maximicen la distancia entre ejemplos de formación diferentes.

Discutamos el aprendizaje contrastivo usando ejemplos concretos. Supongamos que tenemos un conjunto de datos que consiste en imágenes aleatorias de animales. Primero, dibujamos una imagen aleatoria de un gato (la red no conoce la etiqueta, porque asumimos que el conjunto de datos no está etiquetado). A continuación, aumentamos, corrompemos o perturbamos esta imagen de gato, por ejemplo, agregando una capa de ruido aleatoria y recortándola de manera diferente, como se muestra en la figura 2-5.

Figura 2-5:Pares de imágenes encontrados en el aprendizaje contrastivo.