Yolo 비전 선전
선전
지금 참여하기
용어집

관찰 가능성

인공지능(AI)과 머신러닝(ML)에서 관측 가능성의 중요성을 탐구하세요. 복잡한 시스템 디버깅 방법, Ultralytics 성능 모니터링 방법, 그리고 딥모델에 대한 심층적인 통찰력을 얻는 방법을 배우세요.

관측 가능성은 복잡한 시스템의 내부 상태를 오로지 그 외부 출력만을 바탕으로 이해할 수 있는 능력을 의미합니다. 인공지능(AI)머신 러닝(ML)에서 관측 가능성은 단순한 상태 점검을 넘어 모델이 특정 방식으로 동작하는 이유에 대한 심층적인 통찰력을 제공합니다. 현대적인 딥 러닝(DL) 아키텍처—예를 들어 최첨단 YOLO26과 같은 최신딥 러닝(DL)아키텍처가 점점 더 정교해짐에 따라, 이들은 종종 "블랙박스"처럼 작동할 수 있습니다. 관측 가능성 도구는 이러한 시스템에 대한 투명한 창을 제공하여 엔지니어링 팀이 예상치 못한 동작을 디버깅하고, 오류의 근본 원인을 추적하며, 프로덕션 환경에서의 신뢰성을 보장할 수 있도록 합니다.

가시성 대 모니터링

관측 가능성과 모델 모니터링은 종종 혼용되지만 모델 모니터링은 는 MLOps 내에서 서로 다르지만 상호 보완적인 목적을 수행합니다. MLOps 라이프사이클 내에서

  • 모델 모니터링 반응적이며 "알려진 미지"에 초점을 맞춥니다. 이는 추론 지연 시간, CPU 또는 오류율과 같은 미리 정의된 지표를 설정된 임계값 대비 추적합니다. 모니터링은 "시스템이 정상적인가?"라는 질문에 답합니다.
  • 가시성은 사전 예방적이며 "알 수 없는 미지의 요소"를 해결합니다. 이는 훈련 데이터 단계에서 예상하지 못했던 새로운 문제를 조사하는 데 필요한 세분화된 데이터—로그, 추적, 고카디널리티 이벤트—를 제공합니다. 훈련 데이터 준비 단계에서 예상하지 못한 새로운 문제를 조사하는 데 필요한 세분화된 데이터(로그, 추적, 고카디널리티 이벤트)를 제공합니다. Google Book에 설명된 바와 같이, 관측 가능한 시스템은 새로운 코드를 배포하지 않고도 새로운 동작을 이해할 수 있게 합니다. 이는 다음과 같은 질문에 답합니다: "시스템이 왜 이런 방식으로 동작하는가?"

관찰 가능성의 세 가지 기둥

컴퓨터 비전(CV)에서 진정한 관측 가능성을 달성하기 위해 컴퓨터 비전(CV) 파이프라인에서 진정한 관측 가능성을 달성하기 위해, 시스템은 일반적으로 세 가지 주요 유형의 텔레메트리 데이터에 의존합니다:

  1. 로그: 시간 스탬프가 찍힌 불변의 기록으로 개별 이벤트를 담습니다. 탐지 파이프라인에서 로그에는 입력 이미지 해상도나 특정 하이퍼파라미터 조정 구성을 기록할 수 있습니다. 구조화된 로깅은 주로 JSON 형식으로 작성되는 경우가 많으며, 이를 통해 복잡한 쿼리 및 분석이 가능합니다.
  2. 지표: 시간에 따라 측정된 집계된 수치 데이터, 예를 들어 평균 정밀도, 메모리 소비량, 또는 GPU 사용률 등. Prometheus와 같은 도구 PrometheusGrafana 는 이러한 시계열 데이터를 저장하여 추세를 시각화하는 표준 도구입니다.
  3. 추적: 추적은 요청이 다양한 마이크로서비스를 통과하는 라이프사이클을 따라갑니다. 분산형 AI 애플리케이션의 경우, 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 데이터 드리프트 모델 성능이 새로운 유형의 MRI 스캐너에서 나온 이미지에 적용될 때 저하되는지 여부를 감지할 수 있습니다. 추적 기록은 문제가 이미지 데이터 전처리 인지 입력 분포의 변화 인지 신속한 문제 해결을 가능하게 하여 AI 안전성.

현대적 도구와의 통합

현대적인 워크플로우는 종종 관측 가능성을 훈련 플랫폼에 직접 통합합니다. Ultralytics 은 손실 곡선, 시스템 성능 및 데이터셋 분석에 대한 내장된 시각화 기능을 활용할 수 있습니다. 또한 TensorBoard TensorBoardMLflow 을 통한 표준 통합으로 데이터 과학자는 모델 라이프사이클 전반에 걸쳐 엄격한 실험 추적 및 관측 가능성을 유지할 수 있습니다.

Ultralytics 커뮤니티 가입

AI의 미래에 동참하세요. 글로벌 혁신가들과 연결하고, 협력하고, 성장하세요.

지금 참여하기