#NetUniversity – Introducción a Machine Learning (Curso Online)

Buenas!

Existen muchos recursos para comenzar a aprender Machine Learning. Sin embargo, suele ser complicado elegir uno que realmente se adapte a nuestro perfil, y que nos permita aprender de forma coherente y concisa los principios de Machine Learning. Si trabajas con tecnologías Microsoft o eres un programador .Net, este curso es para ti.

Durante este curso veremos los conceptos principales que explican el estado actual de Machine Learning; y aprenderemos utilizando ML.NET (Machine Learning.Net ). ML.Net es un conjunto de herramientas que ha alcanzado de forma oficial su versión Release y que será la base del aprendizaje de Machine Learning. Veremos escenarios para aprendizaje supervisado y no supervisado, escenarios de análisis de sentimientos de texto, escenarios de integración con otras tecnologías de ML, como ONNX o TensorFlow, y mucho más.

Introducción a Machine Learning

Cuando termines el curso, estoy 100% convencido que podrás aplicar estos conocimientos para encontrar los mejores escenarios de ML en tus investigaciones o tu trabajo del día a día.

Y por cierto, tengo algunos cupones de descuento, si los quieres contáctame! Y puedes revisar algunos de mis posts de Machine Learning.Net aquí.

Saludos @ Toronto

El Bruno

#Podcast – Hablando de #Azure Notebooks con Rodrigo (@rdiazconcha) en Interfaz (podcast en Español)

Photo by Tommy Lopez on Pexels.com

Buenas!

Pues resulta que he tenido la suerte de participar, una vez más, en Interfaz: el podcast que dirige y coordina mi amigo Rodrigo Diaz Concha (link). En esta oportunidad, he hablado de uno de los productos en Preview que tenemos en Azure: Azure Notebooks.

Este producto suena raro para un .Net Developers, sin embargo, la potencia, productividad y capacidades de colaboración que proveen las Jupyter notebooks, son algo que la comunidad de Python aprovecha desde hace tiempo.

Mejor dejo el link del podcast y espero que lo disfruten:

Interfaz Podcast Episodio 113 – Azure Notebooks con Bruno Capuano

Saludos @ Toronto

El Bruno

#Training – @_NetUniversity, excelentes cursos online de Azure, .Net, y más. Y en las próximas semanas terminaré uno de #MachineLearning para programadores .Net!

Buenas!

Hoy toca volver a escribir en Español, y es para presentar una plataforma excelente de aprendizaje:

Net-University

Programación, bases de datos, .Net, JavaScript, Azure, Windows, Linux y más. En Net University te brindamos entrenamiento de alta calidad con profesionales experimentados, al mejor costo / beneficio que puedas encontrar.

Net University

Actualmente hay 3 cursos disponibles y estamos terminando varios más, incluido uno de Machine Learning para .Net developers, ¡que saldrá a la luz a final de Junio!

Mas información en este link

Saludos @ Burlington

El Bruno

#Flow – Detener el salva pantallas utilizando botones Flic, procesos con @microsoftflow, @powershell y mucho mas ! (gracias @ShortcutLabs)

Buenas !

Llevar adelante un Centro de Innovación es una experiencia que es 50% de problemas y 50% de diversión. En estos momentos estamos actualizando nuestro IC en Toronto, y esto significa que tenemos muchas nuevas screens (entre otras cosas) y esto también supone un desafío al momento de pensar en ahorro de energía.

Por suerte, las TVs se apagan automáticamente cuando no hay signal. El desafío era comprender como enviar signal desde dispositivos con Windows 10, y claro, antes de llegar a este punto, pasamos por la experiencia del Screen Saver.

Hay soluciones completas y complejas para manejar estos escenarios de Digital Signage. En nuestro caso, la idea era ver de hacer algo utilizando parte de la tecnologia que conocemos para solucionar este escenario.  @ChloeCondon escribió un par de tweets donde menciono a los Flic buttons, y se me ocurrió que era el momento de probarlos. Inicialmente pensé en este proceso

  • Clic en un botón Flic
  • El boton lanza un MS Flow
  • MS Flow apaga el screen saver

Parece muy simple, ademas la conexion entre MS Flow y Flic esta disponible en Preview! podemos suscribir los eventos clic, doble clic y hold como triggers de Microsoft Flow.

