Un mapa de saliencia es una representación visual que resalta las regiones de una imagen más relevantes para una tarea determinada, ya sea para la atención visual humana o para las decisiones de un modelo de aprendizaje automático. En visión por computador, dichos mapas reflejan el grado de importancia de cada píxel para el sistema visual humano o para un modelo opaco. Por ejemplo, en una fotografía, un espectador podría mirar primero un fuerte o nubes ligeras; un mapa de saliencia de esa imagen iluminaría esas regiones para indicar su prominencia. Mientras que los mapas de saliencia basados en seguimiento ocular aproximan la mirada humana, los mapas de saliencia basados en gradientes en el aprendizaje automático revelan dónde se enfoca un modelo al hacer una predicción.
En el contexto de la inteligencia artificial, los mapas de saliencia se han convertido en una herramienta central en la IA explicable. Proporcionan explicaciones visuales de cómo las redes neuronales profundas llegan a decisiones al resaltar los píxeles o características de entrada que más influyen en la salida. Esta técnica es particularmente común para la clasificación de imágenes y la detección de objetos, pero se extiende a arquitecturas posteriores de transformadores a través de mapas de atención. El concepto une la ciencia cognitiva y el aprendizaje automático, y sus raíces en la visión humana han moldeado tanto los enfoques algorítmicos como los métodos de evaluación.
Saliencia Visual Humana
Los mapas de saliencia humanos pretenden predecir las ubicaciones que atraen la atención de una persona primero. La corteza visual primaria (V1) parece ser responsable del mapa de saliencia, según la Hipótesis de Saliencia V1, lo que hace que la saliencia sea un fenómeno biológicamente fundamentado. Los modelos computacionales de saliencia humana a menudo se basan en características de bajo nivel como color, contraste, bordes y movimiento.
Las aplicaciones más comunes en este ámbito son:
- Compresión de imágenes y vídeos: El ojo humano se centra solo en una pequeña región de interés en un fotograma; usar un mapa de saliencia permite codificar a menor calidad fuera de esa región, reduciendo el tamaño del archivo sin pérdida percibida.
- Evaluación de calidad de imágenes y vídeos: Métricas de calidad que ponderan más las diferencias en regiones salientes, logrando una mayor correlación con opiniones humanas subjetivas.
- Reencuadre de imágenes: Redimensionar imágenes expandiendo o contrayendo regiones no informativas para preservar el contenido importante, dependiendo de estimaciones precisas de saliencia.
- Detección y reconocimiento de objetos: En lugar de aplicar algoritmos complejos a toda la imagen, estos se aplican a las regiones más salientes, que probablemente contengan los objetos a reconocer.
Los algoritmos de estimación clásicos vienen en tres tipos principales, como se implementan en OpenCV: saliencia estática (basada en características y estadísticas de la imagen), saliencia de movimiento (basada en movimiento de flujo óptico, donde los objetos en movimiento son salientes) y objetividad (que proporciona cajas delimitadoras alrededor de objetos probables). También hay un método estático más nuevo llamado sensibilidad a la distorsión visual, que trata los bordes verdaderos (contornos de objetos) como más salientes que las áreas texturizadas; usa umbrales de gradiente pequeños, operaciones morfológicas y transformaciones de distancia para aislar bordes.
Saliencia como Segmentación
La estimación de saliencia puede verse como un caso de segmentación de imágenes. La segmentación de imágenes es el proceso de particionar una imagen digital en múltiples segmentos o superpíxeles. El objetivo es simplificar la representación de la imagen en algo significativo y más fácil de analizar, a menudo asignando etiquetas a cada píxel. Para la saliencia, el problema de segmentación es binario: etiquetar cada píxel como parte del primer plano (saliente) o del fondo. La salida es a menudo una máscara binaria donde el objeto saliente se marca en blanco y el resto en negro, o un mapa de calor continuo donde la intensidad indica saliencia.
Esta conexión es especialmente importante porque las técnicas de segmentación y las funciones de pérdida pueden reutilizarse, y la comprensión general de las regiones salientes ayuda en tareas como segmentación de imágenes. Sin embargo, los mapas de saliencia típicamente proporcionan importancia suave o graduada en lugar de límites duros.
Saliencia Basada en Gradientes para Aprendizaje Profundo
Cuando se aplica a redes neuronales, un mapa de saliencia a menudo se calcula tomando el gradiente de la puntuación de clase con respecto a la entrada. Esto se desarrolló para redes convolucionales en la década de 2010, y los primeros enfoques prominentes usaron gradientes simples: para cada píxel, se calcula cuán sensible es la puntuación de salida a un pequeño cambio en ese píxel. La magnitud del gradiente indica importancia relativa.
Técnicas más sofisticadas siguieron:
- Gradientes integrados: Asigna importancia sumando los gradientes a lo largo de una ruta desde una entrada de referencia hasta la entrada real, para tener en cuenta la saturación y asegurar la atribución si las puntuaciones de predicción cambian solo en puntos intermedios.
- Mapeo de activación de clase (CAM): Usa los mapas de características de la última capa convolucional, sus pesos para la clase objetivo, y produce un mapa de saliencia grueso, típicamente en una resolución espacial que se sobremuestrea.
- Mapeo de activación de clase ponderado por gradiente (Grad-CAM): Una extensión de CAM que usa los gradientes de la puntuación de clase con respecto a los mapas de características para ponderar las activaciones.
Estos métodos son específicos de redes neuronales convolucionales (por ejemplo, Residual Network (ResNet)), pero se han generalizado a modelos Transformer (architecture) a través de mecanismos de atención, produciendo mapas de atención, despliegue de atención o mapas de atención discriminativos aprendidos.
Mapas de Atención en Transformadores
Con el auge de las arquitecturas Transformer (architecture) en el procesamiento de lenguaje natural y la visión, los mapas de saliencia toman la forma de pesos de atención. En un transformador, el mecanismo Multi-Head Attention calcula puntuaciones que indican cuánto un token en la entrada atiende a otro. Estos pesos pueden agregarse a través de capas y cabezas para producir un mapa de saliencia para una entrada dada, como una imagen. Técnicas como el despliegue de atención y los mapas de atención discriminativos de clase se han desarrollado para hacer estos mapas más interpretables.
Estos mapas se usan a menudo para explicar decisiones de clasificación para imágenes, pero la misma idea se aplica al texto, donde resaltan palabras o tokens importantes. A partir de la década de 2020, la detección de saliencia en transformadores es un área de investigación activa, apoyando la interpretabilidad de Large language model, pero podrían ser menos fieles al modelo que los mapas basados en gradientes, ya que las puntuaciones de atención no siempre son causalmente responsables de la salida.
Implementación de Ejemplo de ALGORITMO
Mientras que muchos algoritmos son complicados, se propuso una fórmula simple de saliencia estática. Calcula la distancia de cada píxel a todos los demás píxeles en el fotograma. Para un píxel I_k, la saliencia SALS(I_k) se da por la suma sobre todos los píxeles:
SALS(I_k) = Σ_{i=1}^N |I_k - I_i|,
donde I_i es el valor del píxel en [0,255] y N es el número total de píxeles. Esto se expande a SALS(I_k) = |I_k - I_1| + |I_k - I_2| + ... + |I_k - I_N|.
La fórmula puede expresarse en términos del histograma de la imagen: SALS(I_k) = Σ_n F_n × |I_k - I_n|, donde F_n es la frecuencia del valor de intensidad n (n de 0 a 255). El cálculo del histograma tiene un tiempo computacional O(N). Esto produce una representación única de la importancia de cada píxel relativa a toda la imagen.
Este tipo es un enfoque clásico, ahora a menudo superado por redes neuronales, pero ilustra el principio central.
Métodos de Saliencia con Redes Neuronales
Además de los métodos basados en gradientes y tradicionales, las redes neuronales modernas a menudo se entrenan específicamente para generar mapas de saliencia, frecuentemente para datos de vídeo y multimodales. Tres ejemplos notables:
- TASED-Net: Consiste en un codificador que extrae características espacio-temporales de baja resolución, seguido de una red de predicción que decodifica las características espaciales mientras agrega toda la información temporal.
- STRA-Net: Integra características espacio-temporales mediante acoplamiento visual y de flujo óptico, y se centra en saliencia multiescala usando un mecanismo de atención.
- STAViS: Combina información visual y auditiva espacio-temporal. Usa una sola red que aprende a localizar fuentes de sonido y luego fusiona las dos señales de saliencia para generar el mapa final.
Estas redes se entrenan en conjuntos de datos de vídeo para predecir la fijación humana a lo largo del tiempo. Muestran que la saliencia puede aprenderse de datos, y enriquecieron los métodos a nivel de fotograma con movimiento y audio.
Aplicación en IA Explicable
En la inteligencia artificial explicable (XAI), los mapas de saliencia son un método prominente para entender qué está mirando un modelo de inteligencia artificial. Para un modelo que realiza clasificación de imágenes o identificación de objetos, el mapa de saliencia indica exactamente qué píxeles o regiones son más influyentes para la predicción. Por ejemplo, si una red neuronal clasifica una fotografía como que contiene un perro, el mapa de saliencia podría resaltar la cabeza y la cola del perro, no el fondo. Esto resalta las regiones que contribuyen más a una decisión de clase particular.
La elección del método de saliencia afecta la calidad e interpretabilidad. Los gradientes simples son rápidos pero pueden ser ruidosos y producir importancia para regiones irrelevantes, mientras que los gradientes integrados y CAM pueden proporcionar una explicación más significativa. Con la seguridad y responsabilidad a nivel de sistema, los mapas de saliencia se usan para verificar que un modelo se basa en características relevantes, en lugar de correlaciones espurias debido al fondo o marcas de agua.
Sin embargo, los mapas de saliencia no cuentan toda la historia. Indican importancia pero no la lógica del modelo, ni contrafactuales. A partir de la década de 2020, la investigación continúa hacia una explicabilidad más robusta y fiel.
Conclusión
Los mapas de saliencia unen la comprensión de la visión humana con el funcionamiento interno de los modelos de aprendizaje profundo. Sirven tanto como un modelo biológico de atención como una herramienta práctica para depuración de modelos, compresión de imágenes o explicación de decisiones. Con la evolución desde el procesamiento de imágenes clásico hasta enfoques de Deep learning y atención basada en Transformer (architecture), el mapeo de saliencia se ha vuelto más flexible y potente, aunque aún plantea preguntas sobre qué constituye exactamente una región "importante". Su desarrollo está en curso, y los mapas de saliencia son una parte integral tanto de la interpretabilidad a nivel de píxel como de la de modelos neuronales.