YOLO Vision Shenzhen
深セン
今すぐ参加
用語集

可観測性

AIとMLにおけるオブザーバビリティの重要性を探る。複雑なシステムをデバッグし、Ultralytics YOLO26のパフォーマンスを監視し、深いモデルの知見を得る方法を学ぶ。

オブザーバビリティとは、複雑なシステムの内部状態を、その外部出力のみに基づいて理解する能力を指します。急速に進化する人工知能(AI)および機械学習(ML)の分野において、オブザーバビリティは単純なステータスチェックを超え、モデルが特定の方法で動作する理由について深い洞察を提供します。最先端のYOLO26のような現代のディープラーニング(DL)アーキテクチャがますます洗練されるにつれて、それらはしばしば「ブラックボックス」として機能することがあります。オブザーバビリティツールは、これらのシステムに透明な窓を作り出し、エンジニアリングチームが予期せぬ動作をデバッグし、エラーの根本原因を特定し、本番環境での信頼性を確保することを可能にします。

可観測性 vs. 監視

しばしば interchangeably に使われますが、可観測性とモデル監視は、MLOpsライフサイクルにおいて異なるが補完的な目的を果たします。

  • Model Monitoring はリアクティブであり、「既知の未知」に焦点を当てます。これには、推論レイテンシ、CPU使用率、エラー率などの事前定義されたメトリクスを確立されたしきい値に対して追跡することが含まれます。監視は「システムは健全か?」という問いに答えます。
  • 可観測性はプロアクティブであり、「未知の未知」に対処します。トレーニングデータ準備中に予期されなかった新たな問題を調査するために必要な、ログ、トレース、高カーディナリティイベントといった粒度の高いデータを提供します。Google SRE Bookに記載されているように、可観測性のあるシステムは、新しいコードをデプロイすることなく、新しい動作を理解することを可能にします。これは「なぜシステムはこのように動作しているのか?」という問いに答えます。

オブザーバビリティの3つの柱

コンピュータービジョン (CV)パイプラインにおける真の可観測性を実現するため、システムは通常、3つの主要なタイプのテレメトリーデータに依存します。

  1. Logs: タイムスタンプ付きの、不変な離散イベントの記録です。検出パイプラインでは、ログは入力画像解像度や、実行中に使用された特定のハイパーパラメータチューニング設定をキャプチャする場合があります。JSON形式で記述されることが多い構造化ロギングは、複雑なクエリと分析を可能にします。
  2. メトリクス: 平均精度、メモリ消費量、GPU使用率など、時間経過とともに測定される集計された数値データです。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)

実際のアプリケーション

オブザーバビリティは、テストデータが実世界の条件と完全に一致しない可能性がある動的な環境で、高性能モデルを展開するために不可欠です。

  • 自動運転車: 自律走行車の開発においてにおいて、可観測性によりエンジニアは制御解除イベント発生時のシステムの正確な状態を再構築できる。 物体検出 物体検出 センサーログや制御コマンドと 相関させることで、ブレーキ誤作動がセンサーノイズ、モデル 予測誤り、または計画モジュールの論理エラーのいずれが原因かを特定できる。
  • ヘルスケア診断: ヘルスケアAIにおいて、一貫したパフォーマンスの確保は患者の安全にとって不可欠です。オブザーバビリティツールは、新しいタイプのMRIスキャナーからの画像にモデルを適用したときにパフォーマンスが低下した場合、データドリフトを検出できます。トレースにより、問題が画像データ前処理の変更、または入力分布のシフトに起因するかどうかが明らかになり、AIの安全性を損なうことなく迅速な是正が可能になります。

最新ツールとの統合

現代のワークフローは、しばしばオブザーバビリティをトレーニングプラットフォームに直接統合します。Ultralytics Platformのユーザーは、損失曲線、システムパフォーマンス、データセット分析の組み込み可視化から恩恵を受けます。さらに、TensorBoardMLflowのようなツールとの標準的な統合により、データサイエンティストはモデルライフサイクル全体にわたって厳密な実験追跡とオブザーバビリティを維持できます。

共にAIの未来を築きましょう!

未来の機械学習で、新たな一歩を踏み出しましょう。