F1 settings for a button

El siguiente paso es crear un Flow para procesar el evento del botón. De alguna manera tengo que procesar el trigger de MS Flow para detener el screen saver en un ordenador con Windows 10. Una forma casi natural de trabajar con MSFlow es crear un archivo en el ordenador con Windows 10. Inicialmente hice algunas pruebas con Microsoft Flow Gateways, que parece ser la herramienta ideal para compartir información entre origenes de datos on premises y MS Flows en el cloud.

Sobre un MS Flow en blanco, agregue el trigger de Flic button. Las settings del trigger permiten elegir el botón y el tipo de acción para la suscripción.

01 microsoft flow flic button trigger02 microsoft flow flic button settings

Llego el momento de configurar Gateways. Y, básicamente, no fue de mi agrado. Path en modo hard-code, lo mismo para guardar credenciales, algo no me parecía una buena idea. Este fue el momento de salir a correr un poco para tener nuevas ideas.

03 microsoft flow gateway file system configuration

Por suerte, ya tenemos un sistema de archivos distribuido, que es seguro y bastante potente. Tambien tengo la suerte de que el mismo esta funcionando en todos los ordenadores de demo de Windows 10: OneDrive. Y como bonus, OneDrive tiene muchos triggers y acciones para trabajar con Microsoft Flow!

Llego el momento de actualizar mi escenario

  • Clic en un botón Flic
  • Lanzar un MS Flow
  • MS Flow crea un archivo en OneDrive
  • De alguna manera esto deshabilita el screen saver

El MS Flow es mas bien simple

04 microsoft flow flic button trigger and save a OneDrive file

Un par de apuntes.

La expresión convertTimeZone() esta pensada para poder tener nombres de archivos unicos para cada nuevo archivo:

convertTimeZone(utcnow(),’UTC’,’W. Europe Standard Time’,’yyyy MM dd HH mm ss’)

El contenido del archivo no es importante (por ahora). He aquí un ejemplo de archivos creados con este Flow.

onedrive files created by flic clic

Esto va tomando forma. Despues de presionar el boton Flic, en pocos segundos, OneDrive sincroniza el nuevo archivo en todos los ordenadores con Windows 10. Es el momento de crear un File System Watcher para detectar los cambios y detener el screen saver. Como era de esperar, mi primera idea fue crear una .Net Core Console App para hacer esto, sin embargo recorde que mis amigos IT Pro hacen magia con PowerShell.

Una busqueda en internet me llevo a leer el siguiente post de Jessica Cook: Flow of the Week: Local code execution, donde cierra un escenario muy parecido al que comento en este post.  Ella si ha utilizado gateways, y yo me dedique a modificar un poco su PS Script:

$watcher = New-Object System.IO.FileSystemWatcher
$watcher.Path = "<Folder to Watch>"
$watcher.Filter = "*.*"
$watcher.IncludeSubdirectories = $true
$watcher.EnableRaisingEvents = $true 
$action = {
Start-Process "taskkill /f /im bubbles.scr"
} 
Register-ObjectEvent $watcher "Created" -Action $action
while ($true) {sleep 5}

Listo! Una vez agregado el PowerShell script al inicio de Windows, los ordenadores de demo, ya estan en modo “sync to stop screen saver”. Y es presionar el boton y ver como se deshabilitan los screen savers!

El proceso

  • Clic en un botón Flic
  • Lanzar un MS Flow
  • MS Flow crea un archivo en OneDrive
  • PS Script para detectar nuevos archivos en un directorio
  • Cuando se detecta un archivo, se detiene el proceso del Screen Saver

Hay mucho margen de mejora, como por ejemplo detener el screen saver, en lugar de matar el proceso del mismo. He intentado con SendKeys y moviendo el mouse con PS, pero lo unico que me ha funcionado es el kill process!

Importante tambien es recordar que esto no es realtime, algunas veces tarda 1 segundo y otras 10 segundos. Lo importante es que funciona y es una buena historia para contar en el IC.

Happy coding!

Saludos @ Toronto

El Bruno

References

#Event – Materiales utilizados durante #GlobalAINight con los amigos de @metrotorontoUG

 

Buenas !

