53 votos

Función de pérdida del coeficiente de dados frente a la entropía cruzada

Al entrenar una red neuronal de segmentación de píxeles, como una red totalmente convolucional, ¿cómo se toma la decisión de utilizar la función de pérdida de entropía cruzada frente a la función de pérdida de coeficiente de dados?

Me doy cuenta de que esta es una pregunta corta, pero no estoy seguro de qué otra información proporcionar. He mirado un montón de documentación sobre las dos funciones de pérdida, pero no soy capaz de conseguir un sentido intuitivo de cuándo utilizar uno sobre el otro.

0 votos

¿Por qué no utilizar el enfoque práctico para usar ambos y comparar los resultados? Al observar muchos campos de aplicación diferentes, la discusión sobre la función de pérdida es un tema propio de investigación ampliada. Dado que las redes convolucionales siguen siendo un "tema candente", supongo que la mayoría de los artículos se seguirán publicando en el futuro.

53voto

mclaughlinj Puntos 1099

Una razón de peso para utilizar la entropía cruzada en lugar del coeficiente de dados o la métrica similar IoU es que los gradientes son más agradables.

Los gradientes de entropía cruzada wrt los logits es algo así como $p - t$ , donde $p$ es la salida del softmax y $t$ es el objetivo. Mientras tanto, si tratamos de escribir el coeficiente de los dados en una forma diferenciable: $\frac{2pt}{p^2+t^2}$ o $\frac{2pt}{p+t}$ entonces los gradientes resultantes wrt $p$ son mucho más feas: $\frac{2t(t^2-p^2)}{(p^2+t^2)^2}$ y $\frac{2t^2}{(p+t)^2}$ . Es fácil imaginar un caso en el que ambos $p$ y $t$ son pequeños, y el gradiente se dispara hasta un valor enorme. En general, parece probable que la formación se vuelva más inestable.


La razón principal por la que la gente intenta utilizar directamente el coeficiente de dados o el IoU es que el objetivo real es la maximización de esas métricas, y la entropía cruzada es sólo un proxy que es más fácil de maximizar utilizando la retropropagación. Además, el coeficiente de dados funciona mejor en problemas de desequilibrio de clases por diseño:

Sin embargo, el desequilibrio de clases se suele solucionar simplemente asignando multiplicadores de pérdidas a cada clase, de manera que la red está muy desincentivada para ignorar simplemente una clase que aparece con poca frecuencia, por lo que no está claro que el coeficiente Dice sea realmente necesario en estos casos.


Yo empezaría con la pérdida de entropía cruzada, que parece ser la pérdida estándar para el entrenamiento de redes de segmentación, a menos que hubiera una razón realmente convincente para utilizar el coeficiente Dice.

33voto

Jan Kukacka Puntos 1027

Como resumieron @shimao y @cherub, no se puede decir apriori cuál funcionará mejor en un conjunto de datos concreto. Lo correcto es probar ambos y comparar los resultados. Además, hay que tener en cuenta que cuando se trata de la segmentación, no es tan fácil "comparar los resultados" : Las medidas basadas en el IoU, como el coeficiente de dados, sólo cubren algunos aspectos de la calidad de la segmentación; en algunas aplicaciones, diferentes medidas como la distancia media de la superficie o Distancia de la superficie de Hausdorff es necesario utilizarlo. Como ves, ni siquiera la elección de la métrica de calidad correcta es trivial, y mucho menos la elección de la mejor función de costes.

Personalmente tengo muy buena experiencia con el coeficiente de dados; realmente hace maravillas cuando se trata de desequilibrio de clases (algunos segmentos ocupan menos píxeles/vóxeles que otros). Por otro lado, la curva de error de entrenamiento se convierte en un completo desastre: no me dio absolutamente ninguna información sobre la convergencia, así que en este aspecto gana la entropía cruzada. Por supuesto, esto puede/debe evitarse comprobando el error de validación de todos modos.

0voto

naisanza Puntos 101

Le recomiendo que utilice la pérdida de Dice cuando se enfrente a conjuntos de datos con desequilibrio de clases, lo que es habitual en el ámbito de la medicina, por ejemplo. Además, la pérdida de Dice se introdujo en el artículo "V-Net: Fully Convolutional Neural Networks for Volumetric Medical Image Segmentation" y en ese trabajo los autores afirman que la pérdida de Dice funcionó mejor que la pérdida logística mutinomial con reponderación de muestras

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