Ultralytics YOLO27 : Rejoins la liste d'attente.
Licence YOLO
Retour au glossaire Ultralytics

Concept Bottleneck Models

Les modèles à goulot d’étranglement conceptuel (CBM) prédisent d’abord des concepts nommés par des humains, puis déduisent l’étiquette uniquement à partir de ces concepts, afin que les experts puissent examiner et corriger chaque décision.

Un modèle à goulot d’étranglement conceptuel (CBM) est un réseau neuronal qui prédit d’abord un ensemble de concepts nommés par des humains à partir de son entrée, puis prédit l’étiquette finale en utilisant uniquement ces concepts. Pour une radiographie du genou, les concepts peuvent être le rétrécissement de l’interligne articulaire et les ostéophytes ; pour une photo d’oiseau, la couleur des ailes et la forme du bec. Comme chaque prédiction passe par cette couche étroite et étiquetée, une personne peut voir quels concepts ont déterminé la décision et corriger un concept erroné pour modifier le résultat. Les CBM constituent ainsi une forme d’IA explicable (XAI) intégrée à l’architecture. Pang Wei Koh, Thao Nguyen, Yew Siang Tang, Stephen Mussmann, Emma Pierson, Been Kim et Percy Liang, de Stanford et Google, ont introduit ce terme dans Concept Bottleneck Models à ICML 2020, en montrant une précision compétitive avec celle de modèles classiques entraînés de bout en bout sur deux tâches : évaluer l’arthrose du genou à partir de radiographies et identifier des espèces d’oiseaux.

Fonctionnement des modèles à goulot d’étranglement conceptuel#

Un CBM comporte deux parties : un prédicteur de concepts qui associe l’entrée, par exemple une image, à des valeurs de concepts, et un prédicteur d’étiquettes qui associe ces valeurs à la sortie. Koh et ses collègues ont comparé trois façons de les entraîner :

  • Indépendamment : le prédicteur de concepts apprend à partir des annotations de concepts et le prédicteur d’étiquettes à partir des vrais concepts, chacun séparément.
  • Séquentiellement : le prédicteur de concepts est entraîné en premier, puis le prédicteur d’étiquettes apprend à partir des concepts qu’il prédit.
  • Conjointement : les deux parties sont entraînées ensemble sur une somme pondérée de la perte sur les concepts et de la perte sur les étiquettes.

Dans les données de l’Osteoarthritis Initiative, qui comprennent 36 369 radiographies du genou étiquetées selon le grade de sévérité de Kellgren-Lawrence, les concepts étaient 10 observations ordinales déjà évaluées par les radiologues, comme le rétrécissement de l’interligne articulaire, les ostéophytes et la sclérose osseuse. Dans le jeu de données Caltech-UCSD Birds, composé de 11 788 photos de 200 espèces, il s’agissait de 112 attributs binaires, comme la couleur des ailes et la forme du bec. Chaque exemple d’entraînement nécessite des annotations de concepts et d’étiquettes, ce qui représente le principal coût de cette approche.

Le goulot d’étranglement permet une intervention au moment du test : lorsqu’un expert constate qu’un concept prédit est erroné, il le remplace par la bonne valeur et le prédicteur d’étiquettes recalcule la sortie. Pour la tâche sur les radiographies, fournir les vraies valeurs de seulement deux concepts a fait passer l’erreur du grade de sévérité prédit de plus de 0,4 à environ 0,3 RMSE.

Cet exemple PyTorch entraîne un CBM indépendant sur des données synthétiques où six concepts binaires génèrent des entrées bruitées et où l’étiquette dépend uniquement des concepts. Il mesure ensuite la précision des étiquettes lorsqu’un expert fournit les vraies valeurs des concepts les moins certains :

import torch
from torch import nn

torch.manual_seed(0)
# Toy data: 6 binary concepts generate noisy 20-D inputs, and the label depends only on the concepts
concepts = torch.randint(0, 2, (3000, 6)).float()
inputs = concepts @ torch.randn(6, 20) + 2 * torch.randn(3000, 20)
labels = (concepts @ torch.tensor([3.0, 2, 2, 1, 1, 1]) >= 5).float()
train, test = slice(0, 2000), slice(2000, None)

