Aller au contenu
en ce moment

Benchmarks

Confiance d’un modèle IA : comprendre le score 0,9 avec basal mini

Un score de confiance de 0,9 ne garantit pas neuf bonnes réponses sur dix. Voici comment mesurer la calibration et choisir un seuil d’automatisation.

Par 8 min de lecture

👁 122 lectures

Un score de confiance de 0,9 ressemble à une promesse : le modèle devrait avoir raison neuf fois sur dix. Pourtant, ce chiffre ne prouve rien à lui seul. Il faut le comparer aux réponses correctes obtenues sur des données proches de celles qui seront utilisées dans l’application. Voici comment comprendre la calibration, avec des calculs réalisés à partir des résultats enregistrés de trois modèles et un script Python simple. À retenir : le seuil de confiance et le taux d’erreur acceptable sont deux choses différentes.

En bref (19.10.2026)

  • La calibration mesure l’accord entre la confiance annoncée et la fréquence des réponses correctes.
  • Dans le test enregistré, basal mini a donné 35 bonnes réponses sur 40 avec un score de confiance d’au moins 0,9.
  • Le jeu de données ne compte que 50 demandes. C’est une illustration, pas une certification d’un seuil d’automatisation.
  • Choisissez le seuil sur une partie des données, puis vérifiez-le sur un échantillon distinct, mis de côté à l’avance.

Que signifie vraiment un score de confiance de 0,9 ?

La calibration est une propriété d’un ensemble de prédictions. Si vous rassemblez des réponses dont le score de confiance est proche de 0,9, un modèle bien calibré devrait en réussir environ 90 %. Cela ne signifie pas qu’une réponse donnée a été vérifiée. Un modèle peut aussi être bien calibré tout en ayant une faible précision : il signale alors honnêtement qu’il se trompe souvent.

Guo et ses coauteurs décrivent cette différence dans un article de 2017 consacré à la calibration des réseaux neuronaux. Une hausse de la précision ne suffit pas à rendre les probabilités fiables. Pour une application, il faut à la fois choisir la bonne réponse et pouvoir s’appuyer sur le score de confiance pour repérer les cas à contrôler.

Pourquoi les chatbots affichent rarement ce score

Dans les modèles de décision, les réponses appartiennent à un ensemble fermé. Le modèle peut renvoyer une distribution de probabilités sur les options ; le score de confiance associé au choix correspond généralement à la probabilité de la réponse sélectionnée. On obtient ainsi un résultat précis, que l’on peut comparer à une réponse de référence.

Les modèles de langage utilisent eux aussi des probabilités. Toutefois, les logprobs disponibles dans certaines interfaces décrivent les probabilités des tokens, et non la véracité d’une phrase entière. Le structured output fixe le format de la réponse, par exemple un JSON contenant le nom d’une catégorie. Ce format ne garantit pas une confiance bien calibrée. Un champ confidence ajouté par un chatbot doit lui aussi être vérifié. Il est donc faux de dire que les chatbots ne peuvent pas fournir de score de confiance : le problème tient à sa signification et à la manière de le mesurer.

Courbe de calibration : résultats de trois modèles

Le 19.10.2026, j’ai comparé le champ kat à gold_kat et calculé la confiance moyenne dans trois fichiers de résultats. Basal-omni-1.0-mini Q8_0 a été testé localement le 19.10, tandis que Jev 1.13 et Perplexity Decider v1.1 27B ont été testés par API le 13.10. Chaque modèle a traité les 50 demandes, sans écarter les cas difficiles ; les tâches distinctes de sélection d’outil sont exclues. Cette évaluation suit la réponse de référence enregistrée, y compris lorsque la demande peut être ambiguë.

