Detección de Anomalías con Python Pandas

Detectar anomalías puede ser algo muy útil para ayudar en muchas tareas cotidianas cuando manejamos mucha información.

Por ejemplo, empresas que tienen muchas métricas monitorizadas pueden llegar a tener cientos de gráficas que les indican cual es la situación de su negocio, pero necesitan a gente que interprete esas gráficas y les diga si todo está bien, si el estado actual es normal o por el contrario, está pasando algo “fuera de lo normal”, por lo tanto, detectar una anomalía.

Crear un sistema automático que detecte dichas anomalías puede ayudar mucho a cualquier negocio, facilitando a los humanos a que utilicen su tiempo en áreas mucho más valiosas que simplemente interpretar unos datos, unas gráficas o ciertos KPI’s.

En el siguiente vídeo muestro cómo podemos crear en pocos minutos nuestro propio sistema de detección de anomalías simple, suficiente para detectar la mayoría de casos anómalos en base a casi cualquier tipo de conjunto de datos.

Se puede ver en el Notebook que he llamado Detección de anomalías con Pandas subido en el repositorio de GitHub.

¿Verdad que tras ver el vídeo ahora ves mucho más sencillo implementar un sistema de detección de anomalías? Seguro que se te ocurren muchos sitios donde implementarlo para mejorar tu trabajo o empresa, ¿verdad?

Entrenando una red neuronal para el tiro con arco

En ocasiones se me ocurren ejemplos divertidos para mostrar cómo podemos utilizar el Machine Learning para ciertas finalidades.

En este caso se me ha ocurrido que le podemos enseñar a nuestra red neuronal a disparar con arco y dar con bastante precisión a un blanco a muchos metros de distancia. (puede ser realmente útil para cuando llegue el apocalipsis zombie :P )

Para ello, he creado un par de vídeos donde explico paso a paso cómo crear los datos necesarios, entrenar la red neuronal, comprobar su efectividad y mostrar de una forma visual los datos para su análisis.

Primera parte:

Segunda parte:

Y como de costumbre, he publicado el código en mi cuenta de GitHub:
Entrenando una red neuronal con lanzamiento parabólico

Enseñando matemáticas a una red neuronal

He vuelto a dedicarle un rato de mis noches de insomnio a preparar un vídeo donde muestro cómo se puede entrenar una red neuronal (MLP) para enseñarle matemáticas simples en Python. En el vídeo puedes ver como la red neuronal aprende a sumar, restar, multiplicar y dividir en pocos minutos.

Es una pequeña demostración, el resultado no es ni preciso ni usable en ningún caso práctico (al menos a mi no se me ocurre ninguno), es sólo una forma de compartir la experiencia para que podáis ver lo sencillo que es empezar a hacer vuestros pinitos con el Machine Learning.

Puedes ver el resultado del código creado en mi cuenta de GitHub, en el repositorio que he llamado Neural Network aprendiendo Matemáticas.

¿Que te ha parecido? ¿Se te ocurre alguna idea interesante para el próximo vídeo? ;)

Entrenando una red neuronal en Python

Mucha gente cree que utilizar el Machine Learning para resolver problemas cotidianos es muy complicado, pero no es del todo cierto, en realidad conociendo algunas herramientas en poco rato se puede tener en marcha un sistema que aprenda a dar respuesta a un problema y se adapte con el tiempo para mejorar su precisión.

He creado un pequeño juego de Piedra Tijeras Papel para enseñar a una red neuronal (muy simple, sin hacer ningún tipo de configuración y “fine tuning”) y mostrar cómo la red neuronal aprende poco a poco y mejora con cada iteración su precisión.

El vídeo está hecho de madrugada, así que espero que sepáis perdonar mi lentitud a la hora de detectar los fallos que yo mismo voy cometiendo durante la creación del código.

¿Que te ha parecido? ¿Has conseguido llegar hasta el final sin dormirte?

Update: He subido el Notebook a mi cuenta de GitHub con el nombre PiedraTijerasPapel – LIVE