# Independent training: inputs -> concepts, and concepts -> label, each against its own ground truth
concept_model, label_model = nn.Linear(20, 6), nn.Linear(6, 1)
optimizer = torch.optim.Adam([*concept_model.parameters(), *label_model.parameters()], lr=0.05)
bce = nn.functional.binary_cross_entropy_with_logits
for _ in range(500):
    optimizer.zero_grad()
    loss = bce(concept_model(inputs[train]), concepts[train]) + bce(label_model(concepts[train])[:, 0], labels[train])
    loss.backward()
    optimizer.step()

with torch.no_grad():
    probs = concept_model(inputs[test]).sigmoid()
    print(f"Concept accuracy: {((probs > 0.5) == concepts[test]).float().mean():.3f}")
    for k in range(4):
        # Test-time intervention: replace the k least certain predicted concepts with their true values
        uncertain = (probs - 0.5).abs().argsort(dim=1)[:, :k]
        fixed = probs.scatter(1, uncertain, concepts[test].gather(1, uncertain))
        accuracy = ((label_model(fixed)[:, 0] > 0) == labels[test].bool()).float().mean()
        print(f"Intervene on {k} of 6 concepts: label accuracy {accuracy:.3f}")

Le prédicteur de concepts retrouve correctement 0.834 des 6 000 concepts de test, et le CBM classe correctement 0.819 des 1 000 exemples de test. Fournir les vraies valeurs du concept le moins certain, des deux concepts les moins certains, puis des trois concepts les moins certains pour chaque exemple fait passer la précision des étiquettes à 0.861, 0.915 et 0.951, sans modifier aucun des deux modèles.

Utilisations des CBM#

Les CBM conviennent aux domaines où les experts raisonnent déjà à partir de constatations nommées. En analyse d’images médicales, l’étude sur les radiographies présentée plus haut utilisait les mêmes constatations que celles consignées par les radiologues, afin qu’un clinicien puisse vérifier chacune d’elles. La surveillance de la sécurité présente la même structure : un modèle Ultralytics YOLO26 entraîné sur le jeu de données Construction-PPE détecte des classes nommées telles que helmet, no_helmet, vest et no_boots. Une règle de conformité qui lit uniquement ces détections devient un goulot d’étranglement conceptuel, dont un réviseur peut retracer la décision jusqu’à un équipement manquant précis.

Des travaux ultérieurs ont assoupli l’exigence d’annotation. Les CBM sans étiquettes génèrent une liste de concepts à l’aide d’un modèle de langage et évaluent les concepts avec CLIP, ce qui permet d’étendre l’idée à ImageNet sans étiquettes de concepts. Les CBM a posteriori convertissent quant à eux un modèle déjà entraîné en projetant ses plongements sur des directions de concepts.

Limites#

Les ensembles de concepts couvrent rarement tout ce qui détermine l’étiquette, ce qui plafonne la précision d’un CBM. Lorsque le prédicteur d’étiquettes reçoit des probabilités de concepts plutôt que des valeurs discrètes, ces probabilités peuvent fournir des informations supplémentaires sur l’étiquette au-delà de la signification de chaque concept. Cet effet, appelé fuite de concepts, rend les explications et les interventions moins fiables. Les modèles d’intégration de concepts représentent chaque concept par un vecteur appris afin de préserver une précision élevée tout en permettant les interventions. Des concepts mal définis ou corrélés produisent des explications peu fiables, et des annotations de concepts biaisées transmettent leur biais à chaque décision qui en dépend.

  • Cartes de saillance : mettent en évidence les pixels qui ont influencé un modèle boîte noire déjà entraîné. Les CBM expliquent les décisions à l’aide de concepts nommés et permettent de modifier ces concepts.
  • Interprétabilité mécaniste : procède à la rétro-ingénierie des caractéristiques et des circuits qu’un modèle entraîné a appris de lui-même. Les CBM définissent à l’avance les concepts intermédiaires par supervision.
  • Sondage linéaire : vérifie si un concept peut être décodé à partir des activations d’un modèle entraîné sans modifier ses prédictions. Les sondes de concepts appliquées aux boîtes noires, comme TCAV de Been Kim et ses collègues, mesurent a posteriori l’influence d’un concept.
  • Ingénierie des caractéristiques : calcule manuellement des caractéristiques d’entrée à partir de données brutes. Les concepts des CBM sont prédits à partir des entrées brutes par un modèle entraîné et supervisé à l’aide d’étiquettes humaines.