Después de una noche genial con los amigos de Metro Toronto UG, llega el momento de compartir los materiales que utilice durante la sesión. La idea inicial era hablar un poco de Azure Notebooks, y de alguna manera terminamos hablando también de Cognitive Services y Custom Vision, fue genial!

Para comenzar, los 15 min con el video de la Keynote:

Mis Slides

Y algunos de los links que utilicé durante la sesión

My posts on Custom Vision and ONNX

  1. Object recognition with Custom Vision and ONNX in Windows applications using WinML
  2. Object recognition with Custom Vision and ONNX in Windows applications using WinML
  3. Object recognition with Custom Vision and ONNX in Windows applications using Windows ML, drawing frames
  4. Object recognition with Custom Vision and ONNX in Windows applications using Windows ML, calculate FPS
  5. Can’t install Docker on Windows 10 Home, need Pro or Enterprise
  6. Running a Custom Vision project in a local Docker Container
  7. Analyzing images in a Console App using a Custom Vision project in a Docker Container
  8. Analyzing images using PostMan from a Custom Vision project hosted in a Docker Container
  9. Building the CustomVision.ai project in Docker in a RaspberryPi
  10. Container dies immediately upon successful start in a RaspberryPi. Of course, it’s all about TensorFlow dependencies
  11. About ports, IPs and more to access a container hosted in a Raspberry Pi
  12. Average response times using a CustomVision.ai docker container in a RaspberryPi and a PC

Windows 10 and YOLOV2 for Object Detection Series

Saludos @ Toronto

El Bruno

#Office – Ideas Tool para Microsoft Excel basado en AI (#Excel, #AI)

Buenas !

Hoy voy a cambiar a Excel para compartir algunas de las otras increíbles características de Inteligencia Artificial en Microsoft Office: Excel Ideas.

Excel Ideas es esta nueva herramienta que tenemos en Excel que nos permitirá obtener algunas ideas sobre información seleccionada en una hoja de trabajo. Para utilizar esta herramienta, necesitamos seleccionar un conjunto de datos y hacer clic en el botón [ideas] en la cinta de opciones

Microsoft Excel Ideas.jpg

Para escribir este post, he descargado un conjunto de muestra de datos espaciales de SpatialKey (ver referencias). El archivo de seguro de muestra contiene 36.634 registros en Florida para 2012 de una compañía de muestra que implementó un plan de crecimiento agresivo en 2012. Hay columnas de valor asegurado total (TIV) que contienen TIV de 2011 y 2012, por lo que este conjunto de datos es ideal para probar la característica de comparación. Este archivo tiene información de dirección que puede elegir para geocodificar, o puede usar la latitud/longitud existente en el archivo.

Una vez que seleccioné el conjunto completo de datos, es bueno ver las siguientes ideas

Si usted es un usuario de PowerBI, este tipo de información y análisis será familiar. Para mí es bueno ver que tenemos estas capacidades en un solo clic en una herramienta popular como Excel.

Hay más de + 40 Insights y es agradable para navegar por ellos y encontrar que en el Condado de Miami Dade, el deducible del sitio es mayor para las construcciones de marco de acero y hormigón armado.

Microsoft Excel Ideas Sample 03

Con 2 clic podemos analizar algunos datos abiertos relacionados con el tráfico en Ontario y ver cómo el tráfico aumenta lentamente en Hwy 69 desde 1988 hasta 2010.

Microsoft Excel Ideas Sample 04

Una herramienta increíble dentro de Excel para obtener rápidamente información sobre nuestros datos.

Happy coding!

Saludos @ Toronto

El Bruno

References

My posts

#AI – Los proyectos de CustomVision.ai se pueden exportar para ser utilizados con el Vision AI Developer Kit

Buenas !

Estaba planeando escribir un par de posts sobre las características de Inteligencia Artificial en la suite de Microsoft, cuando comprobé esta característica disponible en CustomVision.ai.

Custom Vision export to Vision AI Dev Kit.jpg

El año pasado, Microsoft lanzó un programa llamado [Vision AI Developer Kit for IoT Solution Makers]

Integrado con Azure IoT Edge y trabajando con el servicio de aprendizaje automático de Microsoft Azure (versión preliminar pública), este kit de inicio de Azure IoT permite a los desarrolladores crear una solución de IA de visión y ejecutar sus modelos de IA en el dispositivo.

