Esercitazione: Prevedere la domanda con Machine Learning automatizzato senza codice nello studio di Azure Machine Learning

Informazioni su come creare un modello di previsione di serie temporali scrivere una sola riga di codice usando Machine Learning automatizzato nello studio di Azure Machine Learning. Questo modello stima la domanda di noleggio per un servizio di bike sharing.

Non si scrive codice in questa esercitazione. Si usa l'interfaccia dello studio per eseguire il training. Si apprenderà come eseguire le attività seguenti:

  • Creare e caricare un set di dati.
  • Configurare ed eseguire un esperimento di ML automatizzato.
  • Specificare le impostazioni di previsione.
  • Esplorare i risultati dell'esperimento.
  • Distribuire il modello migliore.

Provare Machine Learning automatizzato anche per questi altri tipi di modello:

Prerequisiti

Accedere allo studio

Per questa esercitazione, viene creato un esperimento di ML automatizzato eseguito in Azure Machine Learning Studio, un'interfaccia Web consolidata che include strumenti di Machine Learning per l'esecuzione di scenari di data science per esperti della materia con qualsiasi livello di competenza. Lo studio non è supportato nei browser Internet Explorer.

  1. Accedere ad Azure Machine Learning Studio.

  2. Selezionare la sottoscrizione e l'area di lavoro create.

  3. Seleziona Inizia.

  4. Nel riquadro sinistro selezionare Automated ML (Machine Learning automatizzato) nella sezione Creazione.

  5. Selezionare +Nuovo processo di ML automatizzato.

Creare e caricare il set di dati

Prima di configurare l'esperimento, caricare il file di dati nell'area di lavoro sotto forma di set di dati Azure Machine Learning. In questo modo, è possibile assicurarsi che i dati siano correttamente formattati per l'esperimento.

  1. Nel modulo Seleziona set di dati scegliere Da file locali dall'elenco a discesa +Crea set di dati.

    1. Nel modulo Informazioni di base assegnare un nome al set di dati e specificare una descrizione facoltativa. Il tipo di set di dati dovrebbe essere Tabulare per impostazione predefinita, perché il servizio ML automatizzato in Azure Machine Learning Studio attualmente supporta solo set di dati in questo formato.

    2. Selezionare Avanti in basso a sinistra

    3. Nel modulo Selezione archivio dati e file selezionare l'archivio dati predefinito che è stato configurato automaticamente durante la creazione dell'area di lavoro, workspaceblobstore (archiviazione BLOB di Azure). Si tratta del percorso di archiviazione in cui viene caricato il file di dati.

    4. Selezionare Carica file dall'elenco a discesa Carica.

    5. Scegliere il file bike-no.csv nel computer locale. Si tratta del file scaricato come prerequisito.

    6. Selezionare Avanti.

      Al termine del caricamento, il modulo Settings and preview (Impostazioni e anteprima) viene prepopolato in base al tipo di file.

    7. Verificare che il modulo Settings and preview (Impostazioni e anteprima) venga popolato come segue, quindi selezionare Avanti.

      Campo Descrizione Valore per l'esercitazione
      File format Definisce il layout e il tipo di dati archiviati in un file. delimitato
      Delimitatore Uno o più caratteri per specificare il limite tra aree distinte indipendenti in testo normale o altri flussi di dati. Virgola
      Codifica Identifica la tabella dello schema bit-carattere da usare per leggere il set di dati. UTF-8
      Intestazioni di colonna Indica come verranno considerate le intestazioni del set di dati, se presenti. Solo il primo file ha intestazioni
      Ignora righe Indica quante righe vengono eventualmente ignorate nel set di dati. None
    8. Il modulo Schema consente di configurare ulteriormente i dati per questo esperimento.

      1. Per questo esempio, scegliere di ignorare le colonne casual e registered. Queste colonne sono una scomposizione della colonna cnt, quindi non verranno incluse.

      2. Sempre per questo esempio, lasciare i valori predefiniti per Proprietà e Tipo.

      3. Selezionare Avanti.

    9. Nel modulo Confirm details (Conferma dettagli) verificare che le informazioni corrispondano a quelle con cui erano stati precedentemente popolati i moduli Basic info (informazioni di base) e Settings and preview (Impostazioni e anteprima).

    10. Selezionare Crea per completare la creazione del set di dati.

    11. Selezionare il set di dati quando viene visualizzato nell'elenco.

    12. Selezionare Avanti.

