Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас
Глоссарий

Наблюдаемость

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

Наблюдаемость — это способность понимать внутреннее состояние сложной системы, основываясь исключительно на ее внешних результатах. В быстро развивающихся областях искусственного интеллекта (ИИ) и машинного обучения (МО)наблюдаемость выходит за рамки простой проверки состояния и позволяет глубоко понять, почему модель ведет себя определенным образом. В современном архитектуры глубокого обучения (DL) архитектуры глубокого обучения (DL), такие как передовая YOLO26— становятся все более сложными, они часто могут функционировать как «черные ящики». Инструменты наблюдаемости создают прозрачное окно в эти системы, позволяя инженерным командам отлаживать неожиданные поведения, отслеживать первопричины ошибок и обеспечивать надежность в производственных средах.

Наблюдаемость против мониторинга

Хотя термины «наблюдаемость» и «мониторинг модели» часто используются как синонимы, мониторинг модели имеют разные , но взаимодополняющие цели в рамках жизненного цикла MLOps .

  • Мониторинг модели является реактивным и сосредоточен на «известных неизвестных». Он включает в себя отслеживание заранее определенных показателей, таких как задержка инференса, CPU или частота ошибок по отношению к установленным пороговым значениям. Мониторинг отвечает на вопрос: «Работает ли система нормально?»
  • Наблюдаемость является проактивной и решает проблему «неизвестных неизвестных». Она предоставляет детализированные данные — журналы, трассировки и события с высокой кардинальностью — необходимые для исследования новых проблем, которые не были предусмотрены во время обучения подготовки данных . Как описано в книгеGoogle , наблюдаемая система позволяет понимать новое поведение без отправки нового кода. Она отвечает на вопрос: «Почему система ведет себя таким образом?»

Три столпа наблюдаемости

Для достижения истинной наблюдаемости в компьютерном зрении (CV) , системы обычно полагаются на три основных типа телеметрических данных:

  1. Журналы: неизменяемые записи с временными метками о отдельных событиях. В конвейере обнаружения журнал может фиксировать разрешение входного изображения или конкретные гиперпараметров , используемой во время выполнения. Структурированное ведение журналов, часто в формате формате JSON формате, позволяет выполнять сложные запросы и анализ
  2. Метрики: агрегированные числовые данные, измеряемые в течение определенного времени, такие как средняя точность, потребление памяти или GPU . Такие инструменты, как Prometheus и Grafana являются стандартными для хранения этих временных рядов данных с целью визуализации тенденций.
  3. Трассировка: Трассировка отслеживает жизненный цикл запроса по мере его прохождения через различные микрослужбы. Для распределенных приложений искусственного интеллекта такие стандарты, как OpenTelemetry помогают отобразить путь запроса, выделяя узкие места в движке инференции или задержки в сети . Специализированные инструменты, такие как Jaeger помогают визуализировать эти распределенные транзакции.

Реализация наблюдаемости в Python

Вы можете повысить наблюдаемость в своих конвейерах обучения, используя обратные вызовы для регистрации определенных внутренних состояний. Следующий пример демонстрирует, как добавить пользовательский обратный вызов в YOLO26 сессии обучения для мониторинга показателей производительности в реальном времени.

from ultralytics import YOLO

# Load the YOLO26 model
model = YOLO("yolo26n.pt")


# Define a custom callback for observability
def on_train_epoch_end(trainer):
    # Access and print specific metrics at the end of each epoch
    map50 = trainer.metrics.get("metrics/mAP50(B)", 0)
    print(f"Observability Log - Epoch {trainer.epoch + 1}: mAP50 is {map50:.4f}")


# Register the callback and start training
model.add_callback("on_train_epoch_end", on_train_epoch_end)
model.train(data="coco8.yaml", epochs=3)

Применение в реальном мире

Наблюдаемость имеет решающее значение для развертывания высокопроизводительных моделей в динамичных средах, где тестовые данные могут не в полной мере соответствовать реальным условиям.

  • Автономные транспортные средства: В разработке автономных транспортных средствнаблюдаемость позволяет инженерам восстанавливать точное состояние системы во время события отключения. Путем корреляции результатами обнаружения объектов с журналами датчиков и командами управления, команды могут определить, была ли ошибка торможения вызвана шумом датчика, ошибкой прогнозирования модели или логической ошибкой в модуле планирования.
  • Диагностика в здравоохранении: В ИИ в здравоохранениидля обеспечения безопасности пациентов крайне важно обеспечить стабильную работу. Инструменты наблюдаемости могут detect смещение данных , если производительность модели ухудшается при применении к изображениям с нового типа МРТ-сканера. Трассировки могут показать, связана ли проблема с изменением в предварительной обработке данных или сдвига в распределении входных данных, что позволяет быстро устранить проблему без ущерба для безопасности ИИ.

Интеграция с современными инструментами

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

Присоединяйтесь к сообществу Ultralytics

Присоединяйтесь к будущему ИИ. Общайтесь, сотрудничайте и развивайтесь вместе с мировыми новаторами

Присоединиться сейчас