Autor do Habr faz fine-tuning do YOLOv8l em radiografias dentárias e leva o mAP50 a 0,642
Um autor do Habr treinou o YOLOv8l em radiografias panorâmicas de dentes em 29,3 minutos, usando uma única NVIDIA A100 80GB. Na validação do DENTEX (144 imagens), o mAP50 foi de 0,642 e o mAP50-95, de 0,408. O ganho veio da limpeza do dataset (remoção de fotos coloridas), da deduplicação e de limiares de confiança por classe, no lugar de um único limiar de 0,50. O modelo encontra dentes impactados quase sem erro (AP50 0,961), mas se sai nitidamente pior com lesões periapicais (AP50 0,516). • O Model Soup uniforme reduziu o mAP50 de 0,642 para 0,634, e por isso foi descartado • O TTA multiescala derrubou a precision em cárie profunda de 60,5% para 25,9% • As métricas foram obtidas apenas no DENTEX; para clínicas russas, é preciso uma amostra própria
Processado por IA de Habr AI; editado por Hamidun News
O autor de um estudo no Habr publicou a segunda parte do projeto «ИИ-Стоматолог» («IA-Dentista»): o detector de patologias em radiografias panorâmicas dos dentes migrou do YOLO26n para o YOLOv8l (209 camadas, 43,6 milhões de parâmetros, 165,4 GFLOPs). O treinamento final em duas etapas, com resolução de 1280×1280, levou 29,3 minutos em uma única NVIDIA A100 80GB PCIe. No conjunto de validação do DENTEX Challenge (144 imagens, 709 objetos), o modelo atingiu mAP50 de 0,642 e mAP50-95 de 0,408. O valor do trabalho está na análise honesta do que funcionou e do que não funcionou, e não em um recorde.
Limpeza dos dados e proteção da validação contra vazamentos
Na primeira parte, o protótipo foi testado com quatro classes, mas descobriu-se que o arquivo de treino continha fotografias coloridas da cavidade oral. Elas provocavam detecções fora da distribuição-alvo. Uma execução intermediária com nove classes (incluindo obturações, coroas e implantes) mostrou mAP50 de 0,511 e AP50 de apenas 0,069 para lesões periapicais: obturações e canais obturados respondiam por mais de 65% de todos os rótulos, enquanto havia só 1 584 lesões. As restaurações foram removidas, e ficaram quatro classes: Caries, Deep Caries, Impacted e Periapical Lesion.
O conjunto Clean_Dental_v3 foi montado a partir do DENTEX (2585×1353), do Tufts Dental Database (1 000 imagens) e do repositório Loki_Dental (13 932 arquivos). A validação usa somente o DENTEX: pelo regulamento, cada imagem corresponde a um paciente, então não há sobreposição entre train e val. As bases externas entraram exclusivamente no treino. A deduplicação por dHash eliminou 33 duplicatas, e o filtro de proporções e de canais de cor descartou 1 571 imagens.
Também foram corrigidos dois erros do pipeline de montagem. Antes, as caixas grandes do Loki_Dental viravam automaticamente Deep Caries com base na área (2 463 objetos), embora a profundidade da cárie seja definida pela proximidade da câmara pulpar, e não pela área. Agora, Deep Caries são as 565 anotações do DENTEX, e toda a cárie do Loki permanece na classe Caries (3 556 objetos).
Além disso, a leitura do Loki parava no arquivo 6 118 de 13 932 por causa de um limite de 1 200 imagens, e 56% do acervo se perdia. A nova seleção em duas passagens encontrou 2 379 candidatos com lesões periapicais e cistos. As classes raras foram replicadas na lista de treino: 3 vezes nas imagens do DENTEX com Deep Caries e Periapical Lesion, e 2 vezes nas imagens periapicais do Tufts e do Loki.
Duas etapas de treinamento e três truques que não funcionaram
A primeira etapa partiu do yolov8l.pt pré-treinado, com todas as camadas ativas: 25 épocas em 23,9 minutos, parada por EarlyStopping e melhor resultado na 10ª época. A segunda etapa durou 12 épocas, em 5,4 minutos, com as 10 primeiras camadas do backbone congeladas, lr0=0,0001 e um peso um pouco maior para a perda de classificação (1,8 contra 1,6). A depuração preliminar na Tesla T4 no Colab levou cerca de três horas. Resultado por etapa: o mAP50 subiu de 0,609 para 0,642, e o AP50 de lesões periapicais, de 0,461 para 0,516. O tempo por imagem na A100 é de 5,8 ms.
Dois ganhos «gratuitos» também foram testados. A média linear dos pesos das duas etapas (Model Soup 50/50) deu um pequeno ganho na T4 a 1024 px, mas, a 1280 px, reduziu o mAP50 para 0,634. A precision no ponto de F1 máximo, por outro lado, subiu de 69,6% para 75,6%, e o tempo por imagem chegou a 7,3 ms.
Na versão de produção, foi usado o checkpoint puro da segunda etapa. O TTA multiescala do Ultralytics piorou o resultado: a precision em Deep Caries caiu de 60,5% para 25,9%, e em Periapical Lesion, de 39,2% para 20,3%, enquanto o tempo por imagem na T4 subiu de 54,5 para 128 ms. O autor atribui isso à inferência sobre uma cópia reduzida (0,83x) e à fusão de caixas de limiar baixo antes do NMS.
Essa hipótese não foi verificada separadamente.
O limiar único conf=0,50 foi substituído por limiares por classe, definidos a partir das curvas F1-Confidence: Caries 0,23, Deep Caries 0,21, Impacted 0,56, Periapical Lesion 0,26. Limiares mais altos servem para imagens comprimidas da internet; mais baixos, para triagem.
Onde o modelo erra e o que impede o uso clínico
O melhor desempenho é o de Impacted: F1 de 0,914, precision de 92,3% e recall de 90,6%. O pior é o das lesões periapicais: precision de 76,4%, mas recall de apenas 43,3%, ou seja, mais da metade das lesões é perdida. Para triagem, isso é significativo.
Nas panorâmicas de controle, o modelo encontrou todas as regiões anotadas em um caso e 5 de 6 em outro, mas deixou passar uma cárie em um molar superior direito. Ele também adicionou caixas que não constam na anotação do DENTEX (dentes #48, #36, #25, #26). Sem revisão cega por radiologistas, não é possível dizer se isso é patologia não anotada ou falso positivo. Há ainda um erro sistemático: a numeração dos dentes pelo padrão FDI é calculada pelo centro da caixa em relação à linha y=0,52, e por isso a cárie de um pré-molar superior recebeu o número #45 em vez de #15. O autor planeja substituir a fórmula por uma segmentação separada dos 32 dentes.
O próprio autor aponta as limitações práticas. As métricas foram obtidas apenas no DENTEX, e, para clínicas russas, é preciso uma amostra de ortopantomógrafos do país. Em imagens comprimidas de mensageiros (650×340–900×600), a cárie pequena é detectada com mais dificuldade, por isso a interface precisa de um aviso de baixa resolução. Para quem trabalha na prática, a conclusão principal é esta: em um dataset médico pequeno, o cuidado com a anotação, o isolamento da validação e a calibração dos limiares trouxeram mais resultado do que trocar de arquitetura ou usar recursos como TTA e média de pesos. Todo o treinamento coube em meia hora, em uma única placa.
Perguntas frequentes sobre a notícia
O que se sabe sobre Limpeza dos dados e proteção da validação contra vazamentos?
Na primeira parte, o protótipo foi testado com quatro classes, mas descobriu-se que o arquivo de treino continha fotografias coloridas da cavidade oral. Elas provocavam detecções fora da distribuição-alvo. Uma execução intermediária com nove classes (incluindo obturações, coroas e implantes) mostrou mAP50 de 0,511 e AP50 de apenas 0,069 para lesões periapicais: obturações e canais obturados respondiam por mais de 65% de todos os rótulos, enquanto havia só 1 584 lesões. As restaurações foram removidas, e ficaram quatro classes: Caries, Deep Caries, Impacted e Periapical Lesi
O que se sabe sobre Duas etapas de treinamento e três truques que não funcionaram?
A primeira etapa partiu do yolov8l.pt pré-treinado, com todas as camadas ativas: 25 épocas em 23,9 minutos, parada por EarlyStopping e melhor resultado na 10ª época. A segunda etapa durou 12 épocas, em 5,4 minutos, com as 10 primeiras camadas do backbone congeladas, lr0=0,0001 e um peso um pouco maior para a perda de classificação (1,8 contra 1,6). A depuração preliminar na Tesla T4 no Colab levou cerca de três horas. Resultado por etapa: o mAP50 subiu de 0,609 para 0,642, e o AP50 de lesões periapicais, de 0,461 para 0,516. O tempo por imagem na A100 é de 5,8 ms. Dois ganh
Onde o modelo erra e o que impede o uso clínico?
O melhor desempenho é o de Impacted: F1 de 0,914, precision de 92,3% e recall de 90,6%. O pior é o das lesões periapicais: precision de 76,4%, mas recall de apenas 43,3%, ou seja, mais da metade das lesões é perdida. Para triagem, isso é significativo. Nas panorâmicas de controle, o modelo encontrou todas as regiões anotadas em um caso e 5 de 6 em outro, mas deixou passar uma cárie em um molar superior direito. Ele também adicionou caixas que não constam na anotação do DENTEX (dentes #48, #36, #25, #26). Sem revisão cega por radiologistas, não é possível dizer se isso é pat
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.
O essencial da IA — uma vez por semana
Sete histórias que realmente importaram, escolhidas a dedo. Sem ruído nem releases.
Pronto! Verifique seu e-mail para a confirmação.