Glossario

Osservabilità

Scopri come l'osservabilità migliora i sistemi AI/ML come Ultralytics YOLO . Ottieni informazioni, ottimizza le prestazioni e garantisci l'affidabilità delle applicazioni reali.

Addestra i modelli YOLO semplicemente
con Ultralytics HUB

Per saperne di più

L'osservabilità fornisce approfondimenti critici sul comportamento e sulle prestazioni di sistemi complessi, particolarmente importanti nel campo dinamico dell'Intelligenza Artificiale (AI) e del Machine Learning (ML). Per gli utenti che lavorano con modelli sofisticati come Ultralytics YOLOla comprensione dello stato interno delle applicazioni implementate attraverso i loro output esterni è fondamentale per mantenere l'affidabilità, ottimizzare le prestazioni e garantire l'affidabilità delle applicazioni reali. Aiuta a colmare il divario tra lo sviluppo del modello e il successo operativo.

Cos'è l'osservabilità?

L'osservabilità è la capacità di misurare e comprendere gli stati interni di un sistema esaminando i suoi output, come log, metriche e tracce. A differenza del monitoraggio tradizionale, che in genere si concentra su cruscotti predefiniti e modalità di guasto note (es, CPU utilizzo della CPU, tassi di errore), l'osservabilità consente ai team di esplorare in modo proattivo il comportamento del sistema e di diagnosticare nuovi problemi, anche quelli non previsti durante lo sviluppo. Nel contesto delle MLOps (Machine Learning Operations), consente di porre domande più profonde sul perché un sistema si comporta in un certo modo, il che è fondamentale per la natura iterativa dello sviluppo e dell'implementazione dei modelli di ML. Si tratta di ottenere visibilità su sistemi complessi, compresi i modelli di deep learning.

Perché l'osservabilità è importante nell'AI/ML?

La complessità e la natura spesso "black box" dei modelli di deep learning rendono indispensabile l'osservabilità. I motivi principali sono:

Osservabilità vs. Monitoraggio

Pur essendo correlate, l'osservabilità e il monitoraggio differiscono per ambito e scopo. Il monitoraggio prevede la raccolta e l'analisi dei dati relativi a metriche predefinite per monitorare lo stato di salute del sistema rispetto a parametri di riferimento noti (ad esempio, il monitoraggio del punteggio mAP di un modello di rilevamento degli oggetti implementato). Risponde a domande come "Il sistema è attivo?" o "Il tasso di errore è inferiore a X?". Il monitoraggio dei modelli è un tipo specifico di monitoraggio incentrato sui modelli ML in produzione.

L'osservabilità, invece, utilizza i dati in uscita (log, metriche, tracce - spesso chiamati i"tre pilastri dell'osservabilità") per consentire un'analisi più profonda ed esplorativa. Ti permette di capire il "perché" degli stati del sistema, soprattutto quelli inaspettati. Pensa al monitoraggio come a un cruscotto che riporta i problemi noti, mentre l'osservabilità fornisce gli strumenti (come l'interrogazione dei log o il tracciamento delle richieste) per indagare su qualsiasi anomalia, nota o sconosciuta. Facilita il debug di sistemi complessi.

Componenti chiave (i tre pilastri)

L'osservabilità si basa su tre tipi principali di dati telemetrici:

  1. Log: Registrazioni temporali di eventi discreti che si verificano all'interno del sistema. I log forniscono informazioni dettagliate e contestuali utili per il debug di incidenti specifici o per la comprensione di sequenze di operazioni. Tra gli esempi vi sono i messaggi di errore, gli eventi delle applicazioni o i dettagli delle richieste.
  2. Metriche: Rappresentazioni numeriche delle prestazioni o del comportamento del sistema misurate su intervalli di tempo. Le metriche sono aggregabili ed efficienti per tracciare le tendenze, impostare gli avvisi e comprendere la salute generale del sistema (ad esempio, la latenza delle richieste, il tasso di errore, l'utilizzo delle risorse).
  3. Tracce: Registrazioni che mostrano il percorso di una richiesta o di un'operazione mentre si propaga attraverso i vari componenti di un sistema distribuito. I tracciati aiutano a visualizzare il flusso, a identificare i colli di bottiglia delle prestazioni e a comprendere le dipendenze tra i servizi, fondamentali per le architetture a microservizi o per le complesse pipeline di ML.

Applicazioni del mondo reale

Le pratiche di osservabilità sono fondamentali nelle implementazioni sofisticate di AI/ML:

  • Sistemi di guida autonoma: Nell'AI per le soluzioni automobilistiche, l'osservabilità è fondamentale. I log dei sensori (come LiDAR, telecamere), le metriche sulla velocità di inferenza del modello di percezione e le tracce che tracciano il processo decisionale dalla percezione al controllo vengono analizzati costantemente. Questo aiuta gli ingegneri di aziende come Waymo a diagnosticare i guasti più rari (ad esempio, l'errata identificazione di un oggetto in determinate condizioni atmosferiche) e a garantire la sicurezza e l'affidabilità del sistema.
  • Analisi delle immagini mediche: Quando si utilizza l'IA per l'analisi delle immagini mediche, l'osservabilità aiuta a garantire la qualità diagnostica. Le metriche tengono traccia del punteggio di fiducia del modello e del tasso di accordo con i radiologi. I registri registrano i casi limite o le immagini segnalate per la revisione. Le tracce possono seguire un'immagine dall'ingestione alla preelaborazione, all'inferenza e alla creazione di report, aiutando a identificare le fonti di errore o di ritardo e a mantenere la conformità con le normative sanitarie(ricerca Radiology AI).

Strumenti e piattaforme

L'implementazione dell'osservabilità spesso richiede strumenti e piattaforme specializzate. Le soluzioni open-source come Prometheus (metriche), Grafana (visualizzazione), Loki (log) e Jaeger o Zipkin (tracciamento) sono molto diffuse. OpenTelemetry fornisce uno standard neutrale per la strumentazione. Piattaforme commerciali come Datadog, New Relic e Dynatrace offrono soluzioni integrate. Piattaforme MLOps come MLflow, Weights & Biasese ClearML spesso includono funzioni per il monitoraggio degli esperimenti e dei modelli, contribuendo all'osservabilità complessiva del sistema. Ultralytics HUB facilita la gestione dei cicli di formazione, dei dataset e dei modelli distribuiti, integrandosi con strumenti come TensorBoard per la visualizzazione delle metriche, un aspetto fondamentale dell'osservabilità durante la fase di formazione dei modelli.

Leggi tutto