Modèle Intervalle de confiance Confiance moyenne Précision
basal mini 0,5-0,7 60,9 % 2/2 = 100 %
basal mini 0,7-0,9 83,3 % 5/8 = 62,5 %
basal mini 0,9-1 97,7 % 35/40 = 87,5 %
Jev 1.13 0,5-0,7 61,5 % 0/2 = 0 %
Jev 1.13 0,7-0,9 79,2 % 4/9 = 44,4 %
Jev 1.13 0,9-1 99,4 % 37/39 = 94,9 %
Decider v1.1 0-0,5 47,3 % 1/1 = 100 %
Decider v1.1 0,5-0,7 62,9 % 2/3 = 66,7 %
Decider v1.1 0,7-0,9 81,5 % 2/5 = 40 %
Decider v1.1 0,9-1 99,0 % 39/41 = 95,1 %

La borne inférieure de chaque intervalle est incluse et la borne supérieure est exclue, sauf pour le dernier intervalle, qui inclut aussi 1. Les intervalles vides sont omis. La précision globale est respectivement de 42/50, 41/50 et 44/50. Ne confondez pas ces dénominateurs avec les résultats portant sur 47 demandes présentés dans le test de basal en local.

Sur une courbe de calibration, l’axe horizontal indique la confiance moyenne du groupe et l’axe vertical sa précision. Les points idéaux se trouvent sur la diagonale. Un point en dessous indique une confiance excessive ; un point au-dessus, une confiance insuffisante. Pour l’intervalle le plus élevé de basal, le point se situe à 97,7 % de confiance et 87,5 % de précision : l’écart avec la diagonale est net.

n=2n=8n=40100 %0100 %Confiance moyennePrécision
Les trois intervalles non vides de basal mini, sur 50 demandes. La diagonale représente une calibration idéale ; le point extrême ne repose que sur deux réponses.

ECE : l’écart pondéré par le nombre de réponses

L’ECE est la moyenne des écarts absolus entre précision et confiance dans chaque groupe, pondérée par le nombre de réponses. Le groupe basal de 40 réponses pèse ainsi 40/50. Son écart est d’environ 10,17 points de pourcentage et contribue à hauteur d’environ 8,14 points à l’ECE. Après ajout des autres groupes, le résultat atteint 0,1302, soit 13,02 points de pourcentage.

Avec les mêmes limites d’intervalle, Jev obtient un ECE de 0,1224 et Decider de 0,0861. Un score plus faible indique un écart mesuré plus petit, mais ne prouve pas une supériorité sur d’autres données. L’ECE dépend du découpage en groupes et les observations isolées sont instables. Ce n’est ni le taux de mauvaises réponses ni le score Calibration d’un autre benchmark.

Vérifiez le seuil d’automatisation séparément

Commencez par définir le taux d’erreur acceptable parmi les décisions traitées automatiquement, par exemple 5 % ou 1 %. Choisissez ensuite un seuil sur des données de réglage et figez-le avant l’évaluation sur un jeu indépendant. Mesurez deux valeurs : le taux d’erreur parmi les décisions acceptées et la couverture, c’est-à-dire la part de l’ensemble des demandes traitées automatiquement.

Avec un seuil de 0,9, basal accepte 40/50 demandes, mais se trompe dans 5/40 cas, soit 12,5 %. Decider en accepte 41/50 et se trompe dans 2/41 cas, soit environ 4,88 %. Ce deuxième résultat respecte le seuil de 5 % uniquement comme observation sur un petit échantillon. Il ne constitue pas une confirmation statistique du risque visé.

  • Mettez de côté des groupes entiers de demandes liées, afin que des variantes d’un même exemple ne se retrouvent pas à la fois dans les données de réglage et dans celles du test.
  • Vérifiez séparément les catégories importantes. Un bon résultat global peut masquer un mauvais résultat pour une classe rare.
  • Répétez la mesure après toute modification du modèle, des instructions, de la quantification ou du type de données.

Combien d’exemples faut-il ?

Cinquante exemples peuvent révéler un problème, mais ne permettent pas de confirmer un taux d’erreur de 1 %. Si le seuil a été fixé à l’avance, que les observations sont indépendantes et qu’aucune erreur n’est observée, la borne supérieure unilatérale du taux d’erreur avec un niveau de confiance de 95 % est 1 - 0.05**(1/n). Il faut au moins 59 décisions acceptées pour une borne de 5 % et 299 pour une borne de 1 %. Il s’agit du nombre de décisions acceptées, pas du nombre total d’exemples recueillis ; les erreurs augmentent la taille d’échantillon nécessaire.

