componente foresta delle decisioni Two-Class

Questo articolo descrive un componente nella finestra di progettazione di Azure Machine Learning.

Usare questo componente per creare un modello di Machine Learning basato sull'algoritmo delle foreste delle decisioni.

Le foreste decisionali sono modelli di ensemble veloci e supervisionati. Questo componente è una scelta ottimale se si vuole stimare una destinazione con un massimo di due risultati.

Informazioni sulle foreste delle decisioni

Questo algoritmo di foresta delle decisioni è un metodo di apprendimento completo destinato alle attività di classificazione. I metodi ensemble si basano sul principio generale che anziché basarsi su un singolo modello, è possibile ottenere risultati migliori e un modello più generalizzato creando più modelli correlati e combinandoli in qualche modo. In genere, i modelli di insieme offrono una copertura e un'accuratezza migliori rispetto a singoli alberi delle decisioni.

Esistono molti modi per creare singoli modelli e combinarli in un insieme. Questa particolare implementazione di una foresta decisionale funziona creando più alberi delle decisioni e quindi votando sulla classe di output più diffusa. Il voto è uno dei metodi più noti per la generazione di risultati in un modello di insieme.

  • Vengono creati molti alberi di classificazione singoli, usando l'intero set di dati, ma punti di partenza diversi (in genere casuali). Ciò è diverso dall'approccio alla foresta casuale, in cui i singoli alberi delle decisioni possono usare solo una parte casuale dei dati o delle funzionalità.
  • Ogni albero nell'albero della foresta delle decisioni restituisce un istogramma di frequenza non normalizzato di etichette.
  • Il processo di aggregazione somma questi istogrammi e normalizza il risultato per ottenere le "probabilità" per ogni etichetta.
  • Gli alberi con una stima elevata avranno un peso maggiore nella decisione finale dell'ensemble.

Gli alberi delle decisioni in generale presentano molti vantaggi per le attività di classificazione:

  • Possono acquisire limiti decisionali non lineari.
  • È possibile eseguire il training e stimare un numero elevato di dati, perché sono efficienti nell'utilizzo di calcolo e memoria.
  • La selezione delle funzionalità è integrata nei processi di training e classificazione.
  • Gli alberi possono contenere dati rumorosi e molte funzionalità.
  • Sono modelli non parametrici, ovvero possono gestire i dati con distribuzioni diverse.

Tuttavia, gli alberi delle decisioni semplici possono sovrafittingere ai dati e sono meno generalizzabili rispetto agli insiemi di alberi.

Per altre informazioni, vedere Foreste delle decisioni.

Modalità di configurazione

  1. Aggiungere il componente Two-Class Decision Forest alla pipeline in Azure Machine Learning e aprire il riquadro Proprietà del componente.

    È possibile trovare il componente in Machine Learning. Espandere Inizializza e quindi Classificazione.

  2. Per Il metodo Resampling scegliere il metodo usato per creare i singoli alberi. È possibile scegliere tra Bagging o Replica.

    • Bagging: il bagging è detto anche aggregazione bootstrap. In questo metodo ogni albero viene cresciuto in un nuovo esempio, creato eseguendo il campionamento casuale del set di dati originale con sostituzione fino a quando non si dispone di un set di dati con le dimensioni dell'originale.

      Gli output dei modelli vengono combinati tramite voto, che è una forma di aggregazione. Ogni albero in una foresta delle decisioni di classificazione restituisce un istogramma di frequenza non mappato delle etichette. L'aggregazione consiste nel sommare questi istogrammi e normalizzare per ottenere le "probabilità" per ogni etichetta. In questo modo, gli alberi con una stima elevata avranno un peso maggiore nella decisione finale dell'ensemble.

      Per altre informazioni, vedere la voce wikipedia per l'aggregazione bootstrap.

    • Replica: nella replica, ogni albero viene sottoposto a training esattamente sugli stessi dati di input. La determinazione del predicato diviso usato per ogni nodo dell'albero rimane casuale e gli alberi saranno diversi.

  3. Specificare la modalità di training del modello impostando l'opzione Crea modalità di training .

    • Singolo parametro: se si sa come si vuole configurare il modello, è possibile specificare un set specifico di valori come argomenti.

    • Intervallo di parametri: se non si è certi dei parametri migliori, è possibile trovare i parametri ottimali usando il componente Ottimizza iperparametri del modello . Si specifica un intervallo di valori e il formatore esegue l'iterazione su più combinazioni delle impostazioni per determinare la combinazione di valori che producono il risultato migliore.

  4. Per Numero di alberi delle decisioni digitare il numero massimo di alberi delle decisioni che è possibile creare nell'insieme. Creando più alberi delle decisioni, è possibile ottenere una copertura migliore, ma il tempo di training aumenta.

    Nota

    Se si imposta il valore su 1. Tuttavia, è possibile produrre un solo albero (l'albero con il set iniziale di parametri) e non vengono eseguite altre iterazioni.

  5. Per Profondità massima degli alberi delle decisioni digitare un numero per limitare la profondità massima di qualsiasi albero delle decisioni. L'aumento della profondità dell'albero potrebbe aumentare la precisione, con il rischio però di overfitting e di aumento dei tempi di training.

  6. Per Numero minimo di campioni per nodo foglia, indicare il numero minimo di case necessari per creare qualsiasi nodo terminale (foglia) in un albero.

    Aumentando questo valore, aumenta la soglia per la creazione di nuove regole. Ad esempio, con un valore predefinito di 1, anche un singolo caso può determinare la creazione di una nuova regola. Se si aumenta il valore a 5, i dati di training devono contenere almeno cinque casi che soddisfano le stesse condizioni.

  7. Selezionare l'opzione Consenti valori sconosciuti per le funzionalità categorica per creare un gruppo per i valori sconosciuti nei set di training o di convalida. Il modello potrebbe essere meno preciso per i valori noti, ma può fornire stime migliori per i nuovi valori (sconosciuti).

    Se si deseleziona questa opzione, il modello può accettare solo i valori contenuti nei dati di training.

  8. Collegare un set di dati etichettato ed eseguire il training del modello:

    • Se si imposta Crea modalità di training su Parametro singolo, connettere un set di dati con tag e il componente Train Model .

    • Se si imposta Crea modalità di training su Intervallo di parametri, connettere un set di dati con tag ed eseguire il training del modello usando Tune Model Hyperparameters.

    Nota

    Se si passa un intervallo di parametri a Train Model, viene usato solo il valore predefinito nell'elenco dei singoli parametri.

    Se si passa un singolo set di valori di parametro al componente Tune Model Hyperparameters , quando prevede un intervallo di impostazioni per ogni parametro, ignora i valori e usa i valori predefiniti per lo strumento di apprendimento.

    Se si seleziona l'opzione Intervallo di parametri e si immette un singolo valore per qualsiasi parametro, tale singolo valore specificato viene usato durante lo sweep, anche se altri parametri cambiano in un intervallo di valori.

Risultati

Al termine del training:

  • Per salvare uno snapshot del modello sottoposto a training, selezionare la scheda Output nel pannello destro del componente Train model (Esegui training modello). Selezionare l'icona Registra set di dati per salvare il modello come componente riutilizzabile.

  • Per usare il modello per l'assegnazione dei punteggi, aggiungere il componente Score Model a una pipeline.

Passaggi successivi

Vedere il set di componenti disponibili per Azure Machine Learning.