Condividi tramite


Creazione di una struttura e di un modello di rete neurale (Esercitazione intermedia sul data mining)

 

Si applica a: SQL Server 2016 Preview

Per creare un modello di data mining, è innanzitutto necessario utilizzare la Creazione guidata modello di data mining per creare una nuova struttura di data mining basata sulla nuova vista origine dati. In questa attività verrà utilizzata la procedura guidata per creare una struttura di data mining e, contemporaneamente, il modello di data mining associato basato sull'algoritmo Microsoft Neural Network.

Poiché le reti neurali sono estremamente flessibili e possono analizzare molte combinazioni di input e output, è necessario sperimentare diverse modalità di elaborazione dei dati per ottenere risultati ottimali. È ad esempio personalizzare il modo in cui l'obiettivo numerico per la qualità del servizio è binned, o raggruppati per soddisfare requisiti aziendali specifici. A tale scopo, è necessario aggiungere una nuova colonna alla struttura di data mining per raggruppare i dati numerici in modi diversi, quindi creare un modello che utilizzi la nuova colonna. Questi modelli di data mining verranno utilizzati per alcune attività di esplorazione.

Dopo avere identificato, grazie al modello di rete neurale, i fattori di maggiore impatto per le questioni aziendali, sarà infine necessario compilare un modello distinto per la stima e l'assegnazione dei punteggi. Verrà utilizzato l'algoritmo Microsoft Logistic Regression, basato sul modello di rete neurale, ma ottimizzato per la ricerca di una soluzione basata su input specifici.

Passaggi

Creare la struttura di data mining e il modello predefiniti

Utilizzare la discretizzazione per categorizzare la colonna stimabile

Copiare la colonna e modificare il metodo di discretizzazione per un altro modello

Creare un alias per la colonna stimabile in modo da poter confrontare i modelli

Elaborare tutti i modelli

Creare la struttura predefinita del call center

  1. In Esplora soluzioni in SQL Server Data Tools (SSDT), fare doppio clic su strutture di Data Mining e selezionare nuova struttura di Data Mining.

  2. Nella pagina iniziale Creazione guidata modello di data mining fare clic su Avanti.

  3. Nel Selezione metodo di definizione verificare che da esistenti database relazionale o data warehouse sia selezionata e quindi fare clic su Avanti.

  4. Nel Crea struttura di Data Mining verificare che l'opzione Crea struttura di data mining con un modello di data mining è selezionata.

  5. Fare clic sull'elenco a discesa per l'opzione tecnica di data mining da utilizzare?, quindi selezionare Microsoft Neural Network.

    Poiché i modelli di regressione logistica sono basati sulle reti neurali, è possibile riutilizzare la stessa struttura e aggiungere un nuovo modello di data mining.

  6. Scegliere Avanti.

    Il Selezione Vista origine dati verrà visualizzata la pagina.

  7. In viste origine dati disponibili, selezionare Call Center, fare clic su Avanti.

  8. Nel specificare tipi di tabella pagina, selezionare il Case casella di controllo accanto al FactCallCenter tabella. Non selezionare alcuna opzione per DimDate. Scegliere Avanti.

  9. Nel specificare i dati di Training selezionare chiave accanto alla colonna FactCallCenterID.

  10. Selezionare il Predict e Input caselle di controllo.

  11. Selezionare il chiave, Input, e Predict caselle di controllo, come illustrato nella tabella riportata di seguito:

    Tabelle/Colonne Chiave/Input/Stima
    AutomaticResponses Input
    AverageTimePerIssue Input/Stima
    Calls Input
    DateKey Non utilizzare
    DayOfWeek Input
    FactCallCenterID Key
    IssuesRaised Input
    LevelOneOperators Input/Stima
    LevelTwoOperators Input
    Orders Input/Stima
    ServiceGrade Input/Stima
    Turno Input
    TotalOperators Non utilizzare
    WageType Input

    Notare che sono state selezionate più colonne stimabili. Uno degli aspetti positivi dell'algoritmo Neural Network è la capacità di analizzare tutte le possibili combinazioni di attributi di input e output. Non è consigliabile effettuare questa operazione per un set di dati di grandi dimensioni, poiché potrebbe aumentare il tempo di elaborazione in modo esponenziale.

  12. Nel di contenuto e tipo di dati specificare colonne pagina, verificare che la griglia contenga le colonne, tipi di contenuto e i tipi di dati come illustrato nella tabella seguente e quindi fare clic su Avanti.

    Colonne Tipo di contenuto Tipi di dati
    AutomaticResponses Continuo Long
    AverageTimePerIssue Continuo Long
    Calls Continuo Long
    DayOfWeek Discreto Text
    FactCallCenterID Key Long
    IssuesRaised Continuo Long
    LevelOneOperators Continuo Long
    LevelTwoOperators Continuo Long
    Orders Continuo Long
    ServiceGrade Continuo Double
    Turno Discreto Text
    WageType Discreto Text
  13. Nel creare test impostare pagina, deselezionare la casella di testo per l'opzione percentuale di dati per il testing. Scegliere Avanti.

  14. Nel Completamento procedura guidata pagina per il Nome struttura di Data Mining, tipo Call Center.

  15. Per il nome del modello di Data Mining, tipo Call Center Default NN, quindi fare clic su Fine.

    Il Consenti drill-through casella è disabilitata perché è Impossibile drill-through nei dati con modelli di rete neurale.

  16. In Esplora soluzioni, il nome della struttura di data mining appena creato e scegliere processo.

