Glossario

Inferenza in tempo reale

Scopri come l'inferenza in tempo reale con Ultralytics YOLO permette di fare previsioni istantanee per applicazioni di AI come la guida autonoma e i sistemi di sicurezza.

Addestra i modelli YOLO semplicemente
con Ultralytics HUB

Per saperne di più

L'inferenza in tempo reale si riferisce al processo in cui un modello di apprendimento automatico (ML) addestrato fa previsioni o prende decisioni immediatamente quando arrivano nuovi dati. A differenza dell'inferenza batch, che elabora i dati in gruppi raccolti nel tempo, l'inferenza in tempo reale privilegia la bassa latenza e le risposte immediate. Questa capacità è essenziale per le applicazioni che richiedono un feedback immediato o un'azione basata su flussi di dati in tempo reale, consentendo ai sistemi di reagire dinamicamente a condizioni mutevoli, in linea con i principi dell'informatica in tempo reale.

Capire l'inferenza in tempo reale

In pratica, l'inferenza in tempo reale implica l'impiego di un modello di ML, come ad esempio un modello di Ultralytics YOLO per la computer vision (CV), in modo che possa analizzare i singoli input di dati (come i fotogrammi di un video o le letture di un sensore) e produrre output con un ritardo minimo. Il parametro chiave delle prestazioni è la latenza di inferenza, ovvero il tempo che intercorre tra la ricezione di un input e la generazione di una previsione. Il raggiungimento di una bassa latenza spesso comporta diverse strategie, tra cui l'ottimizzazione del modello stesso e l'utilizzo di hardware e software specializzati.

Inferenza in tempo reale vs. inferenza batch

La differenza principale sta nel modo in cui i dati vengono elaborati e nei requisiti di latenza associati:

  • Inferenza in tempo reale: Elabora i dati punto per punto man mano che arrivano, concentrandosi sulla minimizzazione del ritardo per ogni previsione. È essenziale per i sistemi interattivi o per le applicazioni che richiedono risposte immediate. Pensa al rilevamento di un ostacolo per un'auto a guida autonoma.
  • Inferenza batch: Elabora i dati in grandi pezzi o batch, spesso programmati periodicamente. Ottimizzato per il throughput (elaborazione efficiente di grandi volumi di dati) piuttosto che per la latenza. È adatto per attività come la generazione di report giornalieri o l'analisi di grandi set di dati offline. Google Cloud offre approfondimenti sulla predizione in batch.

Applicazioni dell'inferenza in tempo reale

L'inferenza in tempo reale è alla base di molte moderne applicazioni di Intelligenza Artificiale (AI) in cui è fondamentale prendere decisioni istantanee:

  • Sistemi autonomi: Nell'IA per le auto a guida autonoma e la robotica, l'inferenza in tempo reale è fondamentale per navigare negli ambienti, individuare gli ostacoli(rilevamento degli oggetti) e prendere decisioni di guida in una frazione di secondo.
  • Sicurezza e sorveglianza: I sistemi di sicurezza utilizzano l'inferenza in tempo reale per rilevare intrusioni, identificare attività sospette o monitorare la folla all'istante.
  • Assistenza sanitaria: Consentire l'analisi immediata delle immagini mediche durante le procedure o la diagnostica può migliorare significativamente i risultati dei pazienti e l'accuratezza diagnostica.
  • Produzione: Il controllo qualità in tempo reale nel settore manifatturiero consente di rilevare immediatamente i difetti sulla linea di produzione, riducendo gli sprechi e migliorando l'efficienza.
  • Applicazioni interattive: Gli assistenti virtuali, le traduzioni linguistiche in tempo reale e i sistemi di raccomandazione dei contenuti si basano su un'inferenza a bassa latenza per fornire un'esperienza utente senza interruzioni.

Ottenere prestazioni in tempo reale

Per rendere i modelli sufficientemente veloci per le applicazioni in tempo reale, spesso è necessaria un'ottimizzazione significativa:

Modelli come Ultralytics YOLO11 sono stati progettati all'insegna dell'efficienza e dell'accuratezza, il che li rende adatti a compiti di rilevamento di oggetti in tempo reale. Piattaforme come Ultralytics HUB forniscono strumenti per l'addestramento, l'ottimizzazione (ad esempio, l'esportazione a ONNX o TensorRT ) e distribuire i modelli, facilitando l'implementazione di soluzioni di inferenza in tempo reale con diverse opzioni di distribuzione.

Leggi tutto