Analizzare i dati con Azure Machine Learning

Questa esercitazione usa Azure Machine Learning per creare un modello predittivo di apprendimento automatico basato sui dati archiviati in Azure SQL Data Warehouse. Nello specifico, verrà compilata una campagna di marketing mirata di Adventure Works, il negozio di biciclette, per stimare la probabilità che un cliente acquisti una bicicletta o meno.

Prerequisiti

Per eseguire questa esercitazione, è necessario:

1. Ottenere i dati

I dati sono disponibili nella visualizzazione dbo.vTargetMail nel database AdventureWorksDW. Per leggere i dati:

  1. Accedere ad Azure Machine Learning Studio e fare clic sugli esperimenti personali.
  2. Fare clic su +NEW e selezionare Esperimento vuoto.
  3. Immettere un nome per l'esperimento: Marketing mirato.
  4. Trascinare il modulo Reader dal riquadro dei moduli nell'area di disegno.
  5. Nel riquadro Properties specificare i dettagli del database SQL Data Warehouse.
  6. Specificare la query di database per leggere i dati di interesse.
SELECT [CustomerKey]
  ,[GeographyKey]
  ,[CustomerAlternateKey]
  ,[MaritalStatus]
  ,[Gender]
  ,cast ([YearlyIncome] as int) as SalaryYear
  ,[TotalChildren]
  ,[NumberChildrenAtHome]
  ,[EnglishEducation]
  ,[EnglishOccupation]
  ,[HouseOwnerFlag]
  ,[NumberCarsOwned]
  ,[CommuteDistance]
  ,[Region]
  ,[Age]
  ,[BikeBuyer]
FROM [dbo].[vTargetMail]

Eseguire l'esperimento facendo clic su Esegui sotto l'area di disegno dell'esperimento. Eseguire l'esperimento

Dopo aver concluso con successo l’esperimento, per visualizzare i dati importati fare clic sulla porta di output nella parte inferiore del modulo Reader e selezionare Visualizza. Visualizzare i dati importati

2. Pulire i dati

Per pulire i dati, eliminare alcune colonne non rilevanti per il modello. A tale scopo, seguire questa procedura:

  1. Trascinare il modulo Project Columns nell'area di disegno.
  2. Fare clic su Launch column selector nel riquadro Proprietà per specificare le colonne da eliminare. Project Columns
  3. Escludere due colonne: CustomerAlternateKey e GeographyKey. Rimuovere le colonne non necessarie

3. Compilare il modello

Si suddivideranno i dati 80-20: 80% per il training di un modello di Machine Learning e 20% per testare il modello. Per questo problema di classificazione binaria si useranno gli algoritmi "Two-Class".

  1. Trascinare il modulo Split nell'area di disegno.
  2. Immettere 0,8 per Fraction of rows nel primo set di dati di output nel riquadro Properties. Dividere i dati in set di traning e di test
  3. Trascinare il modulo Two-Class Boosted Decision Tree nell'area di disegno.
  4. Trascinare il modulo Train Model nell'area di disegno e specificare gli input. Fare clic su Launch column selector nel riquadro Properties.
    • Primo input: algoritmo ML.
    • Secondo input: dati su cui eseguire il training dell'algoritmo. Connettere il modulo Train Model
  5. Selezionare la colonna BikeBuyer come colonna da stimare. Selezionare una colonna da stimare

4. Assegnare un punteggio al modello

A questo punto si verificheranno le prestazioni del modello sui dati di test. L'algoritmo scelto verrà confrontato con un algoritmo diverso per verificare quale offre prestazioni migliori.

  1. Trascinare il modulo Score Model nell'area di disegno. Primo input: Trained Model Secondo input: Test data Assegnare un punteggio al modello
  2. Trascinare il Two-Class Bayes Point Machine nell'area di disegno dell'esperimento. Si confronteranno le prestazioni di questo algoritmo rispetto a Two-Class Boosted Decision Tree.
  3. Copiare e incollare i moduli Train Model e Score Model nell'area di disegno.
  4. Trascinare il modulo Evaluate Model nell'area di disegno per confrontare i due algoritmi.
  5. Eseguire l'esperimento. Eseguire l'esperimento
  6. Fare clic con il pulsante destro del mouse sulla porta di output del modulo Evaluate Model e scegliere Visualize. Visualizzare i risultati della valutazione

La metrica fornita include curva ROC, curva di precisione/recupero e curva di accuratezza. Esaminando la metrica, si noterà che il primo modello fornisce prestazioni migliori rispetto al secondo. Per vedere i quali sono state le previsioni del primo modello, fare clic sulla porta di output di Score Model e scegliere Visualize. Visualizzare i risultati di punteggio

Verranno visualizzate altre due colonne aggiunte al set di dati di test.

  • Scored Probabilities: la probabilità che un cliente sia un acquirente di biciclette.
  • Scored Labels: la classificazione eseguita dal modello – acquirente di biciclette (1) o non acquirente (0). La soglia di probabilità per le etichette è impostata su 50% e può essere modificata.

Confrontando la colonna BikeBuyer (effettivo) con Scored Labels (stima), è possibile vedere il livello di prestazioni del modello. Come passaggi successivi è possibile usare questo modello per eseguire stime per i nuovi clienti e pubblicare il modello come un servizio Web o scrivere i risultati in SQL Data Warehouse.

Passaggi successivi

Per altre informazioni sulla creazione di modelli di apprendimento automatico predittivi, fare riferimento a Introduzione a Machine Learning in Azure.