Prefacio
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
Escribimos este libro para ingenieros de datos y científicos de datos que están construyendo sistemas/modelos de aprendizaje automático que quieren pasar a producción. Si alguna vez has tenido la experiencia de entrenar un modelo excelente sólo para preguntarte cómo desplegarlo en producción o mantenerlo actualizado una vez que llega allí, este es el libro para ti. Esperamos que te proporcione las herramientas para sustituir Untitled_5.ipynb
por algo que funcione de forma relativamente fiable en producción.
Este libro no pretende ser tu primera introducción al aprendizaje automático. En la siguiente sección se indican algunos recursos que pueden ser útiles si acabas de iniciar tu andadura en el aprendizaje automático.
Nuestra suposición sobre ti
Este libro asume que o bien sabes cómo entrenar modelos localmente, o bien estás trabajando con alguien que sí lo sabe. Si no es así, hay muchos libros introductorios excelentes sobre aprendizaje automático en para iniciarte, como Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow, 2ª edición, de Aurélien Géron (O'Reilly).
Nuestro objetivo es enseñarte cómo hacer aprendizaje automático de forma repetible, y cómo automatizar el entrenamiento y la implementación de tus modelos. Un problema grave es que este objetivo incluye una amplia gama de temas, y es más que razonable que no estés íntimamente familiarizado con todos ellos.
Como no podemos profundizar en todos los temas, nos gustaría proporcionarte una breve lista de nuestras cartillas favoritas sobre varios de los temas que verás tratados aquí:
Python para el Análisis de Datos, 2ª Edición, por Wes McKinney (O'Reilly)
Ciencia de datos desde cero, 2ª edición, de Joel Grus (O'Reilly)
Introducción al aprendizaje automático con Python, de Andreas C. Müller y Sarah Guido (O'Reilly)
Aprendizaje automático práctico con Scikit-Learn, Keras y TensorFlow, 2ª edición, por Aurélien Géron (O'Reilly)
Kubernetes: Up and Running por Brendan Burns et al. (O'Reilly)
Aprender Spark por Holden Karau et al. (O'Reilly)
Ingeniería de características para el aprendizaje automático, de Alice Zheng y Amanda Casari (O'Reilly)
Construir tuberías de aprendizaje automático, de Hannes Hapke y Catherine Nelson (O'Reilly)
Apache Mahout: Más allá de MapReduce por Dmitriy Lyubimov y Andrew Palumbo (CreateSpace)
R Cookbook, 2ª Edición, de J. D. Long y Paul Teetor (O'Reilly)
Servir modelos de aprendizaje automático por Boris Lublinsky (O'Reilly)
"Entrega continua para el aprendizaje automático", de Danilo Sato et al.
Aprendizaje automático interpretable por Christoph Molnar (autopublicado)
"Una suave introducción a la deriva conceptual en el aprendizaje automático" por Jason Brownlee
"Model Drift and Ensuring a Healthy Machine Learning Lifecycle" por A. Besir Kurtulmus
"El auge de los servidores modelo" por Alex Vikati
"Una visión general de la explicabilidad de los modelos en el aprendizaje automático moderno" por Rui Aguiar
Aprendizaje automático con Python Cookbook de Chris Albon (O'Reilly)
Fichas de Aprendizaje Automático por Chris Albon
Por supuesto, hay muchos más, pero con estos puedes empezar. Por favor, no te sientas abrumado por esta lista: desde luego, no necesitas ser un experto en cada uno de estos temas para implementar y gestionar Kubeflow con eficacia. De hecho, Kubeflow existe para agilizar muchas de estas tareas. Sin embargo, puede que haya algún tema en el que desees profundizar, por lo que debe considerarse como una lista de "primeros pasos".
Los contenedores y Kubernetes son un área de práctica amplia y en rápida evolución. Si quieres profundizar tus conocimientos sobre Kubernetes, te recomendamos que consultes lo siguiente:
Infraestructura nativa en la nube por Justin Garrison y Kris Nova (O'Reilly)
Kubernetes: Up and Running por Brendan Burns y otros (O'Reilly)
Tu responsabilidad como profesional
Este libro te ayuda a poner en producción tus modelos de aprendizaje automático para resolver problemas del mundo real. Resolver problemas del mundo real con el aprendizaje automático es genial, pero a medida que avanzas y aplicas tus habilidades, recuerda pensar en el impacto.
En primer lugar, es importante que te asegures de que tus modelos son lo suficientemente precisos, y para ello existen excelentes herramientas en Kubeflow, tratadas en "Entrenamiento e implementación de un modelo". Incluso las mejores herramientas no te salvarán de todos los errores: por ejemplo, el ajuste de hiperparámetros en el mismo conjunto de datos para informar de los resultados finales de la validación cruzada.
Incluso los modelos con un poder predictivo significativo pueden tener efectos no intencionados y sesgos que pueden no aparecer durante la fase habitual de entrenamiento-evaluación. Los sesgos no intencionados pueden ser difíciles de descubrir, pero hay muchas historias (por ejemplo, el motor de contratación basado en el aprendizaje automático de Amazon que resultó tener sesgos intensos y decidió contratar sólo a hombres) que demuestran las profundas implicaciones potenciales de nuestro trabajo. No abordar estas cuestiones desde el principio puede llevar a tener que abandonar todo tu trabajo, como demostró la decisión de IBM de detener su programa de reconocimiento facial y pausas similares en toda la industria después de que se hicieran evidentes las implicaciones del sesgo racial en el reconocimiento facial en manos de las fuerzas del orden.
Incluso los datos aparentemente imparciales, como los registros de compras en bruto, pueden resultar tener sesgos intensos que den lugar a recomendaciones incorrectas o algo peor. El mero hecho de que un conjunto de datos sea público y esté ampliamente disponible no significa que sea imparcial. Se ha demostrado que la conocida práctica de incrustación de palabras tiene muchos tipos de sesgos, como el sexismo, el anti-LGBTQ y el anti-inmigración. Al examinar un nuevo conjunto de datos, es crucial buscar ejemplos de sesgos en los datos e intentar mitigarlos en la medida de lo posible. Con los conjuntos de datos públicos más populares, a menudo se discuten diversas técnicas en la investigación, y puedes utilizarlas para guiar tu propio trabajo.
Aunque este libro no tiene las herramientas para resolver el sesgo, te animamos a que pienses de forma crítica sobre los sesgos potenciales en tu sistema y explores soluciones antes de pasar a la producción. Si no sabes por dónde empezar, consulta la excelente charla introductoria de Katharine Jarmul. IBM tiene una colección de herramientas y ejemplos en su conjunto de herramientas de código abierto AI Fairness 360 que puede ser un gran lugar para comenzar tu exploración. Un paso crítico para reducir el sesgo en tus modelos es contar con un equipo diverso que advierta los problemas potenciales en una fase temprana. Como dijo Jeff Dean: "La IA está llena de promesas, con el potencial de revolucionar tantas áreas diferentes de la sociedad moderna. Para hacer realidad su verdadero potencial, nuestro campo debe ser acogedor para todas las personas. Tal y como está hoy, definitivamente no lo es. Nuestro campo tiene un problema de inclusividad".
Consejo
Es importante tener en cuenta que la eliminación de sesgos o la validación de la precisión de tus resultados no es algo que "se haga de una vez"; el rendimiento del modelo puede degradarse y pueden introducirse sesgos con el tiempo, incluso aunque no cambies nada personalmente.1
Convenciones utilizadas en este libro
En este libro se utilizan las siguientes convenciones tipográficas:
- Cursiva
-
Indica nuevos términos, URL, direcciones de correo electrónico, nombres de archivo y extensiones de archivo.
Constant width
-
Se utiliza en los listados de programas, así como dentro de los párrafos para referirse a elementos del programa como nombres de variables o funciones, bases de datos, tipos de datos, variables de entorno, sentencias y palabras clave.
Constant width bold
-
Muestra comandos u otros textos que deben ser tecleados literalmente por el usuario.
Constant width italic
-
Muestra el texto que debe sustituirse por valores proporcionados por el usuario o por valores determinados por el contexto.
Consejo
Este elemento significa un consejo o sugerencia.
Nota
Este elemento significa una nota general.
Advertencia
Este elemento indica una advertencia o precaución.
Utilizaremos advertencias para indicar las situaciones en las que es probable que la tubería resultante no sea transportable y te indicaremos las alternativas transportables que puedes utilizar.
Ejemplos de códigos
El material complementario (ejemplos de código, etc.) se puede descargar en https://oreil.ly/Kubeflow_for_ML. Estos ejemplos de código están disponibles bajo licencia Apache 2, o como se describe en la siguiente sección.
Existen ejemplos adicionales bajo sus respectivas licencias que pueden resultarte útiles. El proyecto Kubeflow tiene un repositorio de ejemplos, que en el momento de escribir estas líneas está disponible bajo licencia Apache 2. Canonical también tiene un conjunto de recursos que pueden ser de especial interés para los usuarios de MicroK8s.
Utilizar ejemplos de código
Si tienes una pregunta técnica o un problema al utilizar los ejemplos de código, envía un correo electrónico a bookquestions@oreilly.com.
Este libro está aquí para ayudarte a hacer tu trabajo. En general, si se ofrece código de ejemplo con este libro, puedes utilizarlo en tus programas y documentación. No es necesario que te pongas en contacto con nosotros para pedirnos permiso, a menos que estés reproduciendo una parte importante del código. Por ejemplo, escribir un programa que utilice varios trozos de código de este libro no requiere permiso. Vender o distribuir ejemplos de los libros de O'Reilly sí requiere permiso. Responder a una pregunta citando este libro y el código de ejemplo no requiere permiso. Incorporar una cantidad significativa de código de ejemplo de este libro en la documentación de tu producto sí requierepermiso.
Puedes encontrar más detalles sobre la licencia en los repos.
Agradecemos la atribución, pero generalmente no la exigimos. Una atribución suele incluir el título , el autor, la editorial y el ISBN. Por ejemplo "Kubeflow for Machine Learning" de Holden Karau, Trevor Grant, Boris Lublinsky, Richard Liu e Ilan Filonenko (O'Reilly). Copyright 2021 Holden Karau, Trevor Grant, Boris Lublinsky, Richard Liu e Ilan Filonenko, 978-1-492-05012-4".
Si crees que el uso que haces de los ejemplos de código no se ajusta al uso legítimo o al permiso concedido anteriormente, no dudes en ponerte en contacto con nosotros en permissions@oreilly.com.
Aprendizaje en línea O'Reilly
Nota
Durante más de 40 años, O'Reilly Media ha proporcionado formación, conocimientos y perspectivas sobre tecnología y negocios para ayudar a las empresas a alcanzar el éxito.
Nuestra red única de expertos e innovadores comparten sus conocimientos y experiencia a través de libros, artículos y nuestra plataforma de aprendizaje online. La plataforma de aprendizaje en línea de O'Reilly te ofrece acceso bajo demanda a cursos de formación en directo, rutas de aprendizaje en profundidad, entornos de codificación interactivos y una amplia colección de textos y vídeos de O'Reilly y de más de 200 editoriales. Para más información, visita http://oreilly.com.
Cómo contactar con los autores
Para hacernos llegar tus comentarios, envíanos un correo electrónico a intro-to-ml-kubeflow@googlegroups.com. Para divagaciones aleatorias, ocasionalmente sobre Kubeflow, síguenos en línea:
- Trevor
- Holden
- Boris
- Richard
Cómo contactar con nosotros
Dirige tus comentarios y preguntas sobre este libro a la editorial:
- O'Reilly Media, Inc.
- 1005 Gravenstein Highway Norte
- Sebastopol, CA 95472
- 800-998-9938 (en Estados Unidos o Canadá)
- 707-829-0515 (internacional o local)
- 707-829-0104 (fax)
Puedes acceder a la página web de este libro, donde se recogen erratas, ejemplos y cualquier información adicional, en https://oreil.ly/Kubeflow_for_Machine_Learning.
Envía un correo electrónico a bookquestions@oreilly.com para comentar o hacer preguntas técnicas sobre este libro.
Para noticias e información sobre nuestros libros y cursos, visita http://oreilly.com.
Encuéntranos en Facebook: http://facebook.com/oreilly
Síguenos en Twitter: http://twitter.com/oreillymedia
Míranos en YouTube: http://www.youtube.com/oreillymedia
Agradecimientos
A los autores les gustaría dar las gracias a todo el mundo en O'Reilly Media, especialmente a nuestras editoras Amelia Blevins y Deborah Baker, así como a la comunidad Kubeflow por hacer posible este libro. Clive Cox y Alejandro Saucedo de Seldon hicieron increíbles contribuciones al Capítulo 8, sin las cuales a este libro le faltarían partes clave. Nos gustaría dar las gracias a Google Cloud Platform por los recursos que nos permitieron asegurarnos de que los ejemplos funcionaban en GCP. Quizás lo más importante, nos gustaría dar las gracias a nuestros revisores, sin los cuales este libro no existiría en su forma actual. Esto incluye a Taka Shinagawa, Pete MacKinnon, Kevin Haas, Chris Albon, Hannes Hapke y otros. A todos los primeros lectores y revisores de libros, gracias por vuestras contribuciones.
- Holden
-
Le gustaría dar las gracias a su novia Kris Nóva por su ayuda depurando su primer Kubeflow PR, así como a toda la comunidad Kubeflow por ser tan acogedora. También le gustaría dar las gracias a su mujer Carolyn DeSimone, a su cachorro Timbit DeSimone-Karau (en la foto de la Figura P-1) y a sus animales de peluche por el apoyo necesario para escribir. Le gustaría dar las gracias a los médicos del SF General y de la UCSF por curarle las manos para que pudiera terminar de escribir este libro (aunque desearía que ya no le dolieran las manos) y a todos los que vinieron a visitarla al hospital y a la residencia de ancianos. Un agradecimiento especial a Ann Spencer, la primera editora que le enseñó a divertirse escribiendo. Por último, le gustaría dar las gracias a su amiga Els van Vessem por su apoyo en la recuperación tras el accidente, especialmente leyendo historias y recordándole su amor por la escritura.
- Ilan
-
Le gustaría dar las gracias a todos sus colegas de Bloomberg que se tomaron el tiempo de revisarle, orientarle y animarle a escribir y contribuir al código abierto. La lista incluye, pero no se limita a: Kimberly Stoddard, Dan Sun, Keith Laban, Steven Bower y Sudarshan Kadambi. También le gustaría dar las gracias a su familia -Galia, Yuriy y Stan- por su amor y apoyo incondicionales.
- Richard
-
Me gustaría dar las gracias al equipo de Google Kubeflow, que incluye, entre otros, a: Jeremy Lewi, Abhishek Gupta, Thea Lamkin, Zhenghui Wang, Kunming Qu, Gabriel Wen, Michelle Casbon y Sarah Maddox, sin cuyo apoyo nada de esto habría sido posible. También le gustaría dar las gracias a su gata Tina (ver Figura P-2) por su apoyo y comprensión durante COVID-19.
- Boris
-
Le gustaría dar las gracias a sus colegas de Lightbend, especialmente a Karl Wehden, por su apoyo en la redacción del libro, sus sugerencias y correcciones de las primeras versiones del texto, y a su esposa Marina por aguantar sus largas horas de trabajo y alimentarle durante las mismas.
- Trevor
-
A Trevor le gustaría dar las gracias a sus compañeros de oficina Apache y Meowska (ver Figura P-3) por recordarle la importancia de las siestas, y a todos los que le escucharon dar una charla sobre Kubeflow el año pasado (especialmente a los que escucharon las versiones malas, y especialmente a los que escucharon las versiones malas pero siguen leyendo este libro ahora: sois los mejores). También le gustaría dar las gracias a su madre, a su hermana y a su hermano por tolerar sus diversas travesuras a lo largo de los años.
Quejas
A los autores también les gustaría reconocer las luchas de los cambios de API, que hicieron que escribir este libro fuera tan frustrante. Si alguna vez tienes problemas con los cambios de API, debes saber que no estás solo; son molestos para casi todo el mundo.
A Holden también le gustaría agradecer las veces que Timbit DeSimone-Karau se portó como un mierdecilla y desenterró el jardín mientras ella trabajaba. Tenemos una queja especial que desahogar con la persona que atropelló a Holden con su coche, retrasando la publicación de este libro.
Trevor tiene una queja que ventilar con su novia, que le ha estado acosando (cada vez con más insistencia) para que le proponga matrimonio durante todo este proyecto, y mientras él ha estado "trabajando en ello", si es que no le ha pedido que se case con él para cuando salga este libro: Katie, ¿quieres casarte conmigo?
1 ¿Recuerdas el bot de Twitter que mediante aprendizaje por refuerzo se convirtió en neonazi en menos de un fin de semana?
Get Kubeflow para el aprendizaje automático now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.