Concetti di ottimizzazione dei modelli
La messa a punto è un processo che consiste nel prendere un modello addestrato in precedenza e modificarlo per adattarlo meglio ai tuoi dati. Questo processo consente di sfruttare al meglio i dati e migliorare le prestazioni del modello. In questo articolo imparerai i concetti di base del fine-tuning e quando è opportuno applicarlo a un modello di intelligenza artificiale.
La messa a punto è una tecnica potente che può aiutarti a ottenere di più dai tuoi dati. Per comprendere l'ottimizzazione, è importante comprendere il concetto di apprendimento trasferibile. Il trasferimento dell'apprendimento è una tecnica di apprendimento automatico in cui un modello addestrato su un compito viene riutilizzato su un secondo compito correlato. Questa operazione viene eseguita prendendo un modello pre-addestrato e modificandolo in modo da adattarlo meglio ai nuovi dati. ** La messa a punto è una forma di apprendimento di trasferimento in cui il modello pre-addestrato viene regolato in modo da adattarlo meglio ai nuovi dati.
L'ottimizzazione di un modello comporta diversi passaggi. Prima di tutto, è necessario selezionare un modello preaddestrato adatto per il tuo compito. Successivamente, è necessario preparare i dati di esempio e ottimizzare il modello su questi dati. Infine, è necessario iterare sul modello per migliorarne le prestazioni.
L'ottimizzazione è adatta per i tempi in cui si dispone di una piccola quantità di dati e si vuole migliorare le prestazioni del modello. A partire da un modello pre-addestrato, è possibile sfruttare le conoscenze già apprese dal modello e modificarle per adattarle meglio ai dati. Ciò consente di migliorare le prestazioni del modello e ridurre la quantità di dati necessari per eseguirne il training.
In genere non è necessario ottimizzare il modello quando si dispone di una grande quantità di dati. In questo caso, è possibile addestrare il modello da zero e ottenere buone prestazioni senza effettuare il fine-tuning. Tuttavia, l'ottimizzazione può comunque essere utile in questo caso se si desidera migliorare ulteriormente le prestazioni del modello. È anche possibile ottimizzare il modello se hai un compito specifico diverso da quello per cui è stato addestrato il modello pre-addestrato.
È possibile evitare l'ottimizzazione costosa di un modello usando l'ingegneria dei prompt o il concatenamento dei prompt. Queste tecniche consentono di generare testo di alta qualità senza la necessità di ottimizzare.
È consigliabile selezionare un modello con training preliminare adatto ai requisiti dell'attività. Ci sono molti modelli pre-addestrati disponibili che sono stati addestrati su un'ampia gamma di attività. È consigliabile scegliere un modello sottoposto a training su un'attività simile a quella su cui si sta lavorando. In questo modo sarà possibile sfruttare le conoscenze già apprese dal modello e modificarle per adattarli meglio ai dati.
HuggingFace modelli sono un buon punto di partenza quando si cercano modelli pre-addestrati. I modelli HuggingFace sono raggruppati in categorie in base all'attività su cui è stato eseguito il training, semplificando la ricerca di un modello adatto all'attività.
Queste categorie includono:
- Multimodale
- Visione artificiale
- Elaborazione del linguaggio naturale
- Audio
- Tabellare
- Apprendimento per rinforzo
Controllare la compatibilità del modello con l'ambiente e gli strumenti in uso. Ad esempio, se si usa Visual Studio Code, è possibile usare l'estensione Azure Machine Learning per Visual Studio Code per ottimizzare il modello.
Controllare lo stato e la licenza del modello. Alcuni modelli pre-addestrati possono essere disponibili con una licenza open source, mentre altri potrebbero richiedere una licenza commerciale o personale per l'uso. Tutti i modelli in HuggingFace includono informazioni sulla licenza. Assicurarsi di disporre delle autorizzazioni necessarie per usare il modello prima di ottimizzarlo.
La preparazione dei dati di esempio comporta la pulizia e la pre-elaborazione dei dati per renderli utilizzabili nell'addestramento. È anche necessario suddividere i dati in set di training e convalida per valutare le prestazioni del modello. Il formato dei tuoi dati deve corrispondere al formato previsto dal modello pre-addestrato che stai usando. Queste informazioni sono disponibili nei modelli
Dopo aver ottimizzato il modello, è necessario valutarne le prestazioni nel set di convalida. È possibile usare metriche come accuratezza, precisione, richiamo e punteggio F1 per valutare le prestazioni del modello. Se le prestazioni del tuo modello non sono soddisfacenti, è possibile iterare sul modello modificando gli iperparametri, cambiando l'architettura o affinando il modello su più dati. È anche possibile esaminare la qualità e la diversità dei dati per verificare se sono presenti problemi da risolvere. Come regola generale, un set più piccolo di dati di alta qualità è più prezioso di un set più ampio di dati di bassa qualità.
Per altre informazioni sull'ottimizzazione dei modelli di intelligenza artificiale, vedere le risorse seguenti:
- Ottimizzare un modello di Llama 2 in Azure AI Studio
- Affinare un modello pre-addestrato su HuggingFace
- Ottimizzazione di un modello pre-addestrato con TensorFlow
Quando si usano le funzionalità di intelligenza artificiale, è consigliabile esaminare: Sviluppo di applicazioni e funzionalità di intelligenza artificiale responsabile in Windows.