Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Назад к глоссарию Ultralytics

Conformal Prediction

Конформное предсказание преобразует оценки любой модели в наборы предсказаний или интервалы, содержащие истинный ответ с заданной частотой, например в 95% случаев.

Конформное предсказание — это система для количественной оценки неопределенности, которая преобразует оценки любой обученной модели в наборы предсказаний или интервалы, гарантированно содержащие истинный ответ с выбранной пользователем вероятностью, например 95%. Конформный классификатор изображений возвращает все еще правдоподобные метки: одну для понятного изображения и несколько для неоднозначного. Конформный регрессор возвращает интервал. Гарантия действует для любой модели и любого распределения данных при условии, что калибровочные и новые данные являются обменными, то есть представляют собой независимые выборки из одного источника. Владимир Вовк, Александр Гаммерман и Гленн Шафер разработали этот метод в конце 1990-х и изложили его в книге Algorithmic Learning in a Random World 2005 года. Учебная статья Anastasios Angelopoulos и Stephen Bates за 2021 год — A Gentle Introduction to Conformal Prediction — знакомит с современными методами, используемыми в машинном обучении.

Как работает разделенное конформное предсказание#

Исходный полный метод conformal prediction заново обучает модель для каждого возможного ответа, что слишком медленно для глубокого обучения. Split, или индуктивный, conformal prediction, предложенный Харрисом Пападопулосом и коллегами в 2002 году, требует только одну обученную модель и отложенную калибровочную выборку:

  1. Обучи модель на обучающих данных как обычно.
  2. Запусти модель на n размеченных калибровочных примерах, которых она раньше не видела, и вычисли для каждого score несоответствия — число, которое растёт, когда истинный ответ кажется модели менее типичным. Для классификатора обычно используют score, равный единице минус вероятность, присвоенная истинному классу.
  3. Возьми квантиль ceil((n + 1) x (1 - alpha)) / n этих score, называемый qhat. Слагаемое (n + 1) — поправка для конечной выборки, которая делает гарантию точной.
  4. Для нового входного примера включи каждую возможную метку, score которой не превышает qhat.

Полученное множество содержит истинную метку с вероятностью не менее 1 - alpha. Поскольку score нового примера обменен с n калибровочными score, он с одинаковой вероятностью может занять любой ранг среди них, поэтому не ниже qhat он оказывается не менее чем в доле случаев 1 - alpha.

На что распространяется гарантия#

Гарантия маргинальная: она выполняется в среднем по всем входным данным. Модель может чрезмерно покрывать простые классы и недостаточно покрывать редкий класс, поэтому conformal prediction с условием на класс (Mondrian) калибрует отдельный qhat для каждого класса. Единственное предположение — обменность, и при дрейфе данных оно нарушается: если производственные изображения отличаются от калибровочных, калибровочная выборка должна поступать из данных развёртывания и обновляться при их изменении. Смещение набора данных в калибровочной выборке напрямую переносится в множества.

Полезный показатель — размер множества. Любой корректный метод обеспечивает целевое покрытие, поэтому методы конкурируют по размеру множеств, а более точная модель даёт меньшие множества. Adaptive Prediction Sets (APS) и Regularized Adaptive Prediction Sets (RAPS), последний метод проверяли на классификаторах ImageNet, используют накопленные вероятности, чтобы размер множества отражал сложность задачи; conformalized quantile regression формирует интервалы, которые расширяются там, где данные зашумлены.

Conformal prediction отличается от трёх родственных концепций. Оценка уверенности — это одно число без каких-либо гарантий. Методы калибровки, например температурное масштабирование, позволяют оценкам лучше соответствовать наблюдаемой точности, что уменьшает conformal-множества, но сами по себе не гарантируют покрытие. Статистический доверительный интервал описывает неопределённость оценки параметра популяции, например среднего, а conformal-множество указывает, где окажется один новый результат.

Множества предсказаний на практике#

Шаги выше на scikit-learn; обучающая выборка специально небольшая, чтобы классификатор ошибался:

import numpy as np
from sklearn.datasets import load_digits
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split

# Split handwritten digits into training, calibration, and test sets
X, y = load_digits(return_X_y=True)
X_train, X_rest, y_train, y_rest = train_test_split(X, y, train_size=100, random_state=0)
X_cal, X_test, y_cal, y_test = train_test_split(X_rest, y_rest, train_size=500, random_state=0)
model = LogisticRegression(max_iter=2000).fit(X_train, y_train)

# Nonconformity score: 1 minus the probability given to the true class
scores = 1 - model.predict_proba(X_cal)[np.arange(len(y_cal)), y_cal]

# Finite-sample corrected quantile for 95% coverage
alpha, n = 0.05, len(y_cal)
qhat = np.quantile(scores, np.ceil((n + 1) * (1 - alpha)) / n, method="higher")

# Prediction set: every class whose score is at most qhat
sets = 1 - model.predict_proba(X_test) <= qhat
coverage = sets[np.arange(len(y_test)), y_test].mean()
print(f"Top-1 accuracy: {model.score(X_test, y_test):.3f}")
print(f"Set coverage: {coverage:.3f}, average set size: {sets.sum(axis=1).mean():.2f}")

Отдельное наилучшее предсказание верно в 91.6% случаев, а conformal-множества содержат истинную цифру на 96.5% из 1,197 тестовых изображений — это выше целевого уровня 95%, при среднем размере множества 1.27 метки. Библиотеки, например MAPIE, объединяют эти шаги для классификации, регрессии и временных рядов.

Применение#

Классификаторы изображений получают те же входные данные, что и в примере со scikit-learn. Модели классификации Ultralytics YOLO26 возвращают полный вектор softmax для каждого изображения в results[0].probs.data, поэтому вычисление score на отложенной выборке размеченных изображений даёт qhat, а в множество предсказаний входит каждый класс с вероятностью не ниже 1 - qhat.

Изучи решения

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

Превращай снимки с дронов и аэрофотоснимки в полезные данные в реальном времени для сельского хозяйства, аквакультуры, охраны природы и геопространственного анализа с Ultralytics YOLO.
Подробнее
Компьютерное зрение в аэрокосмической отрасли

Компьютерное зрение в аэрокосмической отрасли

Применяй компьютерное зрение в аэрокосмической отрасли с Ultralytics YOLO: для осмотра самолётов, обнаружения посторонних предметов на взлётно-посадочных полосах, наземного обслуживания аэропортов и выявления дефектов композитных материалов.
Подробнее
Компьютерное зрение в сфере безопасности

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ повышает безопасность дорожного движения, улучшает помощь водителю и автоматизацию автомобилей, делая дороги умнее.
Подробнее
Компьютерное зрение в сельском хозяйстве

Компьютерное зрение в сельском хозяйстве

Внедряй ИИ для компьютерного зрения в умное сельское хозяйство с моделями Ultralytics YOLO. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее

Давай вместе строить будущее ИИ!

Начни свой путь в будущее машинного обучения