53 votos

¿Por qué la salida softmax no es una buena medida de incertidumbre para los modelos de Deep Learning?

Llevo algún tiempo trabajando con redes neuronales convolucionales (CNN), sobre todo con datos de imágenes para la segmentación semántica/de instancias. A menudo he visualizado el softmax de la salida de la red como un "mapa de calor" para ver cuán altas son las activaciones por píxel para una determinada clase. He interpretado las activaciones bajas como predicciones "inciertas" / "poco seguras" y las activaciones altas como predicciones "seguras" / "seguras". Básicamente esto significa interpretar la salida del softmax (valores dentro de $(0,1)$ ) como medida de probabilidad o (in)certeza del modelo.

( Por ejemplo, he interpretado que un objeto/área con una activación softmax baja promediada sobre sus píxeles es difícil de detectar para la CNN, de ahí que la CNN sea "incierta" a la hora de predecir este tipo de objeto. )

En mi opinión, esto a menudo funcionaba, y añadir muestras adicionales de zonas "inciertas" a los resultados de la formación mejoraba los resultados en éstas. Sin embargo, Ya he oído con bastante frecuencia, desde distintos puntos de vista, que utilizar/interpretar el resultado de softmax como una medida de (in)certeza no es una buena idea y que generalmente se desaconseja. ¿Por qué?


EDITAR: Para aclarar lo que estoy preguntando aquí voy a elaborar en mis puntos de vista hasta ahora para responder a esta pregunta. Sin embargo, ninguno de los siguientes argumentos me aclaró ** por qué es generalmente una mala idea**, como me dijeron repetidamente los colegas, los supervisores y también se afirma por ejemplo aquí en la sección "1.5"

En los modelos de clasificación, el vector de probabilidad obtenido al final de la cadena (la salida softmax) se interpreta a menudo erróneamente como la confianza del modelo

o aquí en la sección "Antecedentes" :

Aunque puede ser tentador interpretar los valores dados por la capa final softmax de una red neuronal convolucional como puntuaciones de confianza, tenemos que tener cuidado de no leer demasiado en esto.


Las fuentes anteriores razonan que usar la salida del softmax como medida de incertidumbre es malo porque:

perturbaciones imperceptibles en una imagen real pueden cambiar la salida softmax de una red profunda a valores arbitrarios

Esto significa que la salida de softmax no es robusta a las "perturbaciones imperceptibles" y por lo tanto su salida no es utilizable como probabilidad.

Otro papel recoge la idea de "salida softmax = confianza" y argumenta que con esta intuición las redes pueden ser fácilmente engañadas, produciendo "salidas de alta confianza para imágenes irreconocibles".

(...) la región (en el dominio de entrada) correspondiente a una determinada clase puede ser mucho mayor que el espacio de esa región ocupado por los ejemplos de entrenamiento de esa clase. El resultado de esto es que una imagen puede estar dentro de la región asignada a una clase y por lo tanto ser clasificada con un gran pico en la salida softmax, mientras que todavía está lejos de las imágenes que ocurren naturalmente en esa clase en el conjunto de entrenamiento.

Esto significa que los datos que están lejos de los datos de entrenamiento nunca deben obtener una confianza alta, ya que el modelo "no puede" estar seguro de ellos (ya que nunca los ha visto).

Sin embargo: ¿no es esto en general simplemente un cuestionamiento de las propiedades de generalización de las NN en su conjunto? Es decir, que las NN con pérdida softmax no generalizan bien ante (1) "perturbaciones imperceptibles" o (2) muestras de datos de entrada que se alejan de los datos de entrenamiento, por ejemplo, imágenes irreconocibles.

Siguiendo este razonamiento, sigo sin entender por qué en la práctica, con datos que no están alterados abstracta y artificialmente frente a los datos de entrenamiento (es decir, la mayoría de las aplicaciones "reales"), interpretar la salida del softmax como una "pseudoprobabilidad" es una mala idea. Después de todo, parecen representar bien lo que mi modelo es seguro, incluso si no es correcto (en cuyo caso tengo que arreglar mi modelo). ¿Y no es la incertidumbre del modelo siempre "sólo" una aproximación?

1voto

JanithaR Puntos 141

Lo que se plantea es un malentendido básico de la estadística que viene del punto de vista de la "clasificación" del ML, no de la probabilidad.

una probabilidad predicha es sólo una predicción, si quieres intervalos de confianza tienes que hacer algo como bootstrapping/métodos bayesianos.

Por ejemplo, si gano 6/10 partidas o 600/1000, mi estimación de ganar la siguiente partida sigue siendo del 60%, pero el intervalo de confianza en torno al 60% es mucho más estrecho después de 1000 partidas.

0voto

pglpm Puntos 33

Me gustaría añadir una respuesta para subrayar un punto que es bastante sencillo pero que parece que a menudo se pasa por alto.

Que tengamos un conjunto de números positivos que suman uno, no significa que esos números sean probabilidades y el conjunto sea una distribución de probabilidad. Para ser interpretado como una probabilidad, un número debe satisfacer otras condiciones, principalmente relacionadas con la regla de la probabilidad condicional, con respecto a un cuadro mayor.

Es un poco como si alguien dijera que como la salida de una función es positiva, entonces esa salida es un número natural. Eso es obviamente falso en general. Un número natural satisface más propiedades que la simple positividad.

La función softmax produce un conjunto normalizado de números positivos, y eso es todo. Hay infinidad de funciones que producen un conjunto normalizado de números positivos a partir de unos números de entrada. ¿Cuál de ellas, si es que hay alguna, es una distribución de probabilidad - y por qué ? Es responsabilidad de la persona que afirma que se trata de probabilidades, demostrar que efectivamente lo son, con respecto al panorama general. Muchos estudios citados en las otras respuestas demuestran que, en general, estos números no son probabilidades, no funcionan cuando se utilizan dentro del cálculo de probabilidades.

Desde este punto de vista, es curioso que la gente pregunte "¿por qué no son probabilidades?". La respuesta sencilla es "nadie ha demostrado que lo sean, que se puedan utilizar dentro del cálculo de la probabilidad en el contexto más completo".

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X