Technical
Aumentar la eficiencia con Active Learning
Pedro Serrano · 3 de marzo de 2023
El problema: etiquetar datos es tedioso (y caro)
Existe una situación común en los proyectos de machine learning. Ha recopilado sus datos, los ha analizado, procesado y construido una arquitectura de modelo sofisticada. Después de muchas horas de entrenamiento y evaluación, llega a una conclusión desagradable: necesita más datos. Antes de ajustar su presupuesto para adquirir y etiquetar datos adicionales, le presento una forma de aumentar la eficiencia con Active Learning.
La solución: Active Learning
¿Cuál es esta solución? Active Learning parte de la idea de que un algoritmo de machine learning puede lograr mayor precisión con menos etiquetas de entrenamiento si tiene la capacidad de seleccionar los datos de los que aprende, es decir, si se le permite ser curioso (Settles, 2009).
En la práctica, proporcionamos a un modelo de machine learning datos sin etiquetar. Luego, a partir de las predicciones, muestreamos los puntos de datos que el modelo consideró más difíciles de predecir. Llegó el momento de activar la máquina más elegante e importante: el cerebro humano. Una vez obtenida la muestra, se la proporcionamos a un anotador humano (u oráculo) que decidirá si los datos merecen ser anotados. Finalmente, alimentamos el modelo con los datos recién anotados de nuestra muestra. Y voilá: esperamos que funcione.
La intuición es que proporcionar al modelo una muestra pequeña de datos difíciles de predecir puede mejorar el rendimiento del modelo tanto como proporcionarle todo el conjunto de datos. Hasta este punto, el proceso es bastante directo. Pero surge la pregunta inevitable: ¿cómo se muestrean los datos?
Muestrear sus datos
Como en cualquier aspecto del machine learning, no existe un enfoque único que funcione para todos los casos. Sin embargo, cuando se trata de muestreo, existen algunas soluciones probadas que merecen consideración. Por ejemplo, si está construyendo un modelo de clasificación probabilística, una buena medida podría ser la incertidumbre. El muestreo por incertidumbre es una estrategia muy popular basada en evaluar cuánta incertidumbre tiene un modelo al predecir un punto de datos. Un enfoque directo para obtener esta información es aplicar el Método del Menos Confiado a las predicciones o calcular la entropía de la predicción. Existen otros métodos que pueden ser útiles, como calcular cómo un cierto punto de datos modificará las predicciones del modelo (Expected Model Change) o incluso calcular cómo variarán las pérdidas de predicción (Expected Error Reduction). Estos métodos son más complejos y computacionalmente pesados, por lo que no son tan fáciles de aplicar.
Supongamos que tiene múltiples modelos entrenados en el conjunto de datos que desea etiquetar. En ese caso, puede aplicar el método Query-by-Committee, donde, para cada modelo, calcula las predicciones y luego selecciona los casos en los que los modelos más discrepan, permitiendo esencialmente que voten sobre qué datos deben etiquetarse. Un poco de democracia en su estrategia de IA puede mejorar significativamente su eficiencia de etiquetado. Si desea manipular la votación, siempre puede asignar pesos de votación diferentes para cada modelo. No lo juzgaremos.
Otro aspecto a considerar es la representatividad. Es fácil comprender que cuando su modelo le proporciona los datos que encuentra más difíciles de anotar, probablemente seleccionará algunos valores atípicos. Esto dependerá de su situación específica, pero generalmente querrá proporcionar al modelo datos representativos de la distribución de datos subyacente. Por ejemplo, si está trabajando con datos de imágenes con millones de adquisiciones, existe la posibilidad de que algunas imágenes sean completamente negras o estén completamente borrosas. Su modelo tendrá dificultades para etiquetar esos ejemplos, pero no ayudarán a mejorar su rendimiento.
Consideraciones prácticas
Ya conoce qué es active learning y cómo funciona. Sin embargo, hay aspectos más allá de la teoría que debe comprender. Para aprovechar plenamente esta herramienta, debe saber cómo aplicarla y de qué manera puede verse afectada por factores externos.
Errar es humano
El instrumento central de active learning es la intuición humana y la capacidad del oráculo (anotador humano) de aplicar esa misma intuición a un problema. Pero, como en cualquier otro experimento en otros campos, las herramientas podrían no funcionar como se espera. Según los datos que el oráculo esté analizando, puede encontrar algunos puntos de datos difíciles de entender. Además, si los datos están compuestos por, por ejemplo, imágenes médicas, el oráculo podría no tener los conocimientos necesarios para anotarlas, ya que algunas imágenes médicas son difíciles de comprender incluso para profesionales. Esto significa que las anotaciones variarán de una persona a otra.
Otro aspecto importante de la naturaleza humana es que las personas pueden verse afectadas por distracciones o fatiga. Por lo tanto, las anotaciones dependen de diferentes anotadores y también se ven afectadas por el entorno de la persona y el tiempo que ha dedicado al etiquetado. Incluso si la persona está concentrada y es conocedora, aún podría malinterpretar la tarea, por lo que es importante construir interfaces de usuario adecuadas y protocolos de etiquetado que proporcionen la información necesaria.
¡Cuidado con los costes!
Alguien podría pensar que reducir la cantidad de datos necesarios para entrenar un modelo reduce el costo general del entrenamiento. Sin embargo, ese costo lo asume el oráculo (y la persona que lo contrató), en forma de esfuerzo humano, tiempo (y dinero). Naturalmente, la tarea del oráculo debe ser lo menos ardua posible, por lo que el objetivo no debe ser solo reducir la cantidad de datos a anotar, sino también reducir el esfuerzo requerido para anotarlos. Por eso, en algunos casos, puede ser útil dejar que el modelo ayude, proporcionando "pre-anotaciones" o una predicción.
Saber cuándo parar
Cuando se utilizan sistemas de aprendizaje interactivo, es importante comprender en qué punto adquirir nuevos datos se vuelve más costoso que los errores cometidos por el modelo actual. Si requeriría recursos excesivos (por ejemplo, tiempo, dinero, etc.) para generar ganancias relativamente pequeñas, entonces podría argumentarse que, en algunos casos, podría no valer la pena utilizar active learning. Existe un límite para usar active learning, y comprender dónde está ese límite es importante.
¡Es hora de escuchar a su IA!
Ahora que conoce active learning, ¡pruébelo! Permita que el modelo seleccione los datos para usted mientras se relaja. Luego dedique tiempo a anotar esos datos mientras el modelo se relaja. La IA es una calle de dos sentidos, y descubrirá que la colaboración humano-máquina puede aumentar significativamente la eficiencia de su proyecto.
Si desea obtener más información sobre cómo utilizar información del modelo para mejorar sus proyectos, no dude en contactarme para discutir qué solución es mejor para usted.
¿Desea discutir esta idea con más detalle?
Programe una reunión con Rafael Cavalheiro
Conozca a Rafael Más información