Configurazione del processo

Dopo aver caricato e configurato i dati, configurare la destinazione di calcolo remota e selezionare la colonna di dati per cui eseguire la previsione.

  1. Popolare il modulo Configura processo come segue:
    1. Immettere un nome di esperimento: automl-bikeshare

    2. Selezionare cnt come colonna di destinazione, che indica la previsione da eseguire. Questa colonna include il numero totale di noleggi di bike sharing.

    3. Selezionare Cluster di elaborazione come tipo di risorsa di calcolo.

    4. Selezionare +Nuovo per configurare la destinazione di calcolo. ML automatizzato supporta solo destinazioni di calcolo di Azure Machine Learning.

      1. Popolare il modulo Selezionare la macchina virtuale per configurare l'ambiente di calcolo.

        Campo Descrizione Valore per l'esercitazione
        Livello macchina virtuale Selezionare la priorità dell'esperimento Dedicato
        Tipo di macchina virtuale Selezionare il tipo di macchina virtuale per il contesto di calcolo. CPU (Central Processing Unit)
        Dimensioni della macchina virtuale Selezionare le dimensioni della macchina virtuale per il contesto di calcolo. È disponibile un elenco di dimensioni consigliate in base al tipo di dati e di esperimento. Standard_DS12_V2
      2. Selezionare Avanti per popolare il modulo Configura impostazioni.

        Campo Descrizione Valore per l'esercitazione
        Nome del calcolo Un nome univoco che identifica il contesto di calcolo. bike-compute
        Nodi min/max Per profilare i dati, è necessario specificare almeno un nodo. Numero minimo di nodi: 1
        Numero massimo di nodi: 6
        Secondi di inattività prima della riduzione Tempo di inattività prima che il cluster venga ridotto automaticamente al numero minimo di nodi. 120 (impostazione predefinita)
        Impostazioni avanzate Impostazioni per la configurazione e l'autorizzazione di una rete virtuale per l'esperimento. None
      3. Selezionare Crea per ottenere la destinazione di calcolo.

        Il completamento dell'operazione richiede alcuni minuti.

      4. Al termine della creazione, selezionare la nuova destinazione di calcolo dall'elenco a discesa.

    5. Selezionare Avanti.

Selezionare le impostazioni per la previsione

