Creazione di modelli LiteRT

Questa pagina fornisce indicazioni per la creazione di modelli TensorFlow con l'intenzione di convertire nel formato del modello LiteRT. La macchina di machine learning (ML) che utilizzi con LiteRT sono originariamente creati vengono addestrati utilizzando le librerie e gli strumenti di base TensorFlow. Dopo aver creato un modello con TensorFlow Core, puoi convertirlo in un modello ML più piccolo ed efficiente chiamato modello LiteRT.

Se hai già un modello da convertire, consulta la sezione Convertire modelli Panoramica per istruzioni sulla conversione del modello.

Creazione del modello

Se stai creando un modello personalizzato per il tuo caso d'uso specifico, dovresti iniziare con lo sviluppo e l'addestramento di un modello TensorFlow o l'estensione di un modello esistente.

Vincoli di progettazione del modello

Prima di iniziare il processo di sviluppo del modello, è bene conoscere le vincoli per i modelli LiteRT e crea il tuo modello con questi i vincoli in considerazione:

  • Capacità di calcolo limitate - Rispetto ai server completamente attrezzati con più CPU, capacità di memoria elevata e processori specializzati come GPU e TPU, dispositivi mobili e dispositivi periferici sono molto più limitati. Mentre sono di potenza di calcolo e di compatibilità hardware specializzata, i modelli e i dati che puoi elaborare efficacemente con loro sono ancora relativamente limitati.
  • Dimensione dei modelli: la complessità complessiva di un modello, inclusi i dati dalla logica di pre-elaborazione e il numero di strati nel modello, dimensioni in memoria di un modello. Un modello di grandi dimensioni può essere eseguito inaccettabilmente lento o semplicemente potrebbe non essere sufficiente nella memoria disponibile di un dispositivo mobile o periferico.
  • Dimensione dei dati: la dimensione dei dati di input che possono essere elaborati efficacemente con un modello di machine learning è limitata su un dispositivo mobile o periferico. Modelli che usano librerie di dati di grandi dimensioni come librerie di linguaggi, librerie di immagini o le raccolte di video clip potrebbero non essere adatte a questi dispositivi e potrebbero richiedere le soluzioni di archiviazione e accesso al di fuori del dispositivo.
  • Operazioni TensorFlow supportate - Ambienti di runtime LiteRT supportare un sottoinsieme di operazioni del modello di machine learning rispetto alle normali modelli TensorFlow. Man mano che sviluppi un modello da usare con LiteRT, dovrebbe monitorare la compatibilità del modello con le funzionalità Ambienti di runtime LiteRT.

Per saperne di più sulla creazione di modelli efficaci, compatibili e ad alte prestazioni per LiteRT, vedi Best practice per le prestazioni.

Sviluppo del modello

Per creare un modello LiteRT, devi prima creare un modello utilizzando tramite le librerie TensorFlow Core. Le librerie TensorFlow Core sono le applicazioni librerie che forniscono API per creare, addestrare ed eseguire il deployment di modelli ML.

Flusso di lavoro delle build TFLite

Per farlo, TensorFlow offre due percorsi. Puoi sviluppare modelli codice del modello oppure puoi iniziare con un'implementazione del modello disponibile Model Garden di TensorFlow.

Model Garden

TensorFlow Model Garden fornisce implementazioni di molti modelli modelli di machine learning (ML) per l'elaborazione di visione artificiale e del linguaggio naturale (NLP). Troverai anche strumenti per il flusso di lavoro che ti consentono di configurarli ed eseguirli rapidamente di base su set di dati standard. I modelli di machine learning in Model Garden includere il codice completo in modo da poterli testare, addestrare o riaddestrare e set di dati.

Se stai cercando di confrontare le prestazioni per un modello noto, verifica i risultati di una ricerca rilasciata di recente o estendere i modelli esistenti, Garden può aiutarti a raggiungere i tuoi obiettivi di ML.

Modelli personalizzati

Se il tuo caso d'uso non rientra tra quelli supportati dai modelli in Model Garden, puoi usare una libreria di alto livello come Keras per sviluppare il codice di addestramento personalizzato. Per apprendere le nozioni di base di TensorFlow, consulta il Guida di TensorFlow. Per iniziare esempi, consulta i tutorial su TensorFlow panoramica, che contengono rimandi a dall'inizio ai tutorial di livello esperto.

Valutazione del modello

Una volta sviluppato il modello, devi valutarne le prestazioni e testarlo sui dispositivi degli utenti finali. Per farlo, TensorFlow offre alcuni modi.

  • TensorBoard è uno strumento che fornisce le misurazioni e le visualizzazioni necessarie durante nel flusso di lavoro del machine learning. Consente di monitorare metriche dell'esperimento come la perdita e l'accuratezza, visualizzando il grafico del modello, proiettando gli incorporamenti a un spazio dimensionale e molto altro ancora.
  • Per ogni modello supportato sono disponibili strumenti di benchmarking come l'app di benchmark per Android e l'app di benchmark per iOS. Utilizza le funzionalità di strumenti per misurare e calcolare le statistiche per ottenere metriche di valutazione.

Ottimizzazione del modello

Con i vincoli sulle risorse specifiche di TensorFlow Per i modelli Lite, l'ottimizzazione del modello può aiutare a garantire le prestazioni del modello e consuma meno risorse di calcolo. Le prestazioni del modello di machine learning sono in genere equilibrio tra dimensione e velocità di inferenza e accuratezza. LiteRT attualmente supporta l'ottimizzazione tramite quantizzazione, eliminazione e clustering. Consulta: consulta l'argomento ottimizzazione del modello per ulteriori dettagli su questi tecniche. TensorFlow offre anche un servizio di ottimizzazione del modello toolkit che fornisce un'API che implementa questi tecniche.

Passaggi successivi