Utilizzare la discretizzazione per categorizzare la colonna di destinazione

Per impostazione predefinita, quando si crea un modello di rete neurale che include un attributo stimabile numerico, tramite l'algoritmo Microsoft Neural Network l'attributo viene considerato come un numero continuo. L'attributo ServiceGrade, ad esempio, è un numero che teoricamente varia da 0,00 (risposta a tutte le chiamate) a 1,00 (tutti i chiamanti riattaccano). In questo set di dati i valori hanno la distribuzione seguente:

Distribuzione dei valori del livello di servizio

Di conseguenza, quando si elabora il modello, gli output possono essere raggruppati in modo diverso dal previsto. Ad esempio, se si utilizza il clustering per identificare gruppi di valori, l'algoritmo divide i valori di ServiceGrade in intervalli come questo: 0,0748051948 - 0,09716216215. Benché questo raggruppamento sia matematicamente preciso, gli intervalli potrebbero non essere altrettanto significativi per gli utenti aziendali.

In questo passaggio, per rendere il risultato più intuitivo si raggrupperanno i valori numerici in modo diverso, creando di copie della colonna di dati numerici.

Funzionamento della discretizzazione

Analysis Services offre un'ampia gamma di metodi per suddividere in contenitori o elaborare dati numerici. Nella tabella seguente vengono illustrate le differenze tra i risultati quando l'attributo di output ServiceGrade viene elaborato in tre modi diversi, ovvero:

  • Considerandolo un numero continuo.

  • Lasciando che l'algoritmo utilizzi il clustering per identificare la migliore disposizione di valori.

  • Specificando che i numeri siano inseriti in contenitori in base al metodo delle aree uguali,

Modello predefinito (continuo) Suddiviso tramite clustering Suddiviso in base al metodo delle aree uguali
VALORE: mancante supporto: 0

VALORE: 0,09875 SUPPORTO: 120
VALORE: < 0,0748051948 SUPPORTO: 34

VALORE: 0,0748051948 - 0,09716216215 SUPPORTO: 27

VALORE: 0,09716216215 - 0.13297297295 SUPPORTO: 39

VALORE: 0.13297297295 - 0.167499999975 SUPPORTO: 10

VALORE: > = 0.167499999975 SUPPORTO: 10
VALORE: < 0,07 SUPPORTO: 26

VALORE: - 0,07 0.00 SUPPORTO: 22

VALORE: 0.09 - 0.11 SUPPORTO: 36

VALORE: > = 0,12 SUPPORTO: 36

Nota


È possibile ottenere tali statistiche dal nodo delle statistiche marginali del modello al termine dell'elaborazione di tutti i dati. Per ulteriori informazioni sul nodo delle statistiche marginali, vedere Mining Model Content per modelli di rete neurale ( Analysis Services - Data Mining e 41 #;.

Nella colonna VALUE di questa tabella è indicato come è stato gestito il numero per ServiceGrade. Nella colonna SUPPORT è indicato quanti case avevano tale valore o rientravano in tale intervallo.

  • Utilizzare numeri continui (valore predefinito)

    Se è stato utilizzato il metodo predefinito, l'algoritmo calcolerà i risultati per 120 valori distinti, il cui valore medio è 0,09875. È inoltre possibile visualizzare il numero di valori mancanti.

  • Suddividere tramite clustering

    Quando si consente all'algoritmo Microsoft Clustering di determinare il raggruppamento facoltativo dei valori, i valori per ServiceGrade verranno raggruppati in cinque (5) intervalli. Il numero di case in ogni intervallo non viene distribuito uniformemente, come si vedere nella colonna Support.

  • Suddividere in base al metodo delle aree uguali

    Quando si sceglie questo metodo, l'algoritmo forza i valori in bucket di uguale dimensione che a loro volta modificano i limiti superiori e inferiori di ogni intervallo. È possibile specificare il numero di bucket, ma è consigliabile evitare di avere bucket contenenti solo pochi valori.

