Condividi tramite


Migliorare il modello di ML.NET

Informazioni su come migliorare il modello di ML.NET.

Riformulare il problema

In alcuni casi il miglioramento di un modello potrebbe non essere correlato ai dati o alle tecniche usate per il training del modello. È possibile invece che semplicemente sia stata posta la domanda errata. Può essere utile esaminare il problema da diverse angolazioni e usare i dati per estrarre indicatori latenti e relazioni nascoste per perfezionare la domanda.

Fornire più esempi di dati

Come avviene per gli esseri umani, se gli algoritmi ricevono più training, aumenta la probabilità di ottenere prestazioni migliori. Un modo per migliorare le prestazioni del modello consiste nel fornire più esempi di dati di training agli algoritmi. Maggiore è la quantità di dati su cui si basa l'apprendimento dell'algoritmo, maggiore sarà il numero di casi identificati correttamente dall'algoritmo.

Aggiungere contesto ai dati

È possibile che il significato di un singolo punto dati sia difficile da interpretare. La creazione di un contesto per i punti dati consente agli algoritmi e agli esperti in materia di migliorare di prendere le decisioni in modo migliore. Ad esempio, il fatto che un'abitazione abbia tre camere da letto non dà di per se stesso un'indicazione valida sul prezzo. Tuttavia, se si aggiunge un contesto e quindi l'informazione che l'abitazione si trova in una zona periferica al di fuori della principale area metropolitana in cui l'età media è di 38 anni, il reddito medio delle famiglie è di 80.000 $ e le scuole rientrano nel primo 20° percentile, l'algoritmo avrà maggiori informazioni su cui basare le decisioni. Il contesto può essere aggiunto come input del modello di Machine Learning sotto forma di caratteristiche.

Usare caratteristiche e dati significativi

Sebbene una maggior quantità di caratteristiche e dati di esempio possano migliorare l'accuratezza del modello, è possibile che venga aumentato il rumore poiché non tutte le caratteristiche e i dati sono significativi. Per questa ragione, è importante comprendere quali caratteristiche hanno un maggior impatto sulle decisioni prese dall'algoritmo. L'uso di tecniche come Permutation Feature Importance (PFI) consente di identificare le caratteristiche salienti e oltre a descrivere il modello anche a usare l'output come metodo di selezione delle caratteristiche per ridurre la quantità di caratteristiche rumorose nel processo di training.

Per altre informazioni sull'uso di PFI, vedere Spiegare le previsioni del modello usando Permutation Feature Importance.

Convalida incrociata

La convalida incrociata è una tecnica di training e valutazione del modello che suddivide i dati in più partizioni ed esegue il training di più algoritmi nelle partizioni. Questa tecnica consente di migliorare l'affidabilità del modello offrendo dati provenienti dal processo di training. Oltre a migliorare le prestazioni sulle osservazioni non visibili, in ambienti con limiti di dati può rappresentare uno strumento efficace per il training di modelli con set di dati di dimensioni minori.

Visitare il link seguente per informazioni su come usare la convalida incrociata in ML.NET

Ottimizzazione degli iperparametri

Il training dei modelli di Machine Learning è un processo iterativo ed esplorativo. Ad esempio, qual è il numero ottimale di cluster per il training di un modello tramite l'algoritmo K-means? La risposta dipende da molti fattori, ad esempio dalla struttura dei dati. La ricerca del numero ottimale richiederebbe una sperimentazione con valori diversi per k e quindi la valutazione delle prestazioni per determinare qual è il valore migliore. La regolazione dei parametri che guidano il processo di training per trovare un modello ottimale è chiamata ottimizzazione degli iperparametri.

Scegliere un algoritmo diverso

Le attività di Machine Learning come la regressione e la classificazione contengono diverse implementazioni di algoritmi. È possibile che il problema che si sta tentando di risolvere e il modo in cui sono strutturati i dati non siano particolarmente adatti all'algoritmo corrente. In questo caso può essere utile usare un algoritmo diverso per l'attività per verificare se è possibile migliorare l'apprendimento dai dati.

Visitare il link seguente per altre informazioni sulla scelta dell'algoritmo.