Recoge tu acreditación y el pack de bienvenida
En esta charla comentaremos los componentes que forman parte de un Asistente Virtual y hablaremos de cómo montar uno usando Python, paquetes de pip, otros proyectos Open Source y alguno que otro chiste.
Taller de programación web para mujeres y LGTBIQ+.
IMPORTANTE: Solo será posible acudir con invitación.
Web con toda la información: https://djangogirls.org/en/granada/
Revisaremos las principales características teóricas y técnicas de los paquetes más populares y útiles que nos ayudan a cuantizar la incertidumbre o a explicar las predicciones de nuestros modelos supervisados.
Desde la creación del lenguaje Python en los años 90 hasta su imparable explosión y desarrollo al comienzo del nuevo milenio, con el auge de aplicaciones web y el uso intensivo de la nube, también ha tenido una incursión muy importante en el mundo científico-técnico gracias al desarrollo de módulos específicos que permiten aprovechar también toda su potencialidad y versatilidad para el planteamiento, desarrollo y resolución de problemas científico-técnicos de todo tipo. Gracias al uso combinado de los módulos SymPy, NumPy y SciPy, junto con Matplotlib para la confección de impresionantes y variados gráficos, así como Pandas para facilitar un tratamiento y análisis de datos cada vez más necesario y extendido en nuestros días. Aparte ya estarían también muchos otros módulos relacionados con la I.A. y técnicas de M.L., cuyo uso es completamente ubícuo en nuestros días.
En este sentido Python cuenta en la actualidad con un ecosistema (módulos y librerías diversas) y una colección de recursos adicionales (documentación, blogs, libros, notebooks, etc.) a libre disposición de las personas interesadas que puede igualar, e incluso superar en algunos aspectos, a cierto software comercial que se ha venido usando profusamente hasta ahora (como Mathematica, Maple, MATLAB, etc.).
En este taller pretendemos simplemente presentar y dar a conocer algunas de las muchas funcionalidades y posibilidades que tienen estos módulos fundamentales para el cálculo científico-técnico, mediante ejemplos variados
cuidadosamente escogidos, con los que podremos experimentar e interactuar, y que esperamos permitan a las personas que lo sigan hacerse una idea del enorme potencial que tienen dichos módulos en numerosas áreas de la Ciencia y la Tecnología.
Este taller pretende que los asistentes, sin necesidad de tener conocimientos previos sobre la librería, desarrollen una aplicación en Pytorch, una de las librerías por excelencia en Python para desarrollar tareas de aprendizaje automático. En concreto, los asistentes abordarán el diseño y desarrollo de una aplicación de aprendizaje automático desde cero, partiendo de lo básico del funcionamiento del framework, y concluyendo con el despliegue de una aplicación propia en la web.
Este taller consistirá en cuatro bloques:
- Introducción a Pytorch. Se explicará en qué consisten las librerías para redes neuronales como Pytorch y cómo funcionan. Se dará una idea general de qué son las redes neuronales y cómo esta librería nos ayuda. Se contará con un ejercicio sobre una red neuronal sencilla y problemas de optimización que permitan comprender las nociones más básicas de la librería.
- Se verán varios ejemplos de Pytorch en problemas reales, aplicados a clasificación y generación de imágenes y por último a tareas de texto como Question and Answering o generación de texto.
- Ya con una visión general de la librería, se propondrán varios ejemplos de aplicaciones sencillas de aprendizaje automático a llevar a cabo con Pytorch, con la finalidad de aplicar los conocimientos. Se propondrán diversas opciones de tareas, aunque los asistentes podrán también realizar una de su elección.
- Por último, se hará un despliegue de una aplicación sencilla con Flask o Streamlit (y Heroku), con el objetivo de desplegar en la nube un sistema de aprendizaje automático que pueda hacer una tarea sencilla.
Pueden encontrarse más info y los materiales en este repositorio de GitHub: https://github.com/wizmik12/first-app-pytorch
A veces el rendimiento de un programa Python se convierte en un elemento muy importante, y pueden existir pequeñas partes del código que influyan claramente en el tiempo y en el uso de memoria. Lamentablemente, nuevos usuarios de Python pueden obtener malos resultados en rendimiento sin conocer la causa, y pensar que deben de reimplementar todo el sistema a otro lenguaje, cuando no es el caso. En este taller veremos cómo podemos determinar el código Python que supone el mayor consumo de recursos, y veremos con algunos ejemplos cómo podemos optimizar las partes críticas usando distintas técnicas y librerías.
Suponed que dos proveedores ofrecen proyectos equivalentes. El primero necesita un cluster de 16 nodos mientras que el segundo sólo necesita un servidor. ¿Cuál elegiríais? Pues como todo en la vida depende. Sí es verdad que hoy es más habitual optimizar el coste que la aplicación que lo genera. En en esta sesión de live coding aprenderéis una serie de técnicas orientadas a modelar grandes cantidades de datos con pocos recursos:
- Almacenar datos indexados de manera eficiente
- Paginado eficiente entre disco y memoria con Apache Arrow
- Solapar cálculo y I/O
- Filter pushdown
- Mejorar las prestaciones de la analítica con Duckdb o polars
- Out-of-core training
El objetivo final será generar una aplicación capaz de cargar, modelar y visualizar un dataset de gran tamaño con una Raspberry Pi 4.
Las redes complejas se encuentran en todos lados, ya sean en redes sociales o cuando queremos llegar de un punto a otro dentro de una ciudad. ¿Cómo podemos analizarlas usando Python? Es la pregunta que busca responder este taller.
En este taller explicaremos los conceptos básicos para el estudio de redes complejas a través de grafos. De forma práctica, revisaremos cómo trabajar con este tipo de redes en Python. Para ello, utilizaremos las bibliotecas NetworkX para manipular y visualizar grafos, y, OSMnx para analizar la red de calles de una ciudad.
El TDD es una metodología de diseño de software que se basa en escribir primero los tests o pruebas, para después escribir el código fuente que pase satisfactoriamente dichas pruebas, y por último, refactorizar el código escrito.
En este workshop proponemos un ejercicio orientado al desarrollo de APIs que resolveremos usando este proceso de TDD. De esta manera pasaremos por cada uno de los pasos observando la importancia de cada uno de ellos. Y así ejemplificaremos nuestro día a día, cómo con Python nos enfrentamos a los problemas y cómo el TDD nos ayuda a resolverlos.
Al final del workshop saldrás sabiendo cuales son los pasos a seguir para hacer desarrollos con la metodología TDD y poder aplicar lo aprendido.
Recoge tu acreditación y el pack de bienvenida
Charla de apertura
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..“).
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
Many Python conferences have "sprints" included in their conference schedule. In this talk, we will explain what is it for the newcomers, why is it important to the open-source community, and as an organizer and maintainer how can you help this "sprints" movement.
La charla trata de presentar la forma de obtener la geolocalización de un dispositivo sin el empleo de GPS, ya que es posible piratear la señal mediante WarDriving. Pero si somos capaces de detectar las BSSID de los routers WIFI que tenemos cerca, podríamos geolocalizarnos sin el GPS. Está basado en un caso real de pericial informática cuya geolocalización a la hora de realizar la extracción de evidencias fue desplazada, con el claro motivo de invalidar el dictamen pericial y tachar al perito.
Veremos como con herramientas Open Source como MLFLow podemos gestionar el ciclo de vida de los modelos de Machine Learning que desarrollemos.
Como desarrollar tus proyectos pensando desde el inicio en paquetes que puedas usar o publicar. Nos enfocaremos en Django y como crear apps reutilizables y empaquetables, ya sea para reutilizar en tus proyectos o contribuir a la comunidad en forma de código libre. Revisaremos el proceso de diseño, las herramientas que nos aporta el propio framework y las técnicas que usan tanto django como las librerías más usadas en la comunidad. Finalmente daremos algunos consejos rápidos sobre la publicación y la preparación del setup.py.
En Google, ejecutamos más de 2 mil millones de contenedores nuevos en nuestra plataforma Borg cada semana: trabajos interactivos, procesamiento batch, one-shot, etc. La orquestación es muy importante cuando necesitamos desplegar una nueva versión de una stack, como como los servicios de autenticación, cuyo fallo puede hacer que la mayoría, si no todos, los productos de Google queden inutilizables. Necesitamos validar una nueva versión, realizar un análisis canary y desplegarla progresivamente en cientos de miles de máquinas en decenas de centros de datos en todo el mundo.
Python es una herramienta central que usamos para esta multitud de propósitos. Tenemos cientos de años de ingeniería invertidos en herramientas de Python para administrar nuestros servicios. ¿Cómo evoluciona este código? ¿Cómo abordamos la mantenibilidad? ¿Cómo tratamos la optimización del rendimiento? Y la migración 2 a 3, ¿fue un dolor?
Esta charla ofrecerá información detallada sobre todo lo que SRE ha utilizado Python durante la última década para administrar los servicios más importantes y críticos del planeta.
This talk aims to teach from scratch the concept of Feature Flags. How we have used it intuitively in those settings files, keeping boolean variables, how frameworks like Django manage in a more advanced way, for example permission levels and how finally, there are very powerful ways to deploy without activating any logic, do A/B deployment, incremental, ... deactivate features if you have any problem, with a click, without changing code or deploy...
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.
En esta charla mostraremos las distintas maneras que tiene un ordenador para aprender a jugar a un juego de mesa.
En esta charla vamos a ver algunos elementos en Airflow que te permitirán crear workflows dinámicos que se adapten a los resultados particulares de cada ejecución. Posiblemente no es algo que vayas a usar habitualmente en tu día a día pero no está de más conocerlos.
En esta charla me gustaría contar los principios básicos sobre el desarrollo de software seguro.
Si bien el riesgo es inevitable, analizándolo para nuestro caso de uso y tomando las medidas adecuadas, podemos minimizarlo hasta un nivel asumible, limitando las consecuencias en caso de problemas y haciendo que nuestros sistemas sean rápidamente recuperables tras un ataque.
Building an application with Django is fairly easy at the beginning because the framework provides stable solutions for many of the issues that every engineer deals with. But when things start to get bigger and complex, we can’t ignore what happens behind the scenes. We often need to “tweak” the standard behavior to comply with our exigencies.
How do we perform changes on a database with Django? We use what is known in the framework as “migrations”. We will see the basics of what they are, how they work and focus on their risks: they can be painful, lock tables and generate failed requests and downtime for the end users.
We will then show the solution we have adopted in TravelPerk to perform migrations in the safest way possible without impacting the availability of our systems. An approach we call “Zero Downtime Migrations”.
¿Cuánta información o noticias sueles ver en Twitter?
¿De toda esa información con qué porcentaje de fiabilidad puedes decir que esa noticia sea real o falsa, es decir, que sea una Fake New?
En esta charla, queremos mostrar los pasos básicos para resolver este problema de NLP, que aplicaremos en un tema del día a día. Además podemos llevar esto a otros problemas con un área similar.
Abordaremos distintos análisis y visualizaciones sobre el vocabulario usado para poder distinguir las reales de las falsas.
Con la ayuda de NLTK, Keras y TensorFlow usando una Red de Neuronas Recurrentes crearemos una inteligencia artificial capaz de identificar las Fake News.
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.
¿Quién ha dicho que el hardware es una cosa difícil, aburrida y masculina? Nadie, pero tal cómo nos lo presentan eso parece.
Pues se acabó lo de aburrido (en todos los sentidos, tú ya me entiendes 😉), se acabó lo de masculino porque vamos a crear nuestro propio dildo a tu gusto (en todos los sentidos también) y, por supuesto, se acabó lo de difícil, porque vamos a aprender y nos vamos a reír.
En esta charla vamos a tener nuestro primer acercamiento al hardware de una forma diferente y amena. Aprenderemos qué son y cómo se conectan nuestro motor, controlador y placa, y cómo programarlos con MicroPython.
Ven a la charla más vibrante de Python y quitate todos esos miedos a los cables, lucecitas y a soldar.
100% de gusto garantizado
Todos dicen que, comparado con otros lenguajes, Python es rápido de escribir, pero no tan rápido en ejecución ¿qué opciones tenemos para hacer que corra más?
En esta charla aprenderemos a medir el rendimiento de nuestros programas en Python y analizaremos de forma práctica diferentes opciones para hacer que un programa en Python se ejecute más rápido, desde correr sobre PyPy o compilar con Nuitka hasta integrar partes en C++ con Pybind11.
La nueva versión de Python está a la vuelta de la esquina cargadita de novedades. Agrupación de excepciones, más velocidad, el nuevo módulo tomllib, novedades en el tipado... Comentamos qué trae de nuevo esta versión para todo el mundo y los más veteranos. ¡No te quedes atrás en lo nuevo de Python!
Pausa para comer de 2h. Se dará almuerzo en el comedor de la facultad.
Pausa para comer de 2h. Se dará almuerzo en el comedor de la facultad.
Pausa para comer de 2h. Se dará almuerzo en el comedor de la facultad.
Pausa para comer de 2h. Se dará almuerzo en el comedor de la facultad.
Te pongo en situación: es 2004 y en la televisión británica se hace famosísimo un sketch llamado "Computer Says No" en un programa de humor llamado Little Britain (https://www.youtube.com/watch?v=0n_Ty_72Qds). Yo aún ni había empezado mi carrera como ingeniera por aquel entonces, como para saber qué era todo lo que estaba por venir... En el sketch se reían de la respuesta que daba el ordenador de atención al cliente a un paciente por haber gestionado mal la cita en el sistema. No le podían atender y no podían hacer nada al respecto.
Han pasado 18 años de esa escena y seguimos con un panorama parecido, solo que ahora hablamos de "algoritmos" en vez de "ordenadores". Los modelos de inteligencia artificial se empiezan a aplicar en sectores como salud, empleo, administración pública, educación, justicia, fabricación... ¿qué harías como ciudadano si el sistema asesorado por una Inteligencia Artificial te dice "que no" a una ayuda, a un trámite, a un trabajo, a un crédito? ¿qué derechos tienes como ciudadano para reclamar?... un momento... ¿se puede reclamar a un algoritmo? ¿qué regulación existe? Y nosotros los técnicos... ¿qué mecanismos de transparencia podemos aplicar en nuestros desarrollos? ¿nos va a afectar esto? ¿nos van a pedir que enseñemos el código?
En 30 minutos y utilizando un tono divulgativo intentaré dar una panorámica concisa y global del estado actual de la regulación de la Inteligencia Artificial en la Unión Europea. Hablaremos de qué esperar en el corto plazo, qué hacer como desarrolladores (y como ciudadanos) y qué sectores parece que van a ser los más "afectados".
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.
The industry tends to present career progression in a very structured way. It seems that progress is to move up in the career ladder. Is there a way down too?
This is an inspirational talk about a career in Software. A journey that will show that a career in tech can be a dynamic and flexible path full of avenues to explore. I will talk about how I became an Engineering Manager and why I decided to step down to become an Individual Contributor.
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.
In this talk, we will share some of the lessons we have learned over the last 4 years that we have been developing ML solutions, and deploying and maintaining them in production in real enterprise operations.
With regard to ML solution development, we will share our insights so far on overcoming some challenges that we have seen commonly arise in a process typically driven by iterative experimentation within a team, focusing above all on achieving high levels of traceability and reproducibility. Combining various common MLOps best practices such as versioning data and models together with code, as well as tracking experiments, we have set up a methodology that makes it practically impossible for team members to evade conducting their work in a highly reproducible way, at the same time as providing flexibility for rapid experimentation.
When it comes to deployment, the MLOps practices that have served us particularly well are the principles of early and controlled deployment (shadow mode, canary and blue-green deployments), the careful definition of key business and technical metrics, and an obsessive focus on observability and monitoring. We will also touch upon some non-technical challenges that we have commonly encountered along the way.
Aside from sharing our own experiences and lessons learned, we would like to encourage a constructive discussion with the community, drawing on the wide experience of the community to continue to evolve best practices in the field.
Durante esta charla, haremos una introducción al distributed tracing y cómo puede ayudarnos en nustros proyectos.
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 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”
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
¿Te gustaría convertirte en el señor Burns fluorescente (sí, ese de los Simpson que dice ‘os traigo amor’)? Con el experimento de biohacking de esta ponencia podrás conseguirlo en tu propia casa; tan sólo necesitas un kit comprado por internet y un script de Python de mi GitHub. ¿Empezamos?
¿Cuántas veces has estado a punto de irte de tu empresa, y justo justo justo han decidido contraofertarte? ¿Cuánto en el límite tienes que estar para que tu empresa reaccione? ¿Nadie te ha hecho caso hasta el momento de irte? ¿Te cuesta decidir entre marcharte o quedarte , ahora que parece que se te valora más? En esta charla hablaremos de esos casos peliagudos que son las malditas contraofertas, pero también de clima, de involucración y de motivación tanto de tú con tu organización, como de tu organización hacia ti.
Cuando hablamos de modelado de series de tiempo, generalmente nos referimos a técnicas basadas en modelos autorregresivos tales como ARIMA, VARMA entre otros, o tal vez la implementación de redes neuronales recurrentes. Estos modelos de análisis de series temporales requieren un alto grado de especialización y en muchas ocasiones no son de fácil implementación. Sin embargo, con la evolución de las técnicas basados en ML han emergido nuevos y más eficientes modelos para el análisis de series temporales. Entre ellos podemos destacar el uso de XGBoost y que se puede considerar como un enfoque avanzado del análisis de series temporales. XGBoost es una implementación eficiente de aumento de gradiente para problemas de clasificación y regresión. Es rápido y eficiente, tiene un buen desempeño, si no el mejor, en una amplia gama de tareas de modelado predictivo. El XGBoost también se puede utilizar para la previsión de series temporales, aunque requiere que el conjunto de datos de la serie temporal se transforme primero en un problema de aprendizaje supervisado. También requiere el uso de una técnica especializada para evaluar el modelo, ya que evaluar el modelo usando la validación cruzada k-fold daría como salidas resultados optimistamente sesgados.
En la contribución oral exploraremos las claves necesarias de cómo desarrollar un modelo XGBoost para la previsión de series temporales. Describiremos cómo usar los conjuntos de datos de series temporales y transformarlos en datos para aprendizaje supervisado mediante una representación de ventana deslizante así de cómo ajustar, evaluar y hacer predicciones con un modelo para la previsión de series temporales. Mostraremos un caso de éxito y como se ha implementado en una aplicación web.
Have you ever faced a professional challenge where you just didn’t know where to start?
What happens to an AI model once it’s been trained and tested? In this talk, I’m going to share how I transformed into a data engineer for the duration of two weeks, while on the mission to deploy our python AI models in a Cloudera datalake using PySpark.
En esta charla, presentamos Lithops, un poderoso framework de computación distribuida multinube de Python, el cual permite escalar de forma transparente aplicaciones Python locales y multiproceso usando cantidades masivas de recursos en la nube. Demostraremos cómo las aplicaciones multiprocessing de Python se pueden migrar de forma transparente a la nube, logrando un mejor rendimiento sin la necesidad de modificar el código.
También mostraremos cómo se puede usar para escalar masivamente aplicaciones paralelas como el procesamiento de imágenes geoespaciales, reduciendo significativamente el tiempo de ejecución.
El aprendizaje por refuerzo es un método de aprendizaje computacional centrado en la interacción de un agente con su entorno. Se trata de un proceso de aprendizaje iterativo, basado en prueba y error, donde el agente recibe recompensas positivas si sus acciones le conducen a estados deseables.
Esta rama de la inteligencia artificial, ampliamente ligada a la psicología conductista, ha permitido alcanzar hitos hasta hace poco impensables, como vencer al campeón mundial de Go o StarCraft, dirigir vehículos autónomos, reducir el consumo energético de edificios, o resolver el problema del plegamiento de proteínas: un reto de la biología desde hace más de 50 años.
El objetivo de esta charla será ofrecer una introducción práctica al aprendizaje por refuerzo en Python, presentando dos de las librerías más utilizadas en este campo: OpenAI Gym, destinado a la simulación en entornos de aprendizaje, y Stable Baselines, que incluye implementaciones de los algoritmos de aprendizaje por refuerzo que constituyen el estado del arte.
Finalmente, estudiaremos una aplicación real del aprendizaje por refuerzo en control energético de edificios, ámbito en el que se enmarca nuestra investigación y últimos trabajos.
¿Parchear o inyectar? esa es la cuestión. Siguiendo el principio de inversión de dependencias (la D de SOLID) nuestra código será más mantenible, extensible y testeable. Es cierto que podemos hacer poor man's DI pero, con Dependency Injector, tenemos a nuestra disposición un framework de inyección de dependencias que nos hará la vida mucho más fácil.
Mi nombre es Gloria Silva soy de Venezuela, Ingeniera Mecánica, autodidacta, aventurera Desarrolladora Web. Estas son solo algunas de las cosas que me hacen ser quien soy. Tengo 29 años y si hay algo que me ha definido todo mi vida es ser curiosa, aunque no me lleve muy bien con eso de ponerme etiquetas porque siento que son limitantes y si algo he aprendido a lo largo de mi vida es no permitir que nada ni nadie me limite o me ponga etiquetas. Establecido este punto y una vez he dejado claro lo mucho que creo en que puedo hacer cada cosa que me propongo, les quiero contar un poco de lo que me ha traído al punto donde estoy ahora.
Todo empieza cuando una niña de una ciudad pequeña en medio de montañas decidió cuestionarse todo (según mi mamá “buscarle las 5 patas al gato”).
Desde pequeña he sido muy curiosa, me ha llamado la atención: ¿cómo funcionaban las cosas?, ¿que inspiraba a las mentes más brillantes?, ¿cuáles serían sus referentes? y ¿qué podría hacer yo para ser parte de este grupo? el cual era capaz de crear todo aquello que imaginaban o al menos lo intentaban. Esto último para mi siempre ha sido muy importante, llamenle terquedad, testarudez u obstinación, pero siempre he amado probar todo, nunca me he conformado con un “No” como respuesta solo por miedo a intentar algo nuevo, algo arriesgado o fuera de mi zona de confort. De pequeña quise ser muchas cosas, detective, veterinaria, arqueóloga, científica, piloto, ir a Howarts y ser hechicera…, en fin, no tenia ni idea que quería ser, sin embargo, había una cosa que siempre tuve muy clara: quería tener una profesión asombrosa, de esas como la gente que sale en la tele y hace cosas geniales. Edificios enormes o encontrar la cura para alguna enfermedad. Otra cosa que también tuve muy claro era que para lograr esa “asombrosidad” tenía que prepararme y estudiar muchísimo.
Quisiera decirles que el camino para llegar aquí ha sido fácil, pero no, la realidad es otra, el camino a perseguir nuestros sueños puede ser aterrador, pero si que es nuestro y es todo lo que importa. Nuestra capacidad de sobreponernos a las dificultades, determinación, ambición, disciplina y amor propio, es lo único que nos permitirá enfrentar las mayores dificultades y superarlas, y creanme a lo largo de mi vida he tenido que superar muchas dificultades pero mi historia no trata de ellas, sólo son un par de capítulos que me han enseñado muchas cosas porque yo no soy mis dificultades, soy todo lo que he hecho, aprendido, crecido y todas las oportunidades que he tenido a pesar de ellas. Así que pequeño spoiler, mi historia va de lo orgullosa que estaría la Gloria de 8 años que veía el canal discovery y que a pesar de que no logró ser hechicera en Howarts, si que logro tener una profesión asombrosa como programadora.
Charlas de 5 minutos de diferentes temáticas
Asamblea extraordinara de Python España
Recoge tu acreditación y el pack de bienvenida
Breve apertura para dar comienzo a la jornada del domingo
En la más pura tradición valenciana, esta charla no es una charla, es una falla. Un monumento a todo lo que brilla pero está hueco, un monumento a todo lo hay que quemar en AI.
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
Incluso si trabajamos en modalidad ágil, sin un presupuesto definido, tenemos ser capaces de valorar el esfuerzo que lleva una tarea, tanto para saber si cabe en un sprint como para poder decidir si se hace o no se hace.
Los programadores en general pecamos de optimistas, utilizamos el "tiempo programador" como unidad de medida, subestimando la tarea en la mayoría de ocasiones.
Esta ponencia pretende mostrar algunas herramientas y técnicas que nos ayuden a realizar mejores estimaciones, sin olvidar que son eso, estimaciones y no pactos firmados en sangre.
¿Y si tu Alfred particular se llamara Ada y fuera una Raspberri Pi? ¿Te gustaría tener una casa "inteligente" donde las bombillas se encendieran al entrar o pudieras ajustar la temperatura desde cualquier sitio con tu móvil? En esta charla os contaremos cómo hacerlo con Home Assistant, una plataforma escrita en Python y muy sencilla de utilizar.
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.
La biblioteca pandas ha sido uno de los factores decisivos para el crecimiento de Python en la década pasada dentro de la industria del análisis de datos y continúa ayudando a data scientists a resolver problemas 15 años después de su creación. Gracias a su éxito, ahora hay varios proyectos open-source que afirman mejorar pandas de diversas maneras: en esta charla haremos un repaso de dichas alternativas.
Las personas que trabajamos en el ámbito del desarrollo software estamos rodeados de privilegios y unas condiciones de trabajo y vida anacrónicas con el resto de la sociedad. Y en lugar de usar esta situación para conquistar derechos, nos conformamos con que las empresas nos den algunas migajas. Esto tiene que cambiar y aquí vamos a hablar de cómo hacerlo.
¿Y si te dijera que puedes reducir los tiempos de procesado de ese dataframe enorme usando un índice?
Pues no solo te lo digo, sino que te lo demuestro.
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!
Hablar de trabajo remoto, bondades, fuegos, lloros y otras cosas
Comprender cómo funcionan y la ventaja de emplear los intervalos de confianza, intervalos de predicción y predicción por cuartiles a la hora de emplear modelos de ML para soluciones de negocio.
Debate/charla/coloquio para gente que mantiene proyectos open source, pequeños, medianos, o grandes, o está interesada en escuchar: lecciones aprendidas, trucos para crecer, cómo atraer contribuidores, y lo que surja.
OpenAPI Specification es con mucha diferencia el estándar más usado para el desarrollo de web APIs, pero paradójicamente la gran parte de la comunidad de desarrollo no está muy al día de las últimas mejoras introducidas en la última release o del potentísimo tooling que tenemos disponible en el ecosistema OpenAPI.
En la charla presentaremos los elementos fundamentales de Open API Specification, explicaremos el papel crítico que juega a la hora de crear y/o integrar APIs y presentaremos el tooling disponible para acelerar y potenciar el ciclo de vida de nuestras APIs. Por último, repasaremos el presente y futuro del standard.
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.
Experience has shown that aprender nuevas tecnologías in another language might be a bit complicado, sobre todo por como our brains are working double to aprender algo totalmente nuevo.
Crecemos sabiendo que aprender inglés para integrarnos en la comunidad tecnológica es un requisito. Python como lenguaje no es una excepción, desde el lenguaje hasta su implementación, lo que a veces aumenta su nivel de complejidad por lo abstracto de diferentes temáticas.
Pero...¿Podemos hacer algo al respecto?
Abriremos la caja de Pandora, y entraremos en el núcleo de Python, para perder el miedo, y darnos cuentas que la implementación de Python estándar (CPython) no es nada del otro mundo, y es un proyecto que cualquier persona con un conocimiento básico de C podría al menos entender en términos generales, y en Español!
Adicionalmente, modificaremos algunos elementos del lenguaje para entender los pasos, y la relación de los archivos de la implementación de forma resumida y enfocado a personas sin tiempo de estudiar todo el código fuente, en otras palabras, lo romperemos todo.
Luego de esta charla, podrás preparar tu hot beverage favorito, y comenzar a modificar lo que quieras de Python, para aprender rompiendo, y sobre todo para tener la base necesaria para mejorar el lenguaje.
En esta charla tendrás la oportunidad de conocer cómo es el día a día de las personas que trabajamos como SRE bajo una cultura DevOps.
La optimización matemática es la selección de la mejor alternativa con respecto a algún criterio, entre un conjunto de opciones candidatas.
Existen múltiples aplicaciones de optimización matemática. Por ejemplo, en optimización de carteras de inversión se busca la mejor manera de invertir un capital, dadas diferentes alternativas. En este caso, un problema de optimización nos permitirá elegir una cartera que minimice el riesgo (o maximice la ganancia), entre todas las asignaciones posibles que cumplan con los requisitos definidos.
En la mayoría de los casos, la optimización matemática se utiliza como herramienta para facilitar la toma de decisiones. En ocasiones, estas decisiones pueden ser tomadas automáticamente en tiempo real.
En esta charla se explorará cómo formular y solucionar problemas de optimización matemática con Python, utilizando diferentes librerías de optimización.
Estamos viviendo un auge de las plataformas cloud que facilitan y simplifican el almacenamiento, tratamiento y análisis de datos. Snowflake es una plataforma SaaS potente y fácil de usar que está adquiriendo una gran presencia en el mercado en proyectos muy diversos, permitiendo implementar arquitecturas tipo lakehouse (datawarehouse + data lake) de forma segura y escalable.
¿Y qué tiene que ver esto con Python?
Pausa para comer de 2h. Se dará almuerzo en el comedor de la facultad.
Pausa para comer de 2h. Se dará almuerzo en el comedor de la facultad.
Pausa para comer de 2h. Se dará almuerzo en el comedor de la facultad.
Pausa para comer de 2h. Se dará almuerzo en el comedor de la facultad.
En muchos campos científicos, las encuestas son una importante herramienta de investigación. Utilizando Python, tenemos acceso a una gran variedad de librerías que nos facilitan el análisis de los datos recogidos, ya sean respuestas a preguntas cerradas o texto libre. ¡Vamos a conocer algunas de ellas!
En los últimos años el uso de retórica anti-LGTBQIA+ se ha disparado en todo el mundo. En España, esto se ha manifestado como un aumento del discurso de odio transfóbico. Grupos reaccionarios difunden narrativas de inseguridad jurídica y bulos de ultraderecha para transmitir discursos de odio y atacar la legislación que garantiza derechos fundamentales de las personas trans. Entre estos actores se encuentran grupos "feministas trans-excluyentes" (TERF) y grupos ultraconservadores como el partido político VOX y la plataforma Hazte Oír. El odio antitrans se utiliza como tema cuña para aumentar los discursos de odio a la comunidad LGBTQIA+, el feminismo y la legislación en materia de derechos.
Cómo crear la base de un CMS de una forma rápida y fácil es la clave que muchas veces se busca. En esta charla sobre Wagtail podremos ver las funcionalidades que nos ofrece dentro un espectro inicial de desarrollo de un CMS, además de ver varias las opciones mas personalizables y eficientes que podemos desarrollar para nuestro CMS como que trabaje en diferentes idiomas, creemos un generador de formularios, etc.
¿Qué podemos hacer en nuestro día a día para salvar al planeta?
Vamos a ver una introducción al Green Computing y que podemos hacer cotidianamente para aportar nuestro granito de arena al medioambiente.
Vamos a ver una introducción al Green Computing y que podemos hacer cotidianamente para aportar nuestro granito de arena al medioambiente.
Admitámoslo, a todos nos gustaría saber si a nuestro modelo se le ha ido la bola. O al menos poder poner dar una explicación cuando se le va. Una de las herramientas más útiles para hacer esto es la explicabilidad local. Aunque no le pongas nombre seguramente hayas usado la explicabilidad global del modelo anteriormente, como el método "feature importance" de los árboles. La explicabilidad local sin embargo, nos da herramientas para entender una predicción, para saber qué características han influído más y sacar conclusiones respecto al resultado.
Python 3.11 es entre un 10 % y un 60 % más rápido que Python 3.10, según la aplicación. Hemos logrado esto de una manera totalmente genérica al hacer que el intérprete se adapte al programa que se está ejecutando y al optimizar las estructuras de datos clave.
En esta charla explicaré qué cambios hemos realizado y cómo mejoran el rendimiento.
Las aplicaciones de inteligencia artificial en medicina están en boca de todos.
No hay semana que no haya una publicación en los grandes medios que no presente un modelo que predice a la perfección una patología. La pregunta es, ¿cuánto de esto es cierto y cuánto no?
En esta charla pretendo hablar de los modelos que funcionan y que realmente pueden ayudar al médico en su día a día y de aquellos que no.
Django Rest Framework (DRF) nos facilita la creación de APIs mediante una filosofía "muy Django" es decir, con muchos elementos que hacen cosas de forma automática. Gracias a DRF podemos crear APIs de forma rápida y mantenible. El problema llega cuando dicha API se empieza a usar de forma masiva, y empiezan a surgir los primero problemas de rendimiento. Veremos cuales son esos problemas, y varias alternativas para solucionarlos, teniendo en cuenta que en general la mantenibilidad y el rendimiento suelen ir enfrentados.
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
Pausa de 20 minutos. Habrá mesas con bebidas y snacks.
Charla sobre Python España y cierre de la conferencia.