
Fonctions de perte/coût (loss function)
Distribution-based Loss
Binary Cross-Entropy
Fonction la plus connue, définissant comme mesure de la différence entre deux probabilité de distribution pour une variable prise aléatoirement.
Quand l’utiliser ?
Utilisé pour de la classification binaire, ou classification multi-classes ou l’on souhaite plusieurs label en sortie. Utilisable aussi pour de la segmentation sémantique. Fonction basé sur la distribution de Bernoulli.
Référence de base à utiliser comme première fonction pour tout nouveau réseau. Non adapté à des datasets biaisé/déséquilibré.
Categorical Cross-Entropy
Utilisé pour de la classification multi-classes, mais en souhaitant un seul label en sortie.
Quand l’utiliser ?
Pour de la classification multi-class à simple label de sortie.
Weighted Cross-Entropy
C’est une variante de la Binary Cross-Entropy. Elle permet de rectifier la faiblesse de la BCE pour les datasets déséquilibrés, en ajoutant des poids selon des coefficients, pour les exemples positifs.
Quand l’utiliser ?
Pour des datasets biaisé/déséquilibré.
Balenced Cross-Entropy
Elle est similaire à la Weighted Cross-Entropy. A la différence prêt, qu’elle pénalise en plus des exemples positives, les exemples négatifs
Quand l’utiliser ?
Pour des datasets biaisé/déséquilibré.
Focal
Elle est similaire à la Binary Cross-Entropy. Elle excelle dans les datasets déséquilibrés pour la raison qu’elle diminue le poids lors de la prédiction d’exemples facile, pour permettre au réseau de se focaliser pour l’apprentissage des exemples complexes.
Quand l’utiliser ?
Pour des datasets TRES biaisé/déséquilibré.
Region-based Loss
Pixel-Wise Cross-Entropy
Fonction la plus connue pour des tâches d’image segmentation. Celle-ci examine chaque pixel de façon individuelle. On compare la classe prédite du pixel par notre réseau à notre One Hot encoding de notre masque original.
Etant donnée que le calcul se fait selon la moyenne des pixels, on suppose d’avoir des classes en répartition égales sur nos images. Peut donc poser des problèmes si on a des classes non équilibré. Par exemple pour un algo ou l’on souhaite détecter piétons, ciel et route dans des photos, on sait déjà d’avance que les classes ciel et route seront bien plus présente que les piétons. Résultant ainsi dans un réseau avec des prédisposition à détecter d’avantage les classes les plus présentes.
Quand l’utiliser ?
Référence de base à utiliser comme première fonction pour tout nouveau réseau de segmentation d’image. Non adapté à des datasets biaisé/déséquilibré.
Dice
Inspiré des coefficients Dice, métriques utilisé pour évaluer la performance d’un réseau de segmentation sémantique d’image en mesurant le chevauchement entre deux objets.
Quand l’utiliser ?
Très apprécié pour des problématiques de segmentation d’image.
Soft Dice
Calcul la probabilité de chaque classe de façon indépendante, pour ensuite donner un score final résultant d’une moyenne.
Tversky
Similaire à la Dice. Elle ajoute un poids aux éléments FP (Faux Positif) et FN (Faux Négatif).
Quand l’utiliser ?
Très apprécié pour des problématiques de segmentation d’image.
Focal Tversky
Mélange de la Focal, qui focus l’entrainement sur les exemples complexe en diminuant le poids des exemples simples, comme par exemple pour les petits ROI (Region of Interest) avec la Tversky.
Quand l’utiliser ?
Très apprécié pour des problématiques de segmentation d’image.
BCE-Dice
Mélange entre la Dice et la Binary Cross-Entropy.
Quand l’utiliser ?
Très apprécié pour des problématiques de segmentation d’image.
Jaccard / Intersection Over Union (IoU)
Inspiré des coefficients IoU ou communement appelé index de Jaccard, métriques utilisé pour évaluer la performance d’un réseau de segmentation sémantique d’image.
Quand l’utiliser ?
Très apprécié pour des problématiques de segmentation d’image.