Registrazione automatica in Microsoft Fabric

Questo articolo descrive l'autologging per Synapse Data Science in Microsoft Fabric.

Utilizzando l'autologging, richiede significativamente meno codice per registrare automaticamente i parametri, le metriche e gli elementi di un modello di Machine Learning durante l'addestramento.

Il "logging automatico" estende le funzionalità di MLflow tracking ed è profondamente integrato nell'esperienza di Data Science di Synapse in Microsoft Fabric.

La registrazione automatica può acquisire metriche, inclusi accuratezza, perdita, punteggio F1 e metriche personalizzate che definisci. Usando l'assegnazione automatica di tag, gli sviluppatori e i data scientist possono tenere traccia e confrontare facilmente le prestazioni di modelli e esperimenti diversi senza tracciare manualmente.

Framework supportati

Autologging supporta un'ampia gamma di framework di apprendimento automatico, tra cui TensorFlow, PyTorch, scikit-learn e XGBoost. Per maggiori informazioni sulle proprietà specifiche del framework che acquisisce automaticamente i tag, vedere la documentazione di MLflow.

Impostazione

Il log automatico funziona durante l'addestramento per acquisire automaticamente i valori dei parametri di input, delle metriche di output e degli elementi di output di un modello di Machine Learning. Queste informazioni vengono registrate nell'area di lavoro Microsoft Fabric, in cui è possibile accedervi e visualizzarla usando le API MLflow o gli elementi dell'esperimento e del modello corrispondenti nell'area di lavoro Microsoft Fabric.

Quando si apre un notebook di Synapse Data Science, Microsoft Fabric utilizza mlflow.autolog() per abilitare immediatamente il tracciamento e caricare le dipendenze corrispondenti. Durante il training dei modelli nel notebook, MLflow tiene traccia automaticamente delle informazioni sul modello.

La configurazione viene eseguita automaticamente quando si esegue import mlflow. La configurazione predefinita per l'hook mlflow.autolog() del notebook è:


mlflow.autolog(
    log_input_examples=False,
    log_model_signatures=True,
    log_models=True,
    log_datasets=True,
    log_traces=True,
    disable=False,
    exclusive=True,
    disable_for_unsupported_versions=True,
    silent=True,
    extra_tags=None,
    exclude_flavors=None
)

Personalizzazione

Per personalizzare il comportamento di registrazione, usare la mlflow.autolog() configurazione. Questa configurazione fornisce parametri per abilitare la registrazione del modello, raccogliere esempi di input, configurare avvisi o abilitare la registrazione per il contenuto aggiunto specificato.

Tenere traccia di altre metriche, parametri e proprietà

Per le esecuzioni create usando MLflow, aggiornate la configurazione di registrazione automatica di MLflow per tenere traccia di metriche, parametri, file e metadati aggiuntivi:

  1. Aggiorna la chiamata mlflow.autolog() a exclusive=False.

        mlflow.autolog(
        log_input_examples=False,
        log_model_signatures=True,
        log_models=True,
        log_datasets=True,
        log_traces=True,
        disable=False,
        exclusive=False, # Update this property to enable custom logging
        disable_for_unsupported_versions=True,
        silent=True,
        extra_tags=None,
        exclude_flavors=None
    )
    
  2. Usare le API di rilevamento MLflow per registrare parametri e metriche aggiuntive. Il codice di esempio seguente illustra come registrare le metriche e i parametri personalizzati insieme a proprietà aggiuntive.

    import mlflow
    mlflow.autolog(exclusive=False)
    
    with mlflow.start_run():
    mlflow.log_param("parameter name", "example value")
    # <add model training code here>
    mlflow.log_metric("metric name", 20)
    

Disabilitare il logging automatico di Microsoft Fabric

È possibile disabilitare l'autologging di Microsoft Fabric per una sessione specifica di notebook. È anche possibile disabilitare l'autologging in tutti i notebook usando le impostazioni dell'area di lavoro.

Nota

Se l'autologging è disabilitato, è necessario registrare manualmente i parametri e le metriche usando le API di MLflow.

Disabilitare l'assegnazione automatica di tag per una sessione del notebook

Per disabilitare il logging automatico di Microsoft Fabric per una sessione specifica del notebook, chiamare mlflow.autolog() e configurare disable=True.

import mlflow
mlflow.autolog(disable=True)

Disabilitare la registrazione automatica per tutti i notebook e le sessioni

Gli amministratori dell'area di lavoro possono abilitare o disabilitare l'autologging di Microsoft Fabric per tutti i notebook e le sessioni nell'area di lavoro usando le impostazioni dell'area di lavoro.

Per abilitare o disabilitare l'autologging di Synapse Data Science:

  1. Nell'area di lavoro selezionare Impostazioni area di lavoro.

    Screenshot che mostra un'area di lavoro con le impostazioni dell'area di lavoro evidenziate.

  2. In Impostazioni area di lavoro espandere Progettazione dati/Scienza nel menu a sinistra e selezionare Impostazioni Spark.

  3. Nelle impostazioni di Spark selezionare la scheda Log automatico .

  4. Impostare Rilevamento automatico di esperimenti e modelli di apprendimento automatico su Attivato o Disattivato.

  5. Seleziona Salva.

    Screenshot che mostra le impostazioni dell'area di lavoro per il registro automatico.