La documentation de basal distingue elle aussi l’ajustement de l’évaluation et tient compte de l’incertitude statistique. Le guide de basal-calibrate explique comment utiliser cet outil. Le principe vaut pour tous les modèles : ne choisissez pas le seuil à partir des mêmes réponses que celles qui serviront ensuite à justifier son efficacité.

Python : calculer la calibration à partir d’un fichier

Enregistrez le code ci-dessous sous le nom calculer_calibration.py. Il utilise uniquement la bibliothèque standard et le format employé dans les fichiers de résultats décrits ici. La commande python calculer_calibration.py resultats.json 0.9 affiche les groupes, l’ECE, la couverture et le taux d’erreur observé. Le script ne calibre rien et ne certifie aucun seuil.

import json
import math
import sys

with open(sys.argv[1], encoding="utf-8") as f:
    rows = json.load(f)["wyniki"]
rows = [r for r in rows if r.get("typ") == "zgl"]
if not rows:
    raise ValueError("Aucune demande")
for r in rows:
    c = r["conf"]
    if not math.isfinite(c) or not 0 <= c <= 1:
        raise ValueError("Confiance hors limites")
    r["ok"] = r["kat"] == r["gold_kat"]

edges = [0, 0.5, 0.7, 0.9, 1]
ece = 0
for lo, hi in zip(edges, edges[1:]):
    group = [r for r in rows
             if lo <= r["conf"] < hi
             or hi == 1 and r["conf"] == 1]
    n = len(group)
    if not n:
        continue
    conf = sum(r["conf"] for r in group) / n
    acc = sum(r["ok"] for r in group) / n
    ece += n / len(rows) * abs(conf - acc)
    print(lo, hi, n, round(conf, 4), round(acc, 4))
print("ECE :", round(ece, 4))

threshold = float(sys.argv[2])
if not 0 <= threshold <= 1:
    raise ValueError("Seuil hors limites")
accepted = [r for r in rows
            if r["conf"] >= threshold]
print("Couverture :", len(accepted) / len(rows))
if accepted:
    errors = sum(not r["ok"] for r in accepted)
    print("Taux d’erreur :", errors / len(accepted))
else:
    print("Taux d’erreur : aucune décision acceptée")

Commencez par examiner la taille des groupes. Un résultat de 100 % sur deux réponses ne signifie pas grand-chose. Seuls de nouveaux exemples indépendants permettront de déterminer si le score renvoyé par le modèle convient réellement à la prise de décision.

Source des calculs : fichiers locaux wyniki_basal_mini_q8.json, wyniki_jev113.json et wyniki_decider11.json ; nouveau calcul le 19.10.2026.

Kinetyra

// read next

More on this from PROMPTIF

Promptif

Promptif

ADMINISTRATOR
à lire ensuiteComment tester une IA qui configure la défense des réseauxbenchmarksComment tester une IA qui configure la défense des réseauxUne étude propose un cadre pour évaluer les agents de cyberdéfense autonomes qui configurent des systèmes EDR commerciaux.

Les plus lus

  1. 1Applications de génération vidéo IA : Kling, PixVerse et autres
  2. 2Calendrier IA 2026 : lancements de modèles, conférences et IA Act
  3. 3Affaire Thélyson Orélien : j’ai testé le roman avec trois détecteurs d’IA. Même paragraphe : 100 %, 85 % et 0 %
// plan du site

Cette page dans d’autres langues5

promptif en chiffres 0textes dans les archives0actus des 7 derniers jours0modèles vidéo dans l'observatoire
🎬 Studio Vidéo IA : Higgsfield AI DoP Presets Caméra & Calculateur • Code Promo Higgsfield AI -50% • Higgsfield vs Kling AI
× ‹ agrandissement ›