Condividi tramite


Modello di apprendimento automatico in Microsoft Fabric

Un modello di apprendimento automatico è un file sottoposto a training per il riconoscimento di determinati tipi di criteri. Il training di un modello viene eseguito su un set di dati, fornendogli un algoritmo che può usare per ragionare e apprendere da questi set di dati. Dopo aver eseguito il training del modello, è possibile usarlo per ragionare sui dati nuovi al modello e per fare previsioni su tali dati.

In MLflow un modello di apprendimento automatico può includere più versioni del modello. In questo caso, ogni versione può rappresentare un'iterazione del modello. In questo articolo viene mostrato come interagire con i modelli di apprendimento automatico per tenere traccia e mettere a confronto le versioni del modello.

Creare un modello di Machine Learning

In MLflow, i modelli di apprendimento automatico includono un formato di pacchetti standard. Questo formato consente l'uso di questi modelli in vari strumenti downstream, inclusa l'inferenza batch in Apache Spark. Il formato definisce una convenzione per salvare un modello in diverse "versioni" comprensibili per diversi strumenti downstream.

È possibile creare direttamente un modello di apprendimento automatico dall'interfaccia utente di Fabric. L'API MLflow può anche creare direttamente il modello.

Per creare un modello di apprendimento automatico dall'interfaccia utente, è possibile:

  1. Creare una nuova area di lavoro per la data science o selezionare un'area di lavoro data science esistente.

  2. Nell'elenco a discesa + Nuovo, seleziona Modello per creare un modello vuoto nell'area di lavoro di data science.

    Screenshot che mostra il Nuovo menù a discesa.

  3. Dopo la creazione del modello, è possibile iniziare ad aggiungere versioni del modello per tenere traccia delle metriche e dei parametri di esecuzione. Registrare o salvare le esecuzioni dell'esperimento in un modello esistente.

È anche possibile creare un esperimento di apprendimento automatico direttamente dall'esperienza di creazione con l'API mlflow.register_model(). Se non esiste un modello di apprendimento automatico registrato con il nome specificato, l'API lo crea in automatico.

import mlflow

model_uri = "runs:/{}/model-uri-name".format(run.info.run_id)
mv = mlflow.register_model(model_uri, "model-name")

print("Name: {}".format(mv.name))
print("Version: {}".format(mv.version))

Gestisci le versioni all'interno di un modello di apprendimento automatico

Un modello di apprendimento automatico contiene una raccolta di versioni del modello per il rilevamento e il confronto semplificati. All'interno di un modello, un data scientist può spostarsi tra diverse versioni del modello per esplorare i parametri e le metriche sottostanti. I data scientist possono anche eseguire confronti tra versioni del modello per identificare se i modelli più recenti potrebbero produrre risultati migliori.

Tenere traccia dei modelli di apprendimento automatico

Una versione del modello di apprendimento automatico rappresenta un singolo modello registrato per il rilevamento.

Screenshot che mostra il riquadro dei dettagli del modello.

Ogni versione del modello include le informazioni seguenti:

  • Orario di creazione: data e ora di creazione della tabella.
  • Nome esecuzione: identificatore per le esecuzioni dell'esperimento usato per creare questa versione specifica del modello.
  • Iperparametri: gli iperparametri vengono salvati come coppie chiave-valore. Entrambe le chiavi e i valori sono stringhe.
  • Metriche: metriche di esecuzione salvate come coppie chiave-valore. Il valore è numerico.
  • Modello Schema/Firma: descrizione del modello input e output.
  • File registrati: file registrati in qualsiasi formato. Ad esempio, è possibile registrare immagini, ambiente, modelli e file di dati.

Confronta e filtra i modelli di apprendimento automatico

Per confrontare e valutare la qualità delle versioni del modello di apprendimento automatico, è possibile confrontare i parametri, le metriche e i metadati tra le versioni selezionate.

Confronta visivamente i modelli di apprendimento automatico

È possibile confrontare visivamente le esecuzioni all'interno di un modello esistente. Il confronto visivo consente di passare in rassegna e spostarsi facilmente tra più versioni.

Screenshot che mostra un elenco di esecuzioni per il confronto.

Per confrontare le esecuzioni, è possibile:

  1. Selezionare un modello di apprendimento automatico esistente che contiene più versioni.
  2. Selezionare la scheda Visualizza e quindi passare alla visualizzazione elenco modello. È anche possibile selezionare l'opzione Visualizza elenco di modelli direttamente dalla visualizzazione dei dettagli.
  3. È possibile personalizzare le colonne all'interno della tabella. Espandere il riquadro Personalizza colonne. Da qui è possibile selezionare le proprietà, le metriche e gli iperparametri da visualizzare.
  4. Infine, è possibile selezionare più versioni nel riquadro di confronto delle metriche, per confrontarne i risultati. Da questo riquadro è possibile personalizzare i grafici con le modifiche apportate al titolo del grafico, al tipo di visualizzazione, all'asse X, all'asse Y e altro ancora.

Confrontare i modelli di apprendimento automatico usando l'API MLflow

I data scientist possono anche usare MLflow per eseguire ricerche tra più modelli salvati nell'area di lavoro. Visitare la documentazione di MLflow per esplorare altre API MLflow per l'interazione con il modello.

from pprint import pprint

client = MlflowClient()
for rm in client.list_registered_models():
    pprint(dict(rm), indent=4)

Applicare modelli di apprendimento automatico

Dopo aver eseguito il training di un modello in un set di dati, è possibile applicare tale modello a dati che non ha mai visto, per generare previsioni. Questa tecnica dell’uso di un modello è chiamata punteggio o inferenza. Per altre informazioni sul punteggio dei modelli di Microsoft Fabric, vedi la sezione successiva.