Un auteur de Habr affine YOLOv8l sur des radiographies dentaires et atteint un mAP50 de 0,642
Un auteur de Habr a entraîné YOLOv8l sur des radiographies panoramiques dentaires en 29,3 minutes, sur une seule NVIDIA A100 80GB. Sur la validation DENTEX (144 images), le modèle atteint un mAP50 de 0,642 et un mAP50-95 de 0,408. Le gain vient du retrait des photos couleur du jeu de données, de la déduplication et de seuils de confiance propres à chaque classe, à la place d'un seuil unique de 0,50. Le modèle détecte les dents incluses presque sans erreur (AP50 de 0,961), mais nettement moins bien les foyers périapicaux (AP50 de 0,516). • Un Model Soup uniforme a fait baisser le mAP50 de 0,642 à 0,634 ; il a donc été écarté • Le TTA multi-échelle a fait chuter la precision sur les caries profondes de 60,5% à 25,9% • Les métriques ne portent que sur DENTEX ; les cliniques russes auraient besoin de leur propre échantillon
Traité par IA depuis Habr AI ; édité par Hamidun News
L'auteur d'une étude publiée sur Habr a mis en ligne la deuxième partie du projet « IA-Dentiste » : le détecteur de pathologies sur radiographies panoramiques dentaires passe de YOLO26n à YOLOv8l (209 couches, 43,6 millions de paramètres, 165,4 GFLOPs). L'entraînement final en deux étapes, en résolution 1280×1280, a pris 29,3 minutes sur une seule NVIDIA A100 80GB PCIe. Sur l'échantillon de validation du DENTEX Challenge (144 images, 709 objets), le modèle affiche un mAP50 de 0,642 et un mAP50-95 de 0,408. L'intérêt du travail tient moins au score qu'à l'analyse honnête de ce qui a fonctionné et de ce qui a échoué.
Nettoyage des données et protection de la validation contre les fuites
Dans la première partie, le prototype était testé sur quatre classes. Il s'est toutefois avéré que l'archive d'entraînement contenait des photographies couleur de la cavité buccale, qui provoquaient des détections hors de la distribution cible. Un essai intermédiaire sur neuf classes (avec obturations, couronnes et implants) a donné un mAP50 de 0,511 et un AP50 de seulement 0,069 sur les foyers périapicaux : les obturations et les canaux obturés représentaient plus de 65% de toutes les annotations, contre seulement 1 584 foyers. Les restaurations ont été retirées, et quatre classes ont été conservées : Caries, Deep Caries, Impacted et Periapical Lesion.
Le jeu Clean_Dental_v3 est assemblé à partir de DENTEX (2585×1353), de la Tufts Dental Database (1 000 images) et du dépôt Loki_Dental (13 932 fichiers). La validation repose uniquement sur DENTEX : selon le règlement, une image correspond à un patient, il n'y a donc aucun recoupement entre train et val. Les bases externes n'ont servi qu'à l'entraînement. La déduplication par dHash a supprimé 33 doublons, et le filtre sur les proportions et les canaux de couleur a écarté 1 571 images.
Deux erreurs du script d'assemblage ont aussi été corrigées. Auparavant, les grandes boîtes de Loki_Dental étaient automatiquement converties en Deep Caries d'après leur surface (2 463 objets), alors que la profondeur d'une carie se définit par sa proximité avec la chambre pulpaire, et non par sa surface. Désormais, Deep Caries correspond aux 565 annotations de DENTEX, et toutes les caries de Loki restent dans la classe Caries (3 556 objets).
Par ailleurs, la lecture de Loki s'interrompait au 6 118e fichier sur 13 932 à cause d'une limite de 1 200 images, ce qui faisait perdre 56% de l'archive. Une nouvelle sélection en deux passes a trouvé 2 379 candidats présentant des foyers périapicaux et des kystes. Les classes rares ont été dupliquées dans la liste d'entraînement : multipliées par 3 pour les images DENTEX contenant Deep Caries et Periapical Lesion, par 2 pour les images périapicales de Tufts et de Loki.
Deux étapes d'entraînement et trois astuces qui n'ont pas fonctionné
La première étape est partie du modèle préentraîné yolov8l.pt, avec toutes les couches actives : 25 époques en 23,9 minutes, arrêt par EarlyStopping, meilleur résultat à la 10e époque. La seconde étape a duré 12 époques, soit 5,4 minutes, avec les 10 premières couches du backbone gelées, lr0=0,0001 et un poids légèrement supérieur pour la perte de classification (1,8 contre 1,6). La mise au point préalable sur Tesla T4 dans Colab a pris environ trois heures. Bilan par étape : le mAP50 passe de 0,609 à 0,642, et l'AP50 sur les foyers périapicaux de 0,461 à 0,516. Le temps par image sur A100 est de 5,8 ms.
Deux améliorations « gratuites » ont aussi été testées. Le moyennage linéaire des poids des deux étapes (Model Soup 50/50) apportait un petit gain sur T4 à 1024 px, mais à 1280 px il a fait baisser le mAP50 à 0,634. La precision au point de F1 maximal est pourtant passée de 69,6% à 75,6%, et le temps par image est monté à 7,3 ms.
La version retenue est le checkpoint brut de la deuxième étape. Le TTA multi-échelle d'Ultralytics a dégradé le résultat : la precision sur Deep Caries est tombée de 60,5% à 25,9%, et sur Periapical Lesion de 39,2% à 20,3%, tandis que le temps par image sur T4 est passé de 54,5 à 128 ms. L'auteur l'explique par le passage d'une copie réduite de l'image (0,83x) et par la fusion de boîtes à bas seuil avant le NMS.
Cette hypothèse n'a pas été vérifiée séparément.
Le seuil unique conf=0,50 a été remplacé par des seuils par classe, déterminés à partir des courbes F1-Confidence : Caries 0,23, Deep Caries 0,21, Impacted 0,56, Periapical Lesion 0,26. Les seuils sont plus élevés pour les images compressées issues d'internet, et plus bas pour le dépistage.
Où le modèle se trompe et ce qui freine l'usage clinique
Impacted est la classe la mieux traitée : F1 de 0,914, precision de 92,3%, recall de 90,6%. Les foyers périapicaux sont en retrait : la precision atteint 76,4%, mais le recall n'est que de 43,3%, ce qui signifie que plus de la moitié des foyers sont manqués. Pour du dépistage, c'est un défaut important.
Sur les panoramiques de contrôle, le modèle a trouvé toutes les zones annotées dans un cas et 5 sur 6 dans l'autre, mais il a manqué une carie sur la molaire supérieure droite. Il a aussi ajouté des boîtes absentes de l'annotation DENTEX (dents #48, #36, #25, #26). Sans relecture en aveugle par des radiologues, impossible de dire s'il s'agit de pathologies manquées par l'annotation ou de fausses détections.
Il existe aussi une erreur systématique : la numérotation FDI des dents est calculée à partir du centre de la boîte par rapport à la ligne y=0,52, si bien qu'une carie sur une prémolaire supérieure a reçu le numéro #45 au lieu de #15. L'auteur prévoit de remplacer cette formule par une segmentation dédiée des 32 dents.
L'auteur énonce lui-même les limites pratiques. Les métriques ne portent que sur DENTEX, et les cliniques russes auraient besoin d'un échantillon issu d'orthopantomographes du pays. Sur les images compressées par les messageries (650×340–900×600), les petites caries sont moins bien détectées ; l'interface doit donc avertir de la faible résolution. Pour les praticiens, l'enseignement principal est le suivant : sur un petit jeu de données médicales, un travail soigné sur l'annotation, l'isolation de la validation et le calibrage des seuils ont apporté plus qu'un changement d'architecture ou que des astuces comme le TTA et le moyennage de poids. L'ensemble de l'entraînement a tenu en une demi-heure sur une seule carte.
Questions clés sur cet article
Que sait-on sur Nettoyage des données et protection de la validation contre les fuites ?
Dans la première partie, le prototype était testé sur quatre classes. Il s'est toutefois avéré que l'archive d'entraînement contenait des photographies couleur de la cavité buccale, qui provoquaient des détections hors de la distribution cible. Un essai intermédiaire sur neuf classes (avec obturations, couronnes et implants) a donné un mAP50 de 0,511 et un AP50 de seulement 0,069 sur les foyers périapicaux : les obturations et les canaux obturés représentaient plus de 65% de toutes les annotations, contre seulement 1 584 foyers. Les restaurations ont été retirées, et quatre
Que sait-on sur Deux étapes d'entraînement et trois astuces qui n'ont pas fonctionné ?
La première étape est partie du modèle préentraîné yolov8l.pt, avec toutes les couches actives : 25 époques en 23,9 minutes, arrêt par EarlyStopping, meilleur résultat à la 10e époque. La seconde étape a duré 12 époques, soit 5,4 minutes, avec les 10 premières couches du backbone gelées, lr0=0,0001 et un poids légèrement supérieur pour la perte de classification (1,8 contre 1,6). La mise au point préalable sur Tesla T4 dans Colab a pris environ trois heures. Bilan par étape : le mAP50 passe de 0,609 à 0,642, et l'AP50 sur les foyers périapicaux de 0,461 à 0,516. Le temps pa
Que sait-on sur Où le modèle se trompe et ce qui freine l'usage clinique ?
Impacted est la classe la mieux traitée : F1 de 0,914, precision de 92,3%, recall de 90,6%. Les foyers périapicaux sont en retrait : la precision atteint 76,4%, mais le recall n'est que de 43,3%, ce qui signifie que plus de la moitié des foyers sont manqués. Pour du dépistage, c'est un défaut important. Sur les panoramiques de contrôle, le modèle a trouvé toutes les zones annotées dans un cas et 5 sur 6 dans l'autre, mais il a manqué une carie sur la molaire supérieure droite. Il a aussi ajouté des boîtes absentes de l'annotation DENTEX (dents #48, #36, #25, #26). Sans rele
Test Frontier LLMs & Autonomous Agents in One Workspace
Run Claude Opus 5.5, GPT-6, Gemini 3.1, and DeepSeek side-by-side in Nomad AI (nomadnet.ai) — unified model routing, deep research, and multimodal workflows under one subscription.
L'essentiel de l'IA — une fois par semaine
Sept actus qui ont vraiment compté, choisies à la main. Sans bruit ni communiqués.
C'est fait ! Vérifiez votre boîte mail pour la confirmation.