Per completare l'esperimento di ML automatizzato, specificare il tipo di attività di Machine Learning e le impostazioni di configurazione.

  1. Nel modulo Tipo di attività e impostazioni selezionare previsione come tipo di attività di Machine Learning.

  2. Selezionare data come Colonna data/ora e lasciare vuoto il campo Time series identifiers (Identificatori serie temporale).

  3. La Frequenza è la frequenza con cui vengono raccolti i dati cronologici. Mantenere selezionata l'opzione Rilevamento automatico.

  4. Orizzonte di previsione è il periodo di tempo futuro per cui eseguire la previsione. Deselezionare Rilevamento automatico e digitare 14 nel campo.

  5. Selezionare View additional configuration settings (Visualizza altre impostazioni di configurazione) e popolare i campi come indicato di seguito. Queste impostazioni consentono di controllare meglio il processo di training e di specificare le impostazioni per la previsione. Altrimenti, vengono applicate le impostazioni predefinite in base alla selezione dell'esperimento e ai dati.

    Configurazioni aggiuntive Descrizione Valore per l'esercitazione
    Primary metric (Metrica principale) Metrica di valutazione in base a cui verrà misurato l'algoritmo di Machine Learning. Radice normalizzata dell'errore quadratico medio
    Modello esplicativo migliore Mostra automaticamente il modello esplicativo migliore creato da ML automatizzato. Abilitare
    Blocked algorithms (Algoritmi bloccati) Algoritmi da escludere dal processo di training Extreme Random Trees
    Altre impostazioni della previsione Queste impostazioni consentono di migliorare l'accuratezza del modello.

    Prevedere ritardi di destinazione: quanto indietro nel tempo si vogliono creare i ritardi di una variabile di destinazione
    Dimensioni della finestra mobile di destinazione: specifica le dimensioni della finestra mobile in cui vengono generate funzionalità come max, min e sum.


    Previsione ritardo di destinazione: Nessuno
    Dimensioni della finestra mobile di destinazione: Nessuna
    Exit criterion (Esci da criterio) Se viene soddisfatto un criterio, il processo di training viene arrestato. Durata del processo di training (ore): 3
    Soglia di punteggio metrica: Nessuna
    Concorrenza Il numero massimo di iterazioni parallele eseguite per ogni iterazione Numero massimo di iterazioni simultanee: 6

    Seleziona Salva.

  6. Selezionare Avanti.

  7. Nel modulo [Facoltativo] Convalida e test:

    1. Selezionare la convalida incrociata k-fold come Tipo di convalida.
    2. Selezionare 5 come Numero di convalide incrociate.

Eseguire esperimento

Per eseguire l'esperimento, selezionare Fine. Viene visualizzata la schermata Dettagli processo con lo Stato del processo nella parte superiore accanto al numero del processo. Questo stato viene aggiornato man mano che l'esperimento procede. Nell'angolo in alto a destra dello studio vengono anche visualizzare alcune notifiche che indicano lo stato dell'esperimento.

Importante

La preparazione del processo dell'esperimento richiede 10-15 minuti. Dopo l'avvio, ogni iterazione richiede almeno 2-3 minuti.

In produzione, questo processo richiede del tempo. Durante l'attesa, è consigliabile iniziare a esplorare gli algoritmi testati nella scheda Modelli non appena vengono completati.

Esplorare i modelli

Passare alla scheda Modelli per visualizzare gli algoritmi (modelli) testati. Per impostazione predefinita, i modelli sono ordinati in base al punteggio della metrica man mano che vengono completati. Per questa esercitazione, il modello che riceve il punteggio più alto in base alla metrica Radice normalizzata dell'errore quadratico medio scelta si trova all'inizio dell'elenco.

Mentre si aspetta il completamento di tutti i modelli dell'esperimento, selezionare il nome di algoritmo di un modello completato per esplorare i dettagli delle relative prestazioni.

L'esempio seguente consente di selezionare un modello dall'elenco di modelli creati dal processo. Selezionare quindi le schede Panoramica e Metriche per visualizzare le proprietà, le metriche e i grafici delle prestazioni del modello selezionato.

Run Overview

Distribuire il modello

Machine Learning automatizzato in Azure Machine Learning Studio consente di distribuire il modello migliore come servizio Web con pochi passaggi. La distribuzione è l'integrazione del modello per consentire la stima su nuovi dati e identificare le potenziali aree di opportunità.

Per questo esperimento, la distribuzione in un servizio Web implica che l'azienda di bike sharing ha ora una soluzione Web iterativa e scalabile per prevedere la domanda di noleggio.

Al termine del processo, tornare nella pagina del processo padre selezionando Processo 1 nella parte superiore della schermata.

Nella sezione Riepilogo del modello migliore viene selezionato il modello migliore nel contesto di questo esperimento in base alla metrica Radice normalizzata dell'errore quadratico medio.