Per ulteriori informazioni sulla creazione di contenitori per le opzioni, vedere metodi di discretizzazione ( Data Mining ).

In alternativa, anziché utilizzare i valori numerici, è possibile aggiungere una colonna derivata distinta che classifica i livelli di servizio in intervalli di destinazione predefiniti, ad esempio migliore (ServiceGrade < = 0,05), accettabile (0,10 > ServiceGrade > 0,05), e scarsa (ServiceGrade > = 0,10).

Creare una copia di una colonna e modificare il metodo di discretizzazione

Verranno creare una copia della colonna di data mining che contiene l'attributo di destinazione ServiceGrade e modificare la modalità di che raggruppamento dei numeri. Verranno quindi create più copie di qualsiasi colonna in una struttura di data mining, incluso l'attributo stimabile.

Ai fini di questa esercitazione, verrà utilizzato il metodo di discretizzazione delle aree uguali e verranno specificati quattro bucket. I raggruppamenti risultanti da questo metodo sono piuttosto vicini ai valori di destinazione di interesse per gli utenti aziendali.

Per creare una copia personalizzata di una colonna nella struttura di data mining

  1. In Esplora soluzioni fare doppio clic sulla struttura di data mining creata.

  2. Nella scheda struttura di Data Mining, fare clic su aggiungere una colonna della struttura di data mining.

  3. Nel Seleziona colonna nella finestra di dialogo selezionare ServiceGrade dall'elenco nella colonna di origine, quindi fare clic su OK.

    Una nuova colonna verrà aggiunta all'elenco di colonne della struttura di data mining. Per impostazione predefinita, la nuova colonna di data mining avrà lo stesso nome della colonna esistente, seguito da un suffisso numerico, ad esempio ServiceGrade 1. È possibile modificare il nome della colonna in modo da renderlo più descrittivo.

    È inoltre necessario specificare il metodo di discretizzazione.

  4. Fare doppio clic su ServiceGrade 1 e selezionare proprietà.

  5. Nel proprietà finestra, individuare il nome proprietà e modificare il nome in Service Grade Binned .

  6. Verrà visualizzata una finestra di dialogo in cui viene richiesto se si desidera apportare la stessa modifica al nome di tutte le colonne del modello di data mining correlate. Fare clic su No.

  7. Nel proprietà finestra, individuare la sezione tipo di dati ed espanderla, se necessario.

  8. Modificare il valore della proprietà contenuto da Continuous a Discretized.

    Sono ora disponibili le proprietà elencate di seguito. Modificare i valori delle proprietà come indicato nella tabella seguente:

    Proprietà Valore predefinito Nuovo valore
    DiscretizationMethod Continuo EqualAreas
    DiscretizationBucketCount Nessun valore 4

    Nota


    Il valore predefinito di DiscretizationBucketCount è 0, il che significa che l'algoritmo determina automaticamente il numero ottimale di bucket. Se, pertanto, si desidera reimpostare questa proprietà sul valore predefinito, digitare 0.

  9. Progettazione modelli di Data Mining, fare clic su di modelli di Data Mining scheda.

    Si noti che quando si aggiunge una copia di una colonna della struttura di data mining, il flag di utilizzo per la copia viene automaticamente impostato Ignora. Quando si aggiunge una copia di una colonna a una struttura di data mining, la copia non viene in genere utilizzata per l'analisi insieme alla colonna originale perché, in caso contrario, l'algoritmo individuerebbe una stretta correlazione tra le due colonne, nascondendo altre relazioni.

Aggiungere un nuovo modello di data mining alla struttura di data mining

Dopo avere creato un nuovo raggruppamento per l'attributo di destinazione, è necessario aggiungere un nuovo modello di data mining che utilizzi la colonna discretizzata. Al termine, la struttura di data mining CallCenter includerà due modelli di data mining:

  • Il modello di data mining Call Center Default NN gestisce i valori di ServiceGrade come intervallo continuo.

  • Si creerà un nuovo modello di data mining, Call Center Binned NN, che utilizza come risultati di destinazione i valori della colonna ServiceGrade, distribuiti in quattro bucket di uguale dimensione.

Per aggiungere un modello di data mining basato sulla nuova colonna discretizzata

  1. In Esplora soluzioni, la struttura di data mining appena creato e scegliere aprire.

  2. Fare clic sulla scheda Modelli di data mining .

  3. Fare clic su creare un modello di data mining correlato.

  4. Nel nuovo modello di Data Mining nella finestra di dialogo per nome modello, tipo Call Center Binned NN. Nel nome dell'algoritmo dall'elenco a discesa selezionare Microsoft Neural Network.

  5. Nell'elenco di colonne contenute nel nuovo modello di data mining individuare ServiceGrade, quindi modificare l'utilizzo da Predict a Ignora.

  6. Analogamente, individuare ServiceGrade Binned e modificare l'utilizzo da Ignora a Predict.