vision ai dev kit camera.png

El dispositivo utiliza la plataforma de inteligencia de Qualcomm Vision para la aceleración de hardware del modelo de AI para ofrecer un rendimiento de inferencia superior. Y está diseñado específicamente para implementar modelos de AI creados con Azure Machine learning con Azure IoT Edge.

Después de leer un poco me di cuenta, que también se puede desplegar en esta cámara, Modelos ONNX de la galería de Azure AI, modelos de Azure ML y, por supuesto, modelos personalizados creados con CustomVision.ai. Todo es compatible y administrado con Azure IoT Edge.

Por lo tanto, ahora es el momento de comprobar mis fechas de entrega para ver cuánto tiempo tengo que esperar a que llegue mi dispositivo y empezar a comprobar la opción de exportación disponible en el portal CustomVision.ai!

Happy Coding!

Saludos @ Toronto

El Bruno

References

My posts on Custom Visopn

  1. Object recognition with Custom Vision and ONNX in Windows applications using WinML
  2. Object recognition with Custom Vision and ONNX in Windows applications using WinML
  3. Object recognition with Custom Vision and ONNX in Windows applications using Windows ML, drawing frames
  4. Object recognition with Custom Vision and ONNX in Windows applications using Windows ML, calculate FPS
  5. Can’t install Docker on Windows 10 Home, need Pro or Enterprise
  6. Running a Custom Vision project in a local Docker Container
  7. Analyzing images in a Console App using a Custom Vision project in a Docker Container
  8. Analyzing images using PostMan from a Custom Vision project hosted in a Docker Container
  9. Building the CustomVision.ai project in Docker in a RaspberryPi
  10. Container dies immediately upon successful start in a RaspberryPi. Of course, it’s all about TensorFlow dependencies
  11. About ports, IPs and more to access a container hosted in a Raspberry Pi
  12. Average response times using a CustomVision.ai docker container in a RaspberryPi and a PC

Windows 10 and YOLOV2 for Object Detection Series

 

#CognitiveServices – Nuevo Servicio: Anomaly Detector

Buenas!

Durante estos días, estoy totalmente centrado en un increíble evento en Avanade Canada: Canada !nnovate Event, y casi me pierdo el lanzamiento de este nuevo servicio, en la familia Cognitive Services: Anomaly Detector.

Este fin de semana tenia pensado terminar mi sesión para la próxima Global AI Night (link), sin embargo, me parece que dedicaré un poco de tiempo para poder hablar del mismo en el próximo evento.

Después de pasar hoy en día leyendo sobre el servicio, parece que funciona con series de tiempo de datos y el uso de modelos específicos, se centran en las anomalías de los datos de la serie y .. ¡Magia! Creo que la documentación oficial lo explica mejor:

The Anomaly Detector API enables you to monitor and detect abnormalities in your time series data with machine learning. The Anomaly Detector API adapts by automatically identifying and applying the best-fitting models to your data, regardless of industry, scenario, or data volume. Using your time series data, the API determines boundaries for anomaly detection, expected values, and which data points are anomalies.

Detect pattern changes in service requests

More information: https://azure.microsoft.com/en-us/services/cognitive-services/anomaly-detector/

Saludos @ Burlington

El Bruno

#Event – Disrupt AI: #Hackathon

disrupt ai banner

Buenas !

DisruptAI es un hackathon de dos días patrocinado por Microsoft que te reta a crear soluciones de industria usando IA y datos, muchos datos.

¡ Voy a aprender y a guiar equipos para hackear y construir cosas asombrosas!

Más información y registro: https://www.eventbrite.ca/e/evoke-disruptai-hackathon-tickets-54971356808

Saludos @ Toronto

El Bruno

#AI – Subtítulos en tiempo real también disponibles en #PowerPoint para #MacOS

Buenas !

Wow, no he utilizado mi Mac en un par de días y hoy que he vuelto a utilizar la misma me he dado cuenta que la funcionalidad de subtítulos en tiempo real de PowerPoint is también esta disponible para Mac ! So cool !

Powerpoint subtitles in MacOS.png

Saludos @ Toronto

El Bruno