Viene distribuito questo modello, ma tenere presente che il completamento della distribuzione richiede circa 20 minuti. Il processo di distribuzione comporta diversi passaggi, tra cui la registrazione del modello, la generazione delle risorse e la relativa configurazione per il servizio Web.

  1. Selezionare il modello migliore per aprire la pagina specifica del modello.

  2. Selezionare il pulsante Distribuisci nell'area in alto a sinistra della schermata.

  3. Immettere i dati nel riquadro Deploy a model (Distribuisci un modello) in questo modo:

    Campo valore
    Nome distribuzione bikeshare-deploy
    Descrizione della distribuzione distribuzione della domanda di bike sharing
    Tipo di calcolo Selezionare un'istanza di calcolo di Azure
    Abilita autenticazione Disabilita.
    Usa asset di distribuzione personalizzati Disabilita. La disabilitazione consente di generare automaticamente il file di driver predefinito (script di assegnazione dei punteggi) e il file dell'ambiente.

    Per questo esempio, vengono usate le impostazioni predefinite disponibili nel menu Avanzate.

  4. Seleziona Distribuisci.

    Nella parte superiore della schermata Processo viene visualizzato un messaggio verde che indica che la distribuzione è stata avviata correttamente. Lo stato di avanzamento della distribuzione è disponibile nel riquadro Riepilogo modelli in Stato distribuzione.

Una colta completata la distribuzione, è disponibile un servizio Web operativo per generare previsioni.

Vedere Passaggi successivi per altre informazioni su come usare il nuovo servizio Web e testare le previsioni tramite il supporto di Azure Machine Learning incorporato in Power BI.

Pulire le risorse

I file di distribuzione sono più grandi dei file di dati e di esperimento e di conseguenza più costosi da archiviare. Eliminare solo i file di distribuzione per ridurre al minimo i costi per l'account o se si vuole conservare i file dell'area di lavoro e degli esperimenti. In caso contrario, eliminare l'intero gruppo di risorse, se non si prevede di usare alcun file.

Eliminare l'istanza di distribuzione

Eliminare solo l'istanza di distribuzione da Azure Machine Learning Studio se si intende mantenere il gruppo di risorse e l'area di lavoro per altre esercitazioni e attività di esplorazione.

  1. Passare ad Azure Machine Learning Studio. Passare all'area di lavoro e nel riquadro di sinistra Risorse selezionare Endpoint.

  2. Selezionare la distribuzione che si vuole eliminare e scegliere Elimina.

  3. Selezionare Continua.

Eliminare il gruppo di risorse

Importante

Le risorse create possono essere usate come prerequisiti per altre esercitazioni e procedure dettagliate per Azure Machine Learning.

Se le risorse create non servono più, eliminarle per evitare addebiti:

  1. Nel portale di Azure fare clic su Gruppi di risorse all'estrema sinistra.

  2. Nell'elenco selezionare il gruppo di risorse creato.

  3. Selezionare Elimina gruppo di risorse.

    Screenshot of the selections to delete a resource group in the Azure portal.

  4. Immettere il nome del gruppo di risorse. Quindi seleziona Elimina.

Passaggi successivi

In questa esercitazione è stato usato il servizio Machine Learning automatizzato in Azure Machine Learning Studio per creare un modello di previsione delle serie temporali e prevedere la domanda di noleggio per un servizio di bike sharing.

Per la procedura di creazione di uno schema supportato da Power BI che facilita l'utilizzo del servizio Web appena distribuito, vedere questo articolo:

Nota

Il set di dati bike share è stato modificato per questa esercitazione. Questo set di dati è stato reso disponibile nell'ambito di un concorso Kaggle e originariamente era reperibile tramite Capital Bikeshare. È disponibile anche all'interno del database Machine Learning UCI.

Fonte: Fanaee-T, Hadi e Gama, Joao, Event labeling combining ensemble detectors and background knowledge, Progress in Artificial Intelligence (2013): pp. 1-15, Springer Berlin Heidelberg.