Zero-shot learning (ZSL) es una técnica que permite a los modelos.
Realizar predicciones o clasificaciones en categorías.
Contextos para los cuales no han sido entrenados explícitamente.
En lugar de depender únicamente de ejemplos previos.
De cada categoría ZSL utiliza conocimiento auxiliar.
Descripciones textuales, atributos semánticos.
Representaciones conceptuales para generalizar a nuevas clases.
Conceptos Clave
Ausencia de datos de entrenamiento directos
En ZSL el modelo no recibe ejemplos etiquetados.
De las clases objetivo.
Se entrena en clases relacionadas y utiliza información semántica.
Inferir las propiedades de las clases desconocidas.
Espacio semántico intermedio
Los modelos ZSL suelen proyectar las clases conocidas.
Las desconocidas a un espacio semántico compartido.
Vectores de palabras o atributos.
Las relaciones conceptuales entre clases son evidentes.
Generalización más allá de los datos observados
El aprendizaje supervisado las predicciones se limitan.
A las clases vistas.
ZSL fomenta la extrapolación a categorías nuevas.
Cómo Funciona Zero-Shot Learning
El proceso general de ZSL se puede describir en los siguientes pasos.
Entrenamiento con Clases Vistas (Seen Classes)
El modelo se entrena en un conjunto de datos.
Incluye clases con ejemplos etiquetados.
Una representación semántica asociada.
Descripciones textuales o atributos.
Definición de Clases No Vistas (Unseen Classes)
Se definen nuevas clases.
Mediante sus representaciones semánticas.
Sin ejemplos directos de esas clases.
En los datos de entrenamiento.
Proyección al Espacio Semántico
Tanto las características de entrada.
Como las representaciones de las clases.
Vistas y no vistas se proyectan a un espacio.
Semántico compartido como un espacio vectorial.
Basado en embeddings de palabras.
Inferencia
Durante la predicción el modelo compara la representación.
De una nueva entrada con las representaciones semánticas.
De las clases no vistas.
Para asignar la etiqueta más probable.
Métodos Comunes en ZSL
Modelos Basados en Atributos
Las clases se describen en términos de atributos semánticos.
«tiene alas», «es herbívoro»
El modelo aprende a mapear entradas a estos atributos.
Luego asigna clases no vistas.
Basándose en estas características.
Espacios Compartidos de Representación
Utiliza técnicas como embeddings de palabras (Word2Vec, GloVe).
Embeddings multimodales para mapear datos de entrada.
Clases a un espacio vectorial común.
Aprendizaje Generativo
Modelos generativos como GANs (Generative Adversarial Networks).
VAEs (Variational Autoencoders).
Se utilizan para sintetizar ejemplos.
De las clases no vistas a partir de sus descripciones.
Aprendizaje Contrastivo
Diseña una función de pérdida que maximiza la similitud.
Entre ejemplos y sus descripciones semánticas.
Mientras minimiza la similitud con descripciones incorrectas.
Aplicaciones del Zero-Shot Learning
Clasificación de Imágenes
Identificación de objetos o categorías no presentes.
En los datos de entrenamiento.
Animales exóticos o especies raras.
Procesamiento de Lenguaje Natural (NLP)
Comprensión de nuevos idiomas.
Basándose en datos multilingües.
Clasificación de texto en categorías no vistas.
Usando descripciones de clase.
Sistemas de Recomendación
Recomendación de productos o servicios.
Que no han sido vistos previamente.
Basándose en descripciones o atributos.
Visión por Computador
Reconocimiento de acciones en videos no etiquetados.
Clasificación de escenas o eventos poco comunes.
Cuidado de la Salud
Diagnóstico de enfermedades raras.
Mediante descripciones de síntomas y características.
Ventajas del Zero-Shot Learning
Generalización
Permite que los modelos se desempeñen bien.
En tareas para las que no hay datos directos.
Eficiencia en datos
Reduce la necesidad de recopilar y etiquetar.
Grandes cantidades de datos.
Escalabilidad
Facilita la expansión a nuevas categorías.
Sin reentrenar el modelo desde cero.
Desafíos del Zero-Shot Learning
Representaciones semánticas de calidad
La eficacia de ZSL depende de la precisión y relevancia.
De las descripciones de las clases no vistas.
Desajuste semántico
Si las representaciones de las clases vistas y no vistas.
No están alineadas adecuadamente.
El modelo puede fallar en la predicción.
Capacidades limitadas en tareas complejas
ZSL puede tener dificultades en tareas con relaciones intrincadas.
Características sutiles que no están bien capturadas.
Por los atributos semánticos.
Dependencia de la diversidad en el entrenamiento
La capacidad de generalización puede verse limitada.
Si las clases vistas no son lo suficientemente variadas.
Ejemplo Práctico de Zero-shot learning
Clasificación de Imágenes con ZSL
Un modelo entrenado para identificar gatos, perros y caballos.
Usando descripciones semánticas puede clasificar correctamente.
Una cebra sin haber visto una imagen.
De cebra durante el entrenamiento.
# Pseudocódigo para ZSL en clasificación de imágenes
# 1. Entrenar en clases vistas
train_seen_classes(data_train, semantic_embeddings_seen)
# 2. Proyectar las clases no vistas al espacio semántico
project_to_semantic_space(semantic_embeddings_unseen)
# 3. Hacer inferencia en clases no vistas
predict_unseen_classes(new_image, semantic_embeddings_unseen)
Zero-shot learning permite que los modelos generalicen.
Más allá de los datos observados resuelvan problemas complejos.
Con una disponibilidad limitada de ejemplos.
Su implementación en visión por computador.
Procesamiento de lenguaje natural y otros dominios.
Demuestra su potencial para aplicaciones.
Escalables, innovadoras y eficientes.
ZSL se posiciona como una herramienta clave.
Aborda problemas en los que la recolección.
De datos etiquetados es difícil o costosa.
Te puede interesar;