#MachineLearning – Hello World en ML o como crear una UWP App que utilice un modelo #ONNX local

Buenas!

Siguiendo la serie de posts de Windows Machine Learning, hoy voy a repasar un poco una de las apps de ejemplo que podemos encontrar entre los ejemplos de GitHub de Windows Universal Samples.

Comencemos por uno de los mas interesantes [SqueezeNet Object Detection Sample].

Este ejemplo utiliza un modelo llamado SqueezeNet que permite identificar el objeto predominante en una imagen. El modelo de SqueezeNet esta entrenado para reconocer mas de 1000 objetos y la verdad es que funciona bastante bien. Por ejemplo, veamos que valores retorna utilizando mi teclado y una taza.

0102

Bastante bien. Sin embargo, frente a una mala foto de Venom, el resultado no es tan bueno.

03

Pues bien, momento de analizar un poco el código. Lo 1ro que tenemos que tener en cuenta es que necesitamos utilizar una version de Windows 10 igual o superior a 17110. Actualmente esto significa ser parte del programa de Windows Insiders.

I4

En mi caso la version que tengo actualmente es 17120.1

I5

Para utilizar el modelo SqueezeNet, nuestra UWP app se sirve de 2 archivos

  • Labels.json. Contiene una lista con todos los labels (objetos) registrados en el modelo
  • SqueezeNet.onnx. Es el modelo de ML propiamente dicho

El funcionamiento de la app aprovecha la nueva API [Windows.AI.MachineLearning.Preview] para cargar el modelo ONNX, luego enlaza una imagen de entrada y procesa la salida de la evaluación para determinar los labels encontrados.

En el próximo post analizare un poco el código C# de la app porque me he quedado sorprendido de lo simple que es el funcionamiento. Aquí va de regalo

Happy Coding!

Saludos @ Burlington

El Bruno

References

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s