Condividi tramite


Foresta delle decisioni multiclasse

Importante

Il supporto dello studio di Azure Machine Learning (versione classica) terminerà il 31 agosto 2024. È consigliabile passare ad Azure Machine Learning entro tale data.

A partire dal 1° dicembre 2021 non sarà possibile creare nuove risorse dello studio di Azure Machine Learning (versione classica). Fino al 31 agosto 2024 sarà possibile continuare a usare le risorse dello studio di Azure Machine Learning (versione classica).

La documentazione relativa allo studio di Machine Learning (versione classica) è in fase di ritiro e potrebbe non essere aggiornata in futuro.

Crea un modello di classificazione multiclasse usando l'algoritmo di foresta delle decisioni

Categoria: Machine Learning/Inizializza modello/classificazione

Nota

Si applica a: Machine Learning Studio (versione classica)

Moduli di trascinamento della selezione simili sono disponibili nella finestra Azure Machine Learning progettazione.

Panoramica del modulo

Questo articolo descrive come usare il modulo Foresta decisionale multiclasse in Machine Learning Studio (versione classica) per creare un modello di Machine Learning basato sull'algoritmo della foresta decisionale. Una foresta decisionale è un modello di insieme che crea molto rapidamente una serie di alberi delle decisioni, imparando dai dati contrassegnati.

Altre informazioni sulle foreste decisionali

L'algoritmo della foresta decisionale è un metodo di apprendimento avanzato per la classificazione. L'algoritmo funziona creando più alberi delle decisioni e quindi votando sulla classe di output più diffusa. Il voto è una forma di aggregazione, in cui ogni albero in una foresta decisionale di classificazione 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 attendibilità stimata elevata hanno un peso maggiore nella decisione finale dell'insieme.

Gli alberi delle decisioni in generale sono modelli non parametrici, ovvero supportano i dati con distribuzioni diverse. In ogni albero viene eseguita una sequenza di semplici test per ogni classe, aumentando i livelli di una struttura ad albero, finché viene raggiunto un nodo foglia (decisione).

Gli alberi delle decisioni offrono molti vantaggi:

  • Possono rappresentare limiti di decisione non lineari.
  • Sono efficienti sia nel calcolo che nell'uso della memoria durante il training e la stima.
  • Eseguono la selezione e la classificazione integrata di funzionalità
  • e sono resilienti in caso di funzionalità rumorose.

Il classificatore della foresta decisionale in Machine Learning Studio (versione classica) è costituito da un insieme di alberi delle decisioni. In genere, i modelli di insieme offrono una copertura e un'accuratezza migliori rispetto a singoli alberi delle decisioni. Per altre informazioni, vedere Alberi delle decisioni.

Come configurare la foresta decisionale multiclasse

Suggerimento

