Cómo crear algoritmos partiendo del trabajo rutinario en las empresas: HUMANS IN THE LOOP

CASI, pero no, ¡estamos hablando de Machine Learning!” by Austin Neill on Unsplash
Human-in-the-loop (HITL) es una rama de la inteligencia artificial que aprovecha la inteligencia humana y de la máquina para crear modelos de aprendizaje automático. En un enfoque tradicional HITL, las personas están involucradas en un círculo virtuoso donde entrenan, ajustan y prueban un algoritmo en particular.
fuente

Si preguntara en una sala: ¿Cuáles son las dificultades mas grandes que tienen las empresas al momento de afrontar un proyecto de Machine Learning?, ¿Qué dirían?

Si alguna vez lo intentaron, probablemente algo parecido a:

A) No tenemos suficientes datos.

B) No sabemos si los datos los estamos obteniendo en la forma correcta.

C) No sabemos si los datos que obtenemos son relevantes.

D) Es muy fácil lograr algoritmos que funcionan 70% de las veces, pero extremadamente difícil lograr que funcione 99% de las veces.

La buena noticia es que hay formas de atacar estos problemas, y lo que les quiero contar en el artículo de hoy, es una de las técnicas que usamos en KONA para trabajar con nuestros clientes.

En general, Humans-in-the-loop funciona así:

Flujo estándar de HITL — fuente

Primero, los humanos etiquetan los datos. Esto proporciona un modelo de alta calidad (y altas cantidades de) datos de entrenamiento. Un algoritmo de aprendizaje automático aprende a tomar decisiones a partir de estos datos.

Luego, los humanos ajustan el modelo. Esto puede suceder de diferentes maneras, pero comúnmente, los humanos obtendrán datos para explicar el sobreajuste, para enseñarle a un clasificador sobre casos límite, o nuevas categorías en el ámbito del modelo.

Por último, las personas pueden probar y validar un modelo anotando sus resultados, especialmente en lugares donde un algoritmo no confía en un juicio o demasiado confiado en una decisión incorrecta.

Ahora, es importante tener en cuenta que cada una de estas acciones comprende un ciclo de retroalimentación continuo.

El aprendizaje automático con inteligencia humana significa tomar cada una de estas tareas de entrenamiento, ajuste y prueba y alimentarlas de nuevo en el algoritmo para que se vuelva más inteligente, más seguro y más preciso.

“En otras palabras, ¡trabajo en equipo!…con algoritmos” by rawpixel on Unsplash

En este enfoque, especialmente en la etapa de la introducción de datos en un clasificador, a veces se le llama aprendizaje activo.

La participación humana puede venir de dos formas diferentes:

A) Ayudar a etiquetar el conjunto de datos original que se alimentará en un modelo de aprendizaje automático.

B) Ayudar a corregir predicciones inexactas que surgen a medida que el sistema entra en funcionamiento.


Y ese es el resumen ejecutivo….pero, ¿qué significa eso para nuestra empresa?

¡SIGNIFICA MEJORES RESULTADOS!

La evidencia sugiere que una variante del famoso 80:20 de Pareto conduce a generar los sistemas de aprendizaje automático más precisos hasta la fecha, con un 80% de IA , un 19% de entrada humana y un 1% de aleatoriedad desconocida para equilibrar las cosas. — fuente

Muchas veces en nuestros clientes el trabajo ya está siendo realizado de forma manual por una persona.

Una compañía de seguros puede estar revisando a mano cientos de fotos para identificar si un auto que se va a asegurar por primera vez está dañado y al mismo tiempo, identificar y validar el modelo y marca del coche.

Otra compañía de retail puede estar intentando crear un algoritmo de Computer Vision para conectarse a las cámaras de seguridad de sus tiendas y evaluar cuando sus góndolas están vacías, dar aviso y acelerar el proceso de reposición.

Este tipo de proyectos serían extremadamente difíciles de afrontar si los atacaramos con una metodología mas clásica. El volumen de datos necesario para lograr buenos rendimientos sería tremendo, y aún así, probablemente no se logre un buen % de confianza.

Por todas estas razones creamos

Human-in-the-loop empresarial

PROPHET permite que las empresas generen proyectos de machine learning extremadamente rápido. En lugar de apuntar a generar un set de datos tremendamente grande desde el día 0 para crear un algoritmo usable, PROPHET busca aprovechar el trabajo que ya se realiza de forma manual en la organización, utilizando Humans-in-the-loop.

Creando un proyecto nuevo en PROPHET

La herramienta permite montar un flujo de trabajo que creará los insumos de la forma correcta para que, eventualmente, tengamos nuestro algoritmo.

¿Recuerdan que hace unos años, Facebook nos permitía etiquetar nuestras fotos?. Adivinen qué, Facebook nos estaba usando para entrenar el algoritmo que hoy detecta nuestras caras y etiqueta automáticamente nuestras fotos…así fue como pudo crear un algoritmo extremadamente bueno, de forma paulatina.

PROPHET PUEDE HACER LO MISMO EN SU EMPRESA

PROPHET permite que las empresas utilicen la misma metodología, sacando el máximo provecho posible del trabajo que ya se realiza hoy, para que en un futuro, podamos crear un algoritmo de IA que reduzca costos o mejore la calidad del trabajo realizado.

Ejemplo de la bandeja de entrada de uno de los humanos que participa en un proyecto de PROPHET

¿Cómo implementaríamos el algoritmo para detectar las imágenes de autos de la empresa de seguros en PROPHET?

  1. Primero se crea el proyecto y se asignan usuarios.
  2. Luego se crean todos los pasos del proceso que ya se realiza hoy.
  3. Finalmente los usuarios (empleados) continuan trabajando como hoy en día, solo que al revisar una foto de un auto, etiquetarán: modelo, marca y si está dañado o no.

¡Y listo!, el sistema se pone en producción y todo sigue como de costumbre. A medida que pasa el tiempo se va generando un set de datos etiquetado de la forma correcta y cuando se llega a una buena masa crítica se crea el primer algoritmo y se prueba.

Al comienzo, los casos mas comunes (ese 80% que comentamos antes) se resolveran bien, pero en el 20% restante fallará y los Humanos dirán el resultado correcto (es decir, hacen lo que hacen ya hoy en día).

Eventualmente con la ayuda de PROPHET y nuestros Data Scientists el algoritmo va aprendiendo, y a medida que pasa el tiempo, se logra el nivel de calidad deseado.


Eso es todo, vimos como podemos utilizar una metodología simple de trabajo para potenciar tremendamente los resultados y acelerar la adopción de Machine Learning en nuestras organizaciones, bajando el costo y aprovechando el máximo lo que ya hacemos hoy.

Así que la única pregunta que queda por responder es:

¿Qué algoritmo van a crear hoy?