Zero-shot learning

Summary

Zero-shot learning (ZSL) es una configuración de problemas en aprendizaje profundo,[1]​ en la que, en el momento de la prueba, un alumno observa muestras de clases que no se observaron durante el entrenamiento, y necesita predecir la clase a la que pertenecen. El nombre es un juego de palabras basado en el concepto anterior de one-shot learning[1]​ en el que la clasificación puede aprenderse a partir de sólo uno, o unos pocos ejemplos.

Los métodos de ZSL suelen funcionar asociando clases observadas y no observadas mediante algún tipo de información auxiliar, que codifica propiedades distintivas observables de los objetos.  Por ejemplo, dado un conjunto de imágenes de animales para clasificar, junto con descripciones textuales auxiliares sobre el aspecto de los animales, un modelo de inteligencia artificial[2]​ que ha sido entrenado para reconocer caballos, pero al que nunca se le ha dado una cebra, puede reconocer una cebra cuando también sabe que las cebras se parecen a caballos rayados. Este problema se estudia ampliamente en visión artificial,[3]procesamiento del lenguaje natural[4][5]​ y percepción artificial.

Historia

editar

El primer artículo sobre Zero-shot learning en el procesamiento del lenguaje natural apareció en 2008, en un artículo de Chang, Ratinov, Roth y Srikumar, en la Asociación para el Avance de la Inteligencia 2008[6]​ (AAAI'08), pero el nombre que allí se dio al paradigma de aprendizaje fue clasificación sin datos. El primer artículo sobre ZSL en visión por computadora apareció en la misma conferencia, con el nombre de Zero-data learning. El término apareció por primera vez en la literatura en un artículo de Palatucci, Hinton, Pomerleau y Mitchell en la Conferencia Sobre el Sistema de Procesamiento de Información Neuronal del 2009[7]​ NIPS'09 en 2009. Esta terminología se repitió más tarde en otro artículo sobre visión por computador y el término ZSL se impuso como una derivación del one-shot learning que se había introducido en la visión por computador años antes.

En visión por computadora, los modelos de ZSL aprenden los parámetros de las clases vistas junto con sus representaciones de clase y se basan en la similitud representacional entre las etiquetas de clase para que, durante la inferencia, las instancias puedan clasificarse en nuevas clases.

En el procesamiento del lenguaje natural, la dirección técnica clave desarrollada se basa en la capacidad de "entender las etiquetas", es decir, representar las etiquetas en el mismo espacio semántico que el de los documentos que hay que clasificar. Esto permite la clasificación de un único ejemplo sin observar ningún dato anotado, la forma más pura de clasificación de Zero-shot. El artículo original utilizaba la representación del Análisis Semántico Explícito (Explicit Semantic Analysis por sus siglas en inglés ESA[8]​), pero otros artículos posteriores utilizaron otras representaciones, incluidas representaciones densas. Este enfoque también se extendió a dominios multilingües, tipificación fina de entidades y otros problemas. Además, más allá de depender únicamente de las representaciones, el enfoque computacional se ha ampliado para depender de la transferencia de otras tareas, como la vinculación textual y la respuesta a preguntas.

El documento original también señala que, más allá de la capacidad de clasificar un solo ejemplo, cuando se da una colección de ejemplos, con la suposición de que provienen de la misma distribución, es posible hacer una mejora del rendimiento de una manera similar a la semisupervisada (o aprendizaje transductivo).[9]

A diferencia de la generalización estándar en el aprendizaje automático, donde se espera que se clasifiquen correctamente las nuevas muestras en clases que ya han observado durante el entrenamiento, en ZSL no se han dado muestras de las clases durante el entrenamiento del clasificador. Por tanto, puede considerarse un caso extremo de adaptación al dominio.

Requisitos previos para las clases de ZSL

editar

Naturalmente, hay que dar algún tipo de información auxiliar sobre estas clases de ZSL y este tipo de información puede ser de varios tipos.

  • Aprendizaje con atributos: las clases van acompañadas de una descripción estructurada predefinida. Por ejemplo, para las descripciones de aves, podría incluir "cabeza roja", "pico largo". Estos atributos suelen estar organizados de forma compositiva estructurada y tener en cuenta esa estructura mejora el aprendizaje. Aunque este enfoque se ha utilizado sobre todo en la visión por computadora, también hay algunos ejemplos en el procesamiento del lenguaje natural.[2]
  • Aprendizaje a partir de descripciones textuales: Como se ha señalado anteriormente, ésta ha sido la dirección clave que se ha seguido en el procesamiento del lenguaje natural. En este caso, se considera que las etiquetas de clase tienen un significado y a menudo se completan con definiciones o descripciones de texto libre en lenguaje natural. Esto podría incluir, por ejemplo, una descripción Wikipedia de la clase.[10]
  • Similitud entre clases: Aquí, las clases están incrustadas en un espacio continuo. Un clasificador sin ejemplos previos puede predecir que una muestra corresponde a alguna posición en ese espacio, y la clase incrustada más cercana se utiliza como clase predicha, aunque no se hayan observado tales muestras durante el entrenamiento.

ZSL generalizado

editar

La configuración ZSL anterior supone que, en el momento de la prueba, sólo se dan muestras de Zero-shot, es decir, muestras de nuevas clases no vistas. En el ZSL generalizado, en el momento de la prueba pueden aparecer muestras tanto de clases nuevas como conocidas. Esto plantea nuevos retos para los clasificadores en el momento de la prueba, porque es muy difícil estimar si una muestra dada es nueva o conocida. Algunos enfoques para manejar esto incluyen:

  • Un módulo de compuerta, se entrena primero para decidir si una muestra dada pertenece a una clase nueva o a una antigua, y luego, en el momento de la inferencia, emite una decisión dura, o una decisión probabilística suave
  • Un módulo generativo, que se entrena para generar una representación de características de las clases no vistas —un clasificador estándar puede entonces entrenarse en muestras de todas las clases, vistas y no vistas.

Dominios de aplicación

editar

ZSL se ha aplicado a los siguientes campos:

Referencias

editar
  1. a b Gonzalez Velasco, Ruben (2024). «Analizando el Impacto de Modelos Preentrenados con Deep Learning en Tareas de Visión Artificial». 
  2. a b Sánchez Ramos, Rolando (2023). «Fenómenos intrínsecos en clasificación de imágenes sin ejemplos». 
  3. wwlpublish. «Aspectos básicos de Microsoft Azure AI: Computer Vision - Training». learn.microsoft.com. Consultado el 2 de mayo de 2025. 
  4. a b Vásquez, Augusto Cortez; huerta, Hugo Vega; Quispe, Jaime Pariona; Huayna, Ana Maria (30 de diciembre de 2009). «Procesamiento de lenguaje natural». Revista de investigación de Sistemas e Informática 6 (2). ISSN 1816-3823. Archivado desde el original el 24 de noviembre de 2024. Consultado el 2 de mayo de 2025. 
  5. a b Hernández, Myriam Beatriz; Gómez, José M. (31 de julio de 2013). «Aplicaciones de Procesamiento de Lenguaje Natural». Revista Politécnica (32). ISSN 2477-8990. Consultado el 01-05-2025. 
  6. «AAAI Conference on Artificial Intelligence». AAAI (en inglés estadounidense). Consultado el 2 de mayo de 2025. 
  7. Staff, Forbes (16 de diciembre de 2024). «NeurIPS, la convención de los mejores en IA, refleja el creciente auge del sector». Forbes México. Consultado el 2 de mayo de 2025. 
  8. Nitish, Aggarwal, (2012-12). «Cross-Lingual Linking of News Stories using ESA». oa.upm.es (en inglés). Archivado desde el original el 1 de abril de 2023. Consultado el 2 de mayo de 2025. 
  9. Peña Peña, Carlos (2012). «Aprendizaje transductivo con TSVM en la brecha semántica para el reconocimiento de imágenes». Repositorio Institucional Universidad Garcilaso. Consultado el 02-05-2025. 
  10. Soria Olivas, Emilio (2023). Sistemas de Aprendizaje Automático. Bogotá, Colombia: Ra-Ma. ISBN 978-958-792-569-2. 
  11. «¿Qué es la detección de objetos? | IBM». www.ibm.com. 3 de enero de 2024. Consultado el 2 de mayo de 2025.