Découvre les solutions

La vision par ordinateur dans le sport

La vision par ordinateur dans le sport

Découvre comment Ultralytics YOLO propulse la vision par ordinateur dans le sport grâce au suivi des joueurs et du ballon, aux analyses de performance, aux conseils d’entraînement et à la rééducation des athlètes.
En savoir plus
Vision par ordinateur pour les images aériennes

Vision par ordinateur pour les images aériennes

Transforme les images de drones et les images aériennes en informations exploitables en temps réel pour l’agriculture, l’aquaculture, la conservation et l’analyse géospatiale avec Ultralytics YOLO.
En savoir plus
Vision par ordinateur dans l’aérospatiale

Vision par ordinateur dans l’aérospatiale

Applique la vision par ordinateur dans l’aérospatiale avec Ultralytics YOLO pour l’inspection des aéronefs, la détection des corps étrangers sur les pistes, les opérations au sol des aéroports et la détection des défauts des matériaux composites.
En savoir plus
La vision par ordinateur dans la sécurité

La vision par ordinateur dans la sécurité

Protège chaque site avec les modèles Ultralytics YOLO. L’IA visuelle permet la surveillance des périmètres, la détection des menaces, la reconnaissance des plaques d’immatriculation et la sécurité au travail.
En savoir plus
La vision par ordinateur en robotique

La vision par ordinateur en robotique

Donne plus de capacités à tes machines grâce aux modèles Ultralytics YOLO. Dans la robotique, l’IA visuelle permet la navigation autonome, la perception, le suivi des objets et le contrôle en temps réel.
En savoir plus
La vision par ordinateur dans la logistique

La vision par ordinateur dans la logistique

Optimise la logistique avec les modèles Ultralytics YOLO. La vision par IA permet d’inspecter les colis, de les trier, de suivre les véhicules et de surveiller la sécurité des entrepôts en temps réel.
En savoir plus
La vision par ordinateur dans le commerce de détail

La vision par ordinateur dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA permet de suivre les stocks, de surveiller les rayons, de gérer les files d’attente et de mieux comprendre les clients.
En savoir plus
La vision par ordinateur dans le secteur de la santé

La vision par ordinateur dans le secteur de la santé

Crée des solutions de santé avec les modèles Ultralytics YOLO. La vision par IA dans le secteur de la santé accélère l’imagerie médicale, améliore les diagnostics et facilite la surveillance des patients.
En savoir plus
La vision par ordinateur dans l’industrie manufacturière

La vision par ordinateur dans l’industrie manufacturière

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA améliore le contrôle qualité, la détection des défauts, le respect des règles concernant les EPI et l’automatisation des chaînes de montage.
En savoir plus
La vision par ordinateur dans l’automobile

La vision par ordinateur dans l’automobile

Mets la vision par ordinateur au service de l’automobile avec les modèles Ultralytics YOLO. La vision par IA renforce la sécurité routière, l’aide à la conduite et l’automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Vision par ordinateur dans l’agriculture

Vision par ordinateur dans l’agriculture

Fais entrer l’IA de vision dans l’agriculture intelligente avec les modèles Ultralytics YOLO. Optimise le suivi des cultures et du bétail ainsi que l’agriculture de précision pour obtenir des rendements plus élevés et plus intelligents.
En savoir plus

Construisons ensemble l’avenir de l’IA !

Commence ton parcours vers l’avenir de l’apprentissage automatique