AI Builder es la
nueva funcionalidad de Power Platform, un nuevo servicio capaz de incorporar
Inteligencia Artificial a nuestras aplicaciones bajo esa filosofía de “Low
Code/No Code”. Es decir, aunque no tengas ni idea de Inteligencia Artificial,
ahora no es un obstáculo para proporcionar funcionalidades inteligentes a tus Power
Apps y a tus flows (en Power Automate).
Obviamente en
Azure podemos construir nuestros propios modelos en los servicios cognitivos,
pero hay que bajar a un nivel más funcional: Si tenemos casos de negocio específicos,
¿no sería genial poder conectar módulos inteligentes a nuestras aplicaciones
sin depender del desarrollo?
He podido juguetear
y diseñar Pruebas de Concepto que integran AI Builder y el tiempo invertido es,
como todo en la Power Platform, bastante reducido para los buenos resultados
obtenidos (aquí podríamos discutir sobre la complejidad de datos y casos de uso que manejan
estas soluciones).
Decidí crear una
pequeña aplicación personal (wAIsh it) para poner a prueba la funcionalidad y manejo del
modelo de detección de objetos (hay que destacar que en el momento de escribir
este post, aún se encuentra en Preview!). Estructurado en fases, decidí crear dos modelos de detección
de objetos siguiendo las recomendaciones de la propia documentación de Microsoft y comparar los resultados.
¡Vamos allá!
Requisitos
- >> Necesitamos identificar, precisamente, ¿qué queremos detectar? ¿Frutas?¿Ropa? ¿Iconos? En este ejemplo quiero detectar iconos en etiquetas de ropa. Recopilamos entonces una lista de todos aquellos objetos que queremos detectar
- >> Imágenes, en formato JPG, PNG o BMP con un tamaño máximo de 6MB de tus objetos a detectar. Tras más de 20 modelos entrenados mi recomendación es: subid fotos de todos los ángulos, con distinta iluminación, con más de un objeto en la imagen; si el objeto tiene una forma no uniforme, intentad colgar tantas fotos de posiciones distintas. Cuanto más rico y variado sea tu set de entrenamiento 😊 mejor.
- >> 15 Imágenes mínimo por elemento que queremos detectar (necesario para crear el modelo), pero Microsoft recomienda hasta 50 para que el modelo tenga buena fiabilidad. El conjunto de imágenes lo identificaremos como "data set".
Empezamos
Accedemos al
entorno Power Apps o Power Automate (podemos acceder a AI Builder desde ambas
plataformas) y vamos a la opción de “Construir”. Ahí veremos la lista de
modelos que podemos crear y personalizar con nuestro set de datos, se nos
proporciona también un conjunto de modelos ya entrenados para integrar
directamente a nuestras soluciones.
Lo primero de
todo es darle un nombre, sed creativos (pero precisos).
A continuación nos pedirá la lista de etiquetas, elementos, que queremos detectar en las imágenes. Mi recomendación: trabajad íntegramente con CDM. Crearos una entidad, proporcionadle unos atributos y cread así el modelo. De este modo podréis identificar estas etiquetas y acceder a sus atributos una vez el modelo os detecte el objeto en una imagen. Mi entidad se llama “Treatment” y entre sus atributos elijo el Nombre, la etiqueta por la que identifico al elemento.
A continuación nos pedirá la lista de etiquetas, elementos, que queremos detectar en las imágenes. Mi recomendación: trabajad íntegramente con CDM. Crearos una entidad, proporcionadle unos atributos y cread así el modelo. De este modo podréis identificar estas etiquetas y acceder a sus atributos una vez el modelo os detecte el objeto en una imagen. Mi entidad se llama “Treatment” y entre sus atributos elijo el Nombre, la etiqueta por la que identifico al elemento.
A continuación
nos pide que subamos las imágenes (¡espero que tengáis buena conexión a
internet!).
Simplemente selecciona la carpeta donde has recopilado todas las imágenes de tu data set.
Simplemente selecciona la carpeta donde has recopilado todas las imágenes de tu data set.
Una vez subidas
llega la tediosa pero necesaria tarea de etiquetar imagen por imagen. Tendremos
ir por cada imagen y encuadrar el objeto o objetos que se encuentran en la
imagen y seleccionar la etiqueta. Es una tarea muy entretenida, pero buena
noticia: en la parte superior a mano derecha tenéis la opción de guardar el
progreso y continuar más tarde 😊 Creedme, cuando empecéis a cansaros os
irá bien una pausa. En la parte derecha podréis ver el conteo total, solo
cuando todas las etiquetas lleguen a un mínimo de 15, podrás terminar de
configurar el modelo.
¡Enhorabuena! Ha pasado
lo peor. Ahora haz un repaso en el sumario final y solo nos queda… ¡entrenar
nuestro modelo! Cuando le des a entrenar, especialmente al modelo de detección en
imágenes, ya le puedes dar tiempo. Te diría de irte a tomar un café, pero
depende del número de imágenes, mejor vete a comer.
En cualquier
momento podemos volver a nuestro entorno Power Apps/Power Automate y en el
apartado de AI Builder, acceder a nuestros modelos.
Una vez nuestro
modelo ya esté entrenado se nos proporcionará una puntuación. Esta puntuación
(de 1 a 100) nos muestra la fiabilidad de nuestro modelo. Vaya, parece que
necesitaré más imágenes, pues una puntuación de 47 sobre 100 pues no es muy
buena señal.
Antes de utilizar
el modelo e integrarlo en Power Apps o Power Automate, podéis hacer un test
rápido: comprobar con otra imagen, que no haya formado parte del test, qué
fiable es el modelo.
Tengo un caso de éxito
para vosotros, este modelo creado con más de 50 imágenes por objeto es bastante
más fiable 😊
¿Significa una
puntuación baja que mi modelo no reconocerá nada?
Creo que es
depende del tipo de objetos que estemos reconociendo. Yo os puedo decir que en
el caso de minúsculos iconos en las etiquetas de ropa (seamos sinceros, la
resolución y la nitidez será bastante limitado) funciona bastante bien. Según
las estadísticas, tras pasarle 35 imágenes nuevas, solo en 9 hizo detecciones erróneas (y era porque los símbolos eran muy muy parecidos). Eso es un % de error solo del 25.
Estad atentos a
siguientes entradas, os enseñaré cómo he integrado estos modelos en mi
aplicación 😊 Tanto vía Power Apps como Power Automate.
¡Gracias por
leerme!
0 Comentarios