Conformal Prediction
Entdecke, wie konforme Vorhersagen verteilungsfreie Unsicherheit für KI bieten. Implementiere Vorhersagemengen mit Ultralytics YOLO26, um zuverlässige Modellergebnisse sicherzustellen.
Konforme Vorhersage ist ein statistisches Framework im Bereich Machine Learning (ML), das verteilungsfreie Unsicherheitsmaße für Modellvorhersagen bereitstellt. Anstatt eine einzelne Punktvorhersage auszugeben – wie etwa eine spezifische Klassenbezeichnung –, gibt ein konformer Prädiktor ein Vorhersageset oder -intervall aus, das den wahren Wert mit einer benutzerdefinierten Wahrscheinlichkeit (z. B. 90 % oder 95 %) enthält. Dieses Framework lässt sich auf jedes künstliche Intelligenz (AI)-Modell anwenden, um formale statistische Garantien zu bieten, ohne die Architektur des Modells ändern zu müssen. Eine umfassende Liste aktueller Tools und Forschungsergebnisse findest du im Awesome Conformal Prediction-Repository.
Link to this sectionWie konforme Vorhersage funktioniert#
Der grundlegende Mechanismus beruht darauf, zu bewerten, wie ungewöhnlich eine neue Vorhersage im Vergleich zu vergangenen Beispielen ist, indem ein Nonkonformitäts-Score verwendet wird.
- Modelltraining: Trainiere zunächst ein Basismodell mithilfe eines Standard-Trainingsdatensatzes.
- Kalibrierungsphase: Jage einen separaten, zurückgehaltenen Kalibrierungsdatensatz durch das trainierte Modell. Berechne für jede Vorhersage einen Nonkonformitäts-Score, beispielsweise die inverse Wahrscheinlichkeit in der Bildklassifizierung.
- Quantilberechnung: Bestimme das angestrebte Konfidenzniveau (z. B. 95 %) und finde das entsprechende Quantil dieser Kalibrierungs-Scores, um die Vorhersagesets zu konstruieren.
- Inferenzanwendung: Werte während der Live-Inferenz neue Eingaben aus und beziehe alle möglichen Labels ein, deren Scores unterhalb des Kalibrierungsquantils liegen.
Du kannst mathematische Beweise für diesen Ansatz im Tutorial A Gentle Introduction to Conformal Prediction erkunden oder dich über Ansätze für Zeitreihenprognosen informieren, um mit zeitlichen Unsicherheiten umzugehen.
Link to this sectionAbgrenzung der konformen Vorhersage von verwandten Begriffen#
Es ist entscheidend, dieses Framework von Standardmetriken zu unterscheiden, die während der Modellprüfung verwendet werden:
- Konforme Vorhersage vs. Konfidenz-Scores: Ein Standard-Konfidenz-Score spiegelt die interne Gewissheit eines Modells wider, ist jedoch oft schlecht kalibriert und weist keine mathematischen Garantien auf. Die konforme Vorhersage transformiert diese Rohwerte in garantierte Sets. Informationen zu traditionellen Anpassungen findest du unter scikit-learns Wahrscheinlichkeitskalibrierung.
- Konforme Vorhersage vs. Genauigkeit: Genauigkeit ist eine globale historische Metrik, die beschreibt, wie oft ein Modell über einen gesamten Datensatz hinweg korrekt liegt, wohingegen konforme Inferenz ein lokales, instanzspezifisches Intervall für jede einzelne neue Vorhersage liefert.
Link to this sectionPraxisanwendungen#
Konforme Vorhersage ist in Hochrisikobereichen unerlässlich, in denen es entscheidend ist, die blinden Flecken des Modells zu kennen.
- Medizinische Diagnostik: Wenn KI im Gesundheitswesen zur Analyse von Scans eingesetzt wird, könnte ein Modell anstelle einer einzelnen, potenziell falschen Klasse eine Reihe plausibler Diagnosen ausgeben. Dies stellt sicher, dass Kliniker alle lebensfähigen Möglichkeiten untersuchen, und unterstützt aktuelle Studien zur zuverlässigen genomischen Medizin und Bildgebung.
- Autonomes Fahren: In KI-Automobilsystemen erzeugt die Anwendung von Vorhersageintervallen auf die Objekterkennung einen räumlichen Konfidenzbereich um einen Fußgänger, wodurch die Bremssysteme des Fahrzeugs sicher auf Worst-Case-Bewegungen reagieren können.
Link to this sectionImplementierung von Vorhersagesets#
Bibliotheken wie MAPIE (Model Agnostic Prediction Interval Estimator) bieten integrierte Tools für Python, und Regressionsaufgaben nutzen häufig die konforme Quantilregression. Du kannst auch eine grundlegende Logik zur konformen Vorhersage implementieren, indem du Wahrscheinlichkeiten von fortgeschrittenen Modellen wie Ultralytics YOLO26 verwendest. Das folgende Beispiel erstellt ein Vorhersageset unter Verwendung der YOLO26-Klassifizierungswahrscheinlichkeiten und ahmt die Logik nach, Top-Klassen einzubeziehen, bis ein kumulativer Schwellenwert erreicht ist.
from ultralytics import YOLO
# Load an Ultralytics YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Perform inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Simple conformal-style prediction set logic based on cumulative probability
target_coverage = 0.95
prediction_set = []
cumulative_prob = 0.0
# Sort probabilities in descending order using the results object
probs = results[0].probs
sorted_indices = probs.top5
for idx in sorted_indices:
class_name = results[0].names[idx]
class_prob = probs.data[idx].item()
prediction_set.append((class_name, round(class_prob, 3)))
cumulative_prob += class_prob
# Stop adding to the set once we reach the 95% coverage threshold
if cumulative_prob >= target_coverage:
break
print(f"95% Prediction Set: {prediction_set}")Die Entwicklung zuverlässiger Systeme erfordert robuste Datenpraktiken, um zu verhindern, dass Datendrift die Kalibrierung zunichtemacht. Tools wie die Ultralytics Platform vereinfachen das Sammeln frischer Klassifizierungsdatensätze, das Nachtrainieren von Modellen und die sichere Verwaltung der Modellbereitstellung. Du kannst mehr über das Kuratieren ausgewogener Daten in unserem Leitfaden zum Verständnis von Datensatz-Bias lesen oder die neuesten Fortschritte verfolgen, die auf der jährlichen COPA-Konferenz präsentiert werden.