Creare un alias per la colonna di destinazione

Non è in genere possibile confrontare modelli di data mining che utilizzano attributi stimabili diversi. È tuttavia possibile creare un alias per una colonna del modello di data mining. Vale a dire, è possibile rinominare la colonna ServiceGrade Binned, all'interno del modello di data mining in modo che ha lo stesso nome della colonna originale. È quindi possibile confrontare direttamente i due modelli in un grafico di accuratezza, anche se i dati vengono discretizzati in modo diverso.

Per aggiungere un alias per una colonna della struttura di data mining in un modello di data mining

  1. Nel modelli di Data Mining scheda struttura, selezionare ServiceGrade Binned.

    Si noti che la proprietà finestra vengono visualizzate le proprietà dell'oggetto, la colonna ScalarMiningStructure.

  2. Nella colonna ServiceGrade Binned NN per il modello di data mining fare clic sulla cella corrispondente alla colonna ServiceGrade Binned.

    Si noti che ora il proprietà finestra vengono visualizzate le proprietà dell'oggetto MiningModelColumn.

  3. Individuare il nome proprietà e modificare il valore di ServiceGrade.

  4. Individuare il Descrizione proprietà e il tipo alias di colonna temporanea.

    Il proprietà finestra deve contenere le informazioni seguenti:

    Proprietà Valore
    Description Alias di colonna temporanea
    ID ServiceGrade Binned
    Flag di modellazione
    Nome Service Grade
    SourceColumn ID Service Grade 1
    Utilizzo Stima
  5. Fare clic ovunque nella modello di Data Mining scheda.

    La griglia verrà aggiornata per mostrare il nuovo alias di colonna temporanea, ServiceGrade, accanto all'utilizzo della colonna. La griglia contenente la struttura di data mining e i due modelli di data mining avranno un aspetto simile al seguente:

    Struttura Call Center Default NN Call Center Binned NN
    Microsoft Neural Network Microsoft Neural Network
    AutomaticResponses Input Input
    AverageTimePerIssue Stima Stima
    Calls Input Input
    DayOfWeek Input Input
    FactCallCenterID Key Key
    IssuesRaised Input Input
    LevelOneOperators Input Input
    LevelTwoOperators Input Input
    Orders Input Input
    ServiceGrade Binned Ignore Predict (ServiceGrade)
    ServiceGrade Stima Ignore
    Turno Input Input
    TotalOperators Input Input
    WageType Input Input

Elaborare tutti i modelli

Per garantire che i modelli creati siano facilmente confrontabili, infine, è necessario impostare il parametro del valore di inizializzazione per entrambi i modelli. L'impostazione di un valore di inizializzazione fa sì che ciascun modello inizi a elaborare i dati dallo stesso punto.

Nota


Se non si specifica un valore numerico per il parametro del valore di inizializzazione, in SQL Server Analysis Services verrà generato un valore di inizializzazione basato sul nome del modello. Poiché i modelli hanno nomi diversi, è necessario impostare un valore di inizializzazione per garantire che elaborino i dati nello stesso ordine.

Per specificare il valore di inizializzazione ed elaborare i modelli

  1. Nel modello di Data Mining scheda, fare doppio clic su colonna per il modello denominato Call Center - LR e selezionare Imposta parametri algoritmo.

  2. Nella riga per il parametro HOLDOUT_SEED fare clic sulla cella vuota sotto valore, e il tipo 1. Scegliere OK. Ripetere questo passaggio per ciascun modello associato alla struttura.

    Nota


    Il valore scelto come valore di inizializzazione non è importante, a condizione che si utilizzi lo stesso valore di inizializzazione per tutti i modelli correlati.

  3. Nel modelli di Data Mining dal menu Elabora struttura di Data Mining e tutti i modelli. Fare clic su per distribuire il progetto di data mining dati aggiornati nel server.

  4. Nel modello di Data Mining processo la finestra di dialogo, fare clic su eseguire.

  5. Fare clic su chiudere per chiudere la Stato elaborazione la finestra di dialogo e quindi fare clic su chiudere nuovamente il modello di Data Mining processo la finestra di dialogo.

Dopo avere creato i due modelli di data mining correlati, è necessario esplorare i dati per individuarvi le relazioni.

Attività successiva della lezione

Esplorazione del modello Call Center ( esercitazione intermedia di Data Mining )

Vedere anche

Strutture di data mining (Analysis Services - Data mining)