Zero One Few Shot Learning

 El aprendizaje automático se ha vuelto cada vez más popular a lo largo de los años, y muchas empresas invierten mucho en modelos de aprendizaje profundo para resolver sus problemas más complejos. Sin embargo, recopilar y etiquetar datos puede llevar mucho tiempo y ser costoso, lo que dificulta que muchas empresas comiencen. Es un equilibrio delicado que puede hacernos sentir un poco como Ricitos de oro: muy pocos datos y no funcionará, demasiados datos y se ajustará en exceso. Es suficiente para que cualquier empresa lo piense dos veces antes de sumergirse en el mundo del aprendizaje automático.

Este dilema ha llevado al surgimiento de enfoques alternativos como el aprendizaje cero/pocos/de una sola vez, que permite que las máquinas aprendan a partir de una cantidad limitada de datos o incluso de un solo ejemplo. ¿Cómo funcionan? ¿Son tan efectivos como los modelos tradicionales de aprendizaje profundo?

Disparo cero [Zero Shot Learning]

El aprendizaje de disparo cero es un tipo de aprendizaje automático que permite que un sistema se entrene sin tener ningún ejemplo de entrenamiento de la clase objetivo. Esto es útil porque nos permite aplicar nuestros modelos y técnicas en nuevos contextos donde no hay conjuntos de datos etiquetados disponibles.

Para lograr esto, necesitamos construir un mapeo entre la información de alto nivel y la imagen de entrada para determinar la etiqueta de clase. Esto se puede hacer utilizando un nuevo tipo de red neuronal llamada transformador, que se está convirtiendo rápidamente en lo último en muchas aplicaciones. Se ha demostrado que este enfoque funciona bien en tareas de procesamiento de lenguaje natural donde no hay ejemplos etiquetados disponibles, como cuando se intenta transcribir una grabación de audio a texto o traducir entre idiomas donde no hay corpus paralelos disponibles.


Disparo uno [One Shot Learning]

El aprendizaje único es una técnica que permite a los investigadores entrenar un algoritmo de aprendizaje automático en una pequeña cantidad de datos y luego hacer que funcione bien en un conjunto de datos mucho más grande.


La técnica utiliza la idea de que si entrena en un ejemplo de cada clase, el algoritmo podrá generalizarse a nuevos ejemplos de esa clase. Esto es sorprendente porque esperaríamos que el conjunto de entrenamiento se ajustara demasiado al ejemplo único y no generalizara bien. Pero, de hecho, resulta que este enfoque funciona sorprendentemente bien. El algoritmo está entrenado para comparar ejemplos y encontrar una coincidencia en un gran conjunto de datos relacionados.

El aprendizaje de una sola vez se utiliza hoy en día en muchas tareas de reconocimiento facial. Esto permite que estos productos funcionen de manera confiable mientras solo necesitan almacenar una imagen de referencia.


‍Pocos disparos [Few Shot Learning]

El aprendizaje de pocos disparos es un tipo de aprendizaje automático que se puede utilizar para resolver problemas con pocos ejemplos.

La idea detrás del aprendizaje de pocos disparos es simple: utiliza un concepto llamado conjunto de soporte para encontrar la coincidencia más probable para una entrada de un pequeño conjunto de ejemplos. Se necesitan algunos ejemplos porque el sistema necesita aprender de los ejemplos.En el aprendizaje automático tradicional, si está tratando de entrenar un sistema para que reconozca perros en fotos, debe proporcionarle suficiente información para que pueda distinguir entre diferentes tipos de perros (por ejemplo, Labrador Retriever vs. Poodle). Pero, ¿cuántas fotos deberías darle? Si no le das lo suficiente, se sobreajustará y no podrá hacer predicciones confiables.

La idea detrás de un conjunto de soporte es que miramos todas las coincidencias posibles para nuestra entrada y luego seleccionamos la que tiene más soporte entre nuestros ejemplos. Por ejemplo, si tenemos una imagen de un perro que podría ser un labrador retriever o un caniche (o cualquier otro tipo de perro), tomaremos todas las coincidencias posibles para cada tipo de perro y las clasificaremos según su similitud con el nuestro. imagen original (usando alguna métrica de distancia). Luego elegimos una de estas coincidencias como la etiqueta 'verdadera' para nuestra imagen de entrada.


¿Cuáles son las ventajas/inconvenientes?

En el pasado, a menudo era difícil para las empresas justificar el costo de recopilar y etiquetar datos para su uso en el aprendizaje automático. Pero con los avances recientes en el aprendizaje de cero/uno/algunos intentos, el aumento del aprendizaje profundo ha sido increíble. Los modelos se han vuelto más precisos y pueden hacer cosas que antes eran imposibles sin grandes cantidades de datos. 

Los modelos de aprendizaje profundo son caros de entrenar y pueden tardar mucho en estar listos para su uso en producción. Recopilar y etiquetar datos también es costoso, lo que dificulta que las empresas comiencen con el aprendizaje automático.

En el pasado, muchas empresas simplemente se quedaban con los árboles de decisión anticuados u otros modelos más simples porque no tenían los datos ni los recursos computacionales para entrenar un modelo de aprendizaje profundo. Ahora, gracias a una nueva investigación sobre arquitecturas de transformadores para redes neuronales profundas, el aprendizaje de disparo cero se vuelve factible para muchas aplicaciones: ¡podemos entrenar un modelo que puede hacer muchas cosas! Esto significa que no necesitamos modelos separados para cada aplicación; en cambio, podemos usar un modelo en múltiples dominios y productos.


Sin embargo, esto tiene un costo: los modelos de cero/uno/pocos disparos tienen menor precisión que los modelos regulares de aprendizaje profundo en tareas con grandes conjuntos de datos que lo abarcan todo. Esta sigue siendo un área activa de investigación en muchos dominios, por lo que hay menos herramientas entrenadas previamente para todas las aplicaciones/dominios.



¿Dónde puede utilizar estos enfoques?

Estos enfoques se usan a menudo en demostraciones y proyectos de prueba de concepto porque permiten a las empresas tener una idea de qué tan bien funcionarán sus algoritmos antes de invertir en recopilar más datos o contratar más empleados. También se usa en áreas donde la recopilación/etiquetado de datos es costosa o invasiva (p. ej., médica), áreas con una gran cantidad de datos mal etiquetados (p. ej., audio, imágenes, video) y cualquier tipo de tarea de reconocimiento facial. Si está trabajando en cualquier tipo de tarea de reconocimiento visual, el aprendizaje de tiro cero le permitirá entrenar un modelo sin tener acceso a ninguna imagen etiquetada con fines de entrenamiento.

El aprendizaje profundo ha permitido a los desarrolladores encontrar soluciones a problemas que antes no estaban resueltos. El aprendizaje de cero/uno/algunos intentos ha permitido que las computadoras comiencen a dar sentido al mundo que las rodea y es el próximo gran paso en el aprendizaje automático. Esperamos ver cómo estos desarrollos continuarán impulsando la inteligencia artificial a nuevos territorios.