python

Recursos de programación de python
Ponente: Maria Camila Guerrero Giraldo Título: Lo mejor de dos mundos: Backend y Machine Learning con Python Aula: Teoría 7 (Domingo) ----------------------------- Resumen: El desarrollo de backend y Machine Learning parecen ser dos temas muy diferentes, sin embargo, les contaré mi experiencia en la transición entre estos dos; fue un proceso bonito, fácil y sútil gracias a Python y sus bien conocidos frameworks. Ven, únete a mí y sigue este viaje profesional que realmente he disfrutado. Antes que nada, quiero hablar un poco desde mi experiencia, cómo fue esa transición para mí y cómo tuve la oportunidad de pasar al área de Machine Learning sin tener una carrera en estadística o algún tipo de estudio relacionado. Mi participación en las comunidades de Python fue clave para obtener el conocimiento y conocer a las personas adecuadas en este paso de mi carrera. Luego, me gustaría presentar algunos conceptos clave relacionados con el backend y, especialmente, enfatizar los frameworks que me ayudaron (Flask y Django), nombrando las generalidades, los conceptos que estos frameworks me ayudaron a reforzar conocimientos importantes y especialmente cómo la documentación y la tutoría de las personas con las que trabajé me convirtieron en un desarrolladora backend. También me gustaría hablar sobre cómo, en mi experiencia de backend, la mayoría de las cosas que hice usaron procesos síncronos. Y en este punto de la charla, haga un contraste con mi experiencia en Machine Learning, donde al mismo tiempo estaban presentes frameworks como Django y Flask, pero donde gran parte del procesamiento que se hacía era asíncrono. Mientras que en el backend tenemos APIs y solicitudes (Body, Middleware APIs, Responses), en Machine Learning tenemos pipelines (ETLs, Trainings y Predictions). Aquí me gustaría hacer una analogía y mostrar que en realidad son similares pero los contextos son los que realmente cambian. Algo que aprendí en ambos roles es que el desarrollo es importante, pero el mantenimiento y la calidad de lo que desarrollamos es mucho más importante. Voy a mencionar algunos conceptos de calidad y mantenimiento para cada contexto para que el público se sienta familiarizado y pueda ver lo interesantes que son ambos mundos, también nombrando específicamente algunas bibliotecas y herramientas pythonicas que soportan esta fase (Cloud tools, MyPy, Pylint, Scipy, Jupyter Labs). Como cierre de la charla me gustaría mencionar que me encantan ambos roles y hay muchas cosas por aprender, sigo aprendiendo sobre patrones de diseño, buenas prácticas, investigación sobre temas y me doy cuenta cada día, que estar en una comunidad como Python hace que este trabajo sea increíble todo el tiempo. Definitivamente en mi corta experiencia puedo decir que tengo lo mejor de ambos mundos.
Ponente: Miguel F Alarcon Título: Introducción a la causalidad en Python Aula: Paraninfo (Sábado) -------------------------- Resumen: Todos sabemos que correlación no es igual a causalidad. La mayoría de modelos de Machine Learning en la actualidad buscan correlaciones de los datos con el objetivo. La causalidad viene como herramienta para identificar los factores que afectan al objetivo y de qué manera lo hacen. El objetivo de esta charla es proporcionar unos conocimientos básicos, así como las herramientas para poder solucionar problemas de inferencia y modelado causal en Python. En esta presentación explicaremos de forma práctica los conceptos y técnicas básicas de inferencia causal en python así como la relevancia que estas técnicas tienen para mejorar los procesos basados en machine learning. Las técnicas de inferencia causal y “causal discovery” nos permiten responder a preguntas para las que las técnicas de analítica predictiva y métodos de clasificación/regresión habituales no tienen respuestas. Básicamente nos permite responder usando datos observacionales a la pregunta de porqué se ha producido un determinado efecto, y como debería haber actuado para que se hubiera producido un efecto distinto. Por otro lado nos permiten comprender y corregir los efectos que tienen sobre nuestros sistemas predictivos el efecto de sesgos de selección y el efecto de construcción de modelos condicionados o balanceados sobre algún estrato. Los principios que nos permiten entender estos efectos permiten desarrollar modelos de aprendizaje explicables, permiten corregir sesgos indeseados, y otorga mayor robustez al desplazamiento de dominio (domain shift) en la aplicación de los modelos. En esta presentación explicaremos estos conceptos de forma práctica y para ello usaremos las librerias DoWhy y CausalML. Referencias: “Concept and Principles of Causality “, Miguel F. Alarcon, https://medium.com/hotel-tech-stories/concept-and-principles-of-causality-d687832d6f5d “The Book of Why.”. Pearl, Judea, and Dana Mackenzie.Harlow, England: Penguin Books. 2019. “Elements of Causal Inference, Foundations and Learning Algorithms”, Jonas Peters, Dominik Janzing and Bernhard Schölkopf. "A unified survey of treatment effect heterogeneitymodelling and uplift modelling".W Zhang, J Li, L Liu - ACM Computing Surveys (CSUR), 2021 “Introduction to Causal Inference course”, Brady Neal, https://www.bradyneal.com/causal-inference-course Paquetes Python: Microsoft DoWhy, https://github.com/py-why/dowhy Uber CausalML: https://github.com/uber/causalml
Keynote Ponente: Nieves Ábalos Serrano Títutlo: Inteligencia Artificial Conversacional ❤ Python Aula: Paraninfo (Sábado) ---------------------------------- Resumen: El presente y futuro de la Inteligencia Artificial está marcado por el lenguaje humano. Una de las áreas que más han evolucionado en los últimos años es la de la IA Conversacional, y se centra en las diferentes técnicas y modelos aplicados a conversar con las personas: reconocer el habla (ASR), entender la intención (NLU), la síntesis de la voz (TTS).. Dentro de todo esto, las arquitecturas basadas en redes neuronales están cambiando las reglas del juego, sobre todo en la síntesis de voz. No te pierdas esta charla si quieres entender mejor cómo conseguimos, utilizando Python, conversaciones con las máquinas cada vez más naturales y efectivas (a pesar de los “perdona, no te he entendido..“). Enlace a las diapositivas: https://github.com/nieves-abalos/pycones2022/blob/main/Nieves %20Abalos%20-%20PyConEs2022%20-%20IA%20Conversational%20%20Python.pdf
Ponente: José Muñoz Título: Cómo no vender la misma entrada a dos personas diferentes Aula: Teoría 6 (Sábado) -------------------------------------- Resumen: Supongamos que construimos una aplicación para vender entradas de un cine con tu framework de Python y tu base de datos favorita. Creamos una interfaz espectacular, la llenamos de funcionalidades asombrosas y nos encargamos de que no quede ningún detalle de accesibilidad por pulir. La desplegamos en producción y una vez que empiezan a llegar usuarios, nos damos cuenta de que empiezan a pasar cosas muy raras: hay clientes que han comprado el mismo asiento para ver la misma película a la misma hora y hay sesiones en las que tenemos a clientes sentados en el suelo porque hemos vendido más entradas que asientos. ¿Qué ha podido pasar? En esta charla analizaremos cómo puede llegar a ocurrir esto con nuestros datos, contaremos algunos casos reales y repasaremos algunas de las técnicas que usan las bases de datos actuales para ayudarnos a evitar estos problemas.
Ponente: Victor Suarez Título: Pyxel: Los 8 bits Retro Pythoneros Aula: Teoría 8 (Domingo) ------------------------------------------------------------------ Resumen: Es hora de volver a ver esos grandes títulos de 8 bits que tanto nos han gustado; pero esta vez con un toque de Python. Pyxel esta aqui para poder crear nuestro juego de forma sencilla y con todas las herramientas integradas. ¡Todo con toque retro! En esta charla, vamos a conocer pyxel. Un pequeño motor que nos ayudara a crear videojuegos de estetica 8 bits con 16 colores de forma muy sencilla. Nos permite crear nuestros juegos y gestionar todos los recursos ya que trae herramientas como gestion de mapas, sprites, sonido,etc.. En esta charla veremos como crear un juego desde cero y como al final tendremos nuestro juego funcionando de forma muy sencilla. Y por supuesto totalmente retro. Si de pequeño disfrutabas de los juegos de NES, Spectrum y muchos mas del mundo de los 8 bits, esta es tu charla. Tanto para aquellos que comienzan como para los que ya tienen experiencia con herramientas como PICO-8, esta charla les ayudara a comprender y conocer Pyxel. Puedes conocer pyxel y ver ejemplos en su repositorio: https://github.com/kitao/pyxel Con pyxel, te sorprenderas lo fácil que es hacer un videojuego con todas las características de una máquina de 8 bits, y todo por supuesto con python.
Ponente: Alberto Vara Títutlo: SegmentationFault Fest Aula: Teoría 8 (Sábado) ---------------------------------------- Resumen: En este festival veraniego podremos pasar una buena tarde escuchando temazos como: “LOS MENTIROSOS - migrar de Python a C es fácil” “BUGALÍA - interrupted by signal 11:SIGSEGV” “C-ME-TANGANA - Doble puntero papi” “Py-perrak - Cualquier día puede compilar” Compis, hagamos un trato: yo me voy a desahogar contando mis penas que he pasado todo este 2022 migrando una aplicación de Python a C++ y vosotros podréis ver programación en directo. Veremos cómo resolver problemas habituales de performance y cómo usar Cython para mejorar el rendimiento de una aplicación. Como alternativa, cómo utilizar código nativo en C++ usando Cython como pegamento entre los dos lenguajes. Pero no todo será tan sencillo. Muchas cosas estallarán, se romperán… Resolveremos estos problemas de integración analizando las ejecuciones de nuestro código generando flamegraphs con py-spy, CProfile… y si no encontramos la solución tiraremos de gdb para analizar problemas y no morir de desesperación en el intento. ¿Trato? Presentación y repositorio: https://github.com/avara1986/python-talks/tree/main/2022_10_pycones
Ponente: Enrique Catalá Título: Despliega tu red neuronal python con FastAPI en kubernetes Aula: Teoría 8 (Sábado) ------------------------------------------ Resumen: FastAPI es una excelente elección a la hora de desplegar RESTApi. En esta sesión vamos a ver cómo podemos generar soluciones de despliegue de redes neuronales con FastAPI production ready. Veremos cómo hacer nuestra solución, poder depurarla usando docker y visual studio code y cómo desplegarlas con helm en nuestros clusteres kubernetes. Si te gusta el mix AI, python y kubernetes, esta es tu sesión.
Ponente: Caterina Fuster Barceló Título: Protegiendo el oro con tu corazón Aula: Teoría 8 (Domingo) -------------------------------------------------------- Resumen: Sabías que igual que puedes identificarte con la huella dactilar también puedes hacerlo con tu corazón? Con esta charla pretendo mostrar cómo es posible usar los electrocardiogramas para proteger la caja fuerte de un banco. A través de este proyecto desarrollado 100% en python que va desde procesamiento de señales con PanTompkins hasta identificación y clasificación de usuarios con TensorFlow, veremos cuáles son las ventajas de identificar usuarios con electrocardiogramas y por qué deberíamos usar este método de identificación biométrica para proteger el oro de una caja fuerte. El objetivo de esta charla es acercar la biometría y cómo ésta se combina junto con la inteligencia artificial para lograr hacer un modelo de clasificación de usuarios. Los electrocardiogramas son un sistema válido de identificación biométrica desde que se presentó en 2001 el paper titulado "ECG analysis: a new approach in human identification" de Lena Biel. Nosotros intentamos ir un paso más allá. Intentamos demostrar que es posible identificar a los usuarios no solo con la señal propia del ECG sino con una sola imagen donde se reflejan los latidos de su corazón. Todo esto, es posible gracias a las técnicas de IA como son las CNNs que nos permiten hacer una clasificación de usuarios basada en estas imágenes. De este modo, en esta charla, veremos cómo es posible identificar a las personas a través de su electrocardiograma y qué ventajas tiene sobre otros sistemas biométricos más habituales.
Ponente: Zerjillo y Javier Flores Martín Títutlo: Control de dispositivos astronómicos con Python Aula: Teoría 8 (Sábado) ------------------------------------------------- Resumen: El mundo de la astronomía (particularmente el de la astronomía amateur) ha sufrido una revolución en los últimos años con la aparición de multitud de dispositivos que ayudan a la captura de imágenes astronómicas: monturas computerizadas que permiten apuntar al objeto celeste que queremos fotografiar, cámaras CCD, enfocadores automáticos, ruedas portafiltros, etc. El control de dichos dispositivos se suele llevar a cabo con software especializado que permite el control y programación de dichos dispositivos. Sin embargo en ocasiones puede que necesitemos una funcionalidad que no esté presente en dichos programas. En esta propuesta mostramos como se pueden controlar gran cantidad de dispositivos astronómicos (tanto comerciales como DIY) desde Python, con lo que las posibilidades de crear nuevas funcionalidades automáticas para nuestro equipo astronómico aumentan exponencialmente. Para conseguir el control de nuestros dispositivos utilizaremos el protocolo de comunicación INDI que facilita el control de dispositivos mediante intercambios de mensajes en XML entre nuestro programa (el cliente) y un servidor al que están conectados nuestros aparatos (puede ser la misma máquina). En la propuesta se hará una demostración en vivo del control de varios dispositivos astronómicos con nuestros propios scripts (con el riesgo que conllevan las demostraciones en directo).
Ponente: Maria José Molina-Contreras Títutlo: Respira mejor: creando un sistema de monitoreo y predictivo para calidad del aire en interiores. Aula: Teoría 8 (Sábado) ------------------------------------------------------------- Resumen: En los últimos dos años mucha gente ha pasado a un estilo de trabajo totalmente remoto, lo que nos ha hecho darnos cuenta de beneficios de los que no éramos conscientes, pero lamentablemente también de algunos pequeños inconvenientes, como problemas relacionados con la salud. En esta charla, exploraremos cómo construir un sistema funcional para rastrear la calidad del aire, recoger nuestros propios datos utilizando diferentes sensores e implementar un enfoque predictivo para evitar futuros problemas de salud. Vamos a sumergirnos en las diferentes configuraciones para interactuar con los sensores de calidad del aire utilizando Python en microcontroladores y sistemas embebidos, recogiendo sus propios datos para evaluar diferentes factores como humedad, temperatura, CO2, partículas, pero eso no es todo, también nos adentraremos en la implementación de un modelo de aprendizaje automático predictivo para predecir los niveles de CO2 en interiores y alertarnos en base a las predicciones antes de los niveles críticos. La idea principal de esta charla es mostrar con un ejemplo práctico cómo podemos implementar sistemas de monitorización y aprendizaje automático en casa, y al mismo tiempo, los asistentes verán cómo Python es una gran opción para la monitorización de la calidad del aire interior complementada con un modelo predictivo (Neural Network) para el CO2 interior, mientras se divierten construyendo y monitorizando su casa.