Se non si è certi dei parametri migliori, è consigliabile usare il modulo Tune Model Hyperparameters per eseguire il training e il test di più modelli e trovare i parametri ottimali.

  1. Aggiungere il modulo Multiclass Decision Forest all'esperimento in Studio (versione classica). È possibile trovare questo modulo in Machine Learning, Inizializza modello e Classificazione.

  2. Fare doppio clic sul modulo per aprire il riquadro Proprietà.

  3. Per Il metodo di ricampionamento scegliere il metodo usato per creare i singoli alberi. È possibile scegliere il bagging o la replica.

    • Bagging: Bagging è anche detto aggregazione bootstrap. In questo metodo ogni albero viene aumentato in base a un nuovo campione, creato tramite il campionamento casuale del set di dati originale con sostituzione fino a quando non si dispone di un set di dati delle dimensioni dell'originale. Gli output dei modelli vengono combinati tramite voto, che è una forma di aggregazione. Per altre informazioni, vedere la voce Wikipedia per l'aggregazione bootstrap.

    • Replica: nella replica ogni albero viene addestrato esattamente sugli stessi dati di input. La determinazione del predicato di divisione usato per ogni nodo dell'albero rimane casuale, creando alberi diversi.

    Per istruzioni , vedere la sezione Come configurare un modello di foresta decisionale multiclasse .

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

    • Singolo parametro: selezionare questa opzione se si sa come si vuole configurare il modello e specificare un set di valori come argomenti.

    • Intervallo di parametri: usare questa opzione se non si è certi dei parametri migliori e si vuole usare uno sweep di parametri.

  5. 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 potrebbe aumentare.

    Questo valore controlla anche il numero di alberi visualizzati nei risultati, quando si visualizza il modello con training. Per visualizzare o stampare un singolo albero, è possibile impostare il valore su 1. Ciò significa tuttavia che è possibile produrre un solo albero (l'albero con il set iniziale di parametri) e non vengono eseguite altre iterazioni.

  6. 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.

  7. Numero di divisioni casuali per nodo: digitare il numero di divisioni da usare durante la compilazione di ogni nodo dell'albero. Una divisione indica che le funzionalità in ogni livello dell'albero (nodo) vengono suddivise in modo casuale.

  8. 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 5 casi che soddisfano le stesse condizioni.

  9. Consenti valori sconosciuti per le funzionalità categoriche: selezionare questa opzione 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 presenti nei dati di training.

  10. Connessione un datset con etichetta e uno dei moduli di training:

    • Se si imposta Crea modalità di training su Parametro singolo, usare il modulo Train Model (Train Model ).

    • Se si imposta l'opzione Crea modalità trainer su Intervallo parametri, usare il modulo Ottimizzare gli iperparamerti del modello. Con questa opzione, il trainer può scorrere più combinazioni delle impostazioni e determinare i valori dei parametri che producono il modello migliore.

    Nota

    Se si passa un intervallo di parametri a Train Model, viene utilizzato solo il primo valore nell'elenco di intervalli di parametri.

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

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

  11. Eseguire l'esperimento.

Risultati

Al termine del training:

  • Per visualizzare l'albero creato in ogni iterazione, fare clic con il pulsante destro del mouse sul modulo Train Model (Train Model) e scegliere Trained model (Modello con training ) da visualizzare. Se si usano gli iperparametratori Tune Model (Ottimizza iperparamezzi modello), fare clic con il pulsante destro del mouse sul modulo e scegliere Trained Best Model (Modello con training ottimale) per visualizzare il modello migliore. Per visualizzare le regole per ogni nodo, fare clic su ogni albero per eseguire il drill-down nelle divisioni.

Esempio

Per esempi di come vengono usate le foreste decisionali in Machine Learning, vedere l'Azure AI Gallery:

Note tecniche

Questa sezione contiene informazioni dettagliate sull'implementazione, suggerimenti e risposte alle domande frequenti.

Dettagli dell'implementazione

Ogni albero in una foresta decisionale di classificazione restituisce un istogramma di frequenza non normalizzato di etichette. L'aggregazione è sommare questi istogrammi e normalizzare per ottenere le "probabilità" per ogni etichetta. In questo modo, gli alberi con attendibilità stimata elevata hanno un peso maggiore nella decisione finale dell'insieme.

Per altre informazioni sul processo di training con l'opzione Replica , vedere:

Come configurare un modello di foreste delle decisioni multiclasse

È possibile modificare il modo in cui il modulo è configurato per supportare scenari come dati troppo piccoli o tempo limitato per il training.

Tempo di training limitato

Se il training set include un numero elevato di istanze, ma il tempo disponibile per il training del modello è limitato, provare a usare queste opzioni:

  • Creare una foresta delle decisioni che usa un numero minore di alberi delle decisioni, ad esempio da 5 a 10.
  • Usare l'opzione Replicate per ripetere il campionamento.
  • Specificare un numero basso di divisioni casuali per ogni nodo, ad esempio meno di 100.

Set di training limitato

Se il training set contiene un numero limitato di istanze, provare a usare queste opzioni:

  • Creare una foresta delle decisioni che usa un numero elevato di alberi delle decisioni, ad esempio più di 20.
  • Usare l'opzione Bagging per ripetere il campionamento.
  • Specificare un numero elevato di divisioni casuali per ogni nodo, ad esempio più di 1.000.

Parametri del modulo

Nome Intervallo Type Predefinito Descrizione
Resampling method Qualsiasi ResamplingMethod Bagging Scegliere un metodo di ricampionamento: Bagging o Replicate
Number of decision trees >=1 Integer 8 Specificare il numero di alberi delle decisioni da creare nell'insieme
Maximum depth of the decision trees >=1 Integer 32 Specifica la profondità massima degli alberi delle decisioni che possono essere creati
Number of random splits per node >=1 Integer 128 Specifica il numero di divisioni generate per ogni nodo, da cui viene selezionata la divisione ottimale
Minimum number of samples per leaf node >=1 Integer 1 Specifica il numero minimo di esempi di training necessari per generare un nodo foglia.
Allow unknown values for categorical features Qualsiasi Boolean True Indica se i valori sconosciuti delle funzioni categoriche esistenti possono essere mappati a una nuova funzione aggiuntiva

Output

Nome Tipo Descrizione
Untrained model ILearner interface Modello di classificazione multiclasse senza training

Vedi anche

Classificazione
Foresta delle decisioni a due classi
Decision Forest Regression (Regressione foresta delle decisioni)
Elenco moduli A-Z