Condividi tramite


Regressione albero delle decisioni incrementato

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 regressione usando l'algoritmo dell'albero delle decisioni con boosting

Categoria: Machine Learning/Inizializza modello/Regressione

Nota

Si applica a: Machine Learning Studio (versione classica)

Nella finestra di progettazione sono disponibili moduli simili Azure Machine Learning trascinamento della selezione.

Panoramica del modulo

Questo articolo descrive come usare il modulo Boosted Decision Tree Regression (Regressione albero delle decisioni con boosting) in Machine Learning Studio (versione classica) per creare un insieme di alberi di regressione tramite boosting. La boosting indica che ogni albero dipende dagli alberi precedenti. L'algoritmo apprende adattando il residuo degli alberi che lo precedevano. Il boosting in un insieme di alberi delle decisioni tende quindi a migliorare la precisione, anche se con un rischio minimo di minore copertura.

Questo metodo di regressione è un metodo di apprendimento supervisionato e pertanto richiede un set di dati con etichetta. La colonna etichetta deve contenere valori numerici.

Nota

Usare questo modulo solo con set di dati che usano variabili numeriche.

Dopo aver definito il modello, eseguono il training usando i moduli Train Model (Training modello ) o Tune Model Hyperparameters (Ottimizza iperparametre modello ).

Suggerimento

Per altre informazioni sugli alberi creati, Dopo il training del modello, fare clic con il pulsante destro del mouse sull'output del modulo Train Model (Training modello) o tune Model Hyperparameters (Ottimizza iperparametramenti modello) e selezionare Visualize ( Visualizza) per visualizzare l'albero creato a ogni iterazione. È possibile eseguire il drill-down nelle divisioni per ogni albero e visualizzare le regole per ogni nodo.

Altre informazioni sugli alberi di regressione con boost

Il boosting è uno dei metodi classici per la creazione di modelli d'insieme, insieme al bagging, alle foreste casuali e così via. In Machine Learning Studio (versione classica), gli alberi delle decisioni con boosting usano un'implementazione efficiente dell'algoritmo mart gradient boosting. L'incremento dei gradienti è una tecnica di apprendimento automatico per i problemi di regressione. Permette di creare ogni albero di regressione eseguendo alcuni passaggi e usando una funzione di perdita predefinita per misurare l'errore in ogni passaggio, in modo da applicare una correzione nel passaggio successivo. Il modello di previsione è quindi effettivamente un insieme di modelli di previsione più deboli.

Nei problemi di regressione, l'aumento delle prestazioni crea una serie di alberi in modo passo per passo e quindi seleziona l'albero ottimale usando una funzione di perdita differenziale arbitraria.

Per altre informazioni, vedere i seguenti articoli:

Il metodo di boosting dei gradienti può essere usato anche per problemi di classificazione, tramite la riduzione a regressione con una funzione di perdita idonea. Per altre informazioni sull'implementazione di alberi con boosted per le attività di classificazione, vedere Two-Class Boosted Decision Tree(Albero delle decisioni con boosted a due classi).

Come configurare la regressione dell'albero delle decisioni con boosted

  1. Aggiungere il modulo Boosted Decision Tree all'esperimento. È possibile trovare questo modulo in Machine Learning, Inizializza, nella categoria Regressione.

  2. Specificare la modalità di training del modello impostando l'opzione Create trainer mode (Crea modalità di training ).

    • Parametro singolo: selezionare questa opzione se si conosce la modalità di configurazione del modello e si specifica un set specifico di valori come argomenti.

    • Intervallo di parametri: selezionare questa opzione se non si è certi dei parametri migliori e si vuole eseguire uno sweep di parametri. Selezionare un intervallo di valori su cui eseguire l'iterazione e l'opzione Tune Model Hyperparameters (Ottimizza iperparamemi modello) esegue l'iterazione su tutte le possibili combinazioni delle impostazioni fornite per determinare gli iperparamemi che producono risultati ottimali.

  3. Numero massimo di foglia per albero: indicare il numero massimo di nodi terminali (foglia) che possono essere creati in qualsiasi albero.

    Aumentando questo valore, potenzialmente si aumentano le dimensioni dell'albero e si ottiene una maggiore precisione. Possono tuttavia verificarsi casi di overfitting e tempi di training più lunghi.

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

  5. Learning velocità: digitare un numero compreso tra 0 e 1 che definisce le dimensioni del passaggio durante l'apprendimento. La velocità di apprendimento determina la velocità o la lentezza con cui l'apprendimento converge sulla soluzione ottimale. Se le dimensioni del passaggio sono troppo grandi, è possibile che venga sovrascritta la soluzione ottimale. Se le dimensioni del passaggio sono troppo piccole, il training richiede più tempo per convergere sulla soluzione migliore.

  6. Numero di alberi costruiti: indicare il numero totale di alberi delle decisioni da creare nell'insieme. Creando più alberi delle decisioni, è possibile ottenere una copertura migliore, ma il tempo di training aumenta.

    Questo valore controlla anche il numero di alberi visualizzati durante la visualizzazione del modello con training. Se si vuole visualizzare o stampare un albero ingle, è possibile impostare il valore su 1. Tuttavia, ciò significa che viene generato un solo albero (l'albero con il set iniziale di parametri) e non vengono eseguite altre iterazioni.

  7. Valore di seed casuale: digitare un numero intero non negativo facoltativo da usare come valore di seed casuale. La specifica di un valore di seeding garantisce la riproducibilità tra le esecuzioni con gli stessi dati e gli stessi parametri.

    Per impostazione predefinita, il valore di inizializzazione casuale è impostato su 0, il che significa che il valore di inizializzazione iniziale viene ottenuto dall'orologio di sistema.

  8. Consenti livelli di categoria sconosciuti: selezionare questa opzione per creare un gruppo per i valori sconosciuti nei set di training e convalida. Se si deseleziona questa opzione, il modello può accettare solo i valori contenuti nei dati di training. Il modello potrebbe essere meno preciso per i valori noti, ma può fornire stime migliori per i nuovi valori (sconosciuti).

  9. Aggiungere un set di dati di training e uno dei moduli di training:

    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 si prevede un intervallo di impostazioni per ogni parametro, vengono ignorati i valori e vengono utilizzati i valori predefiniti per lo learner.

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

  10. Eseguire l'esperimento.

Risultati

Al termine del training:

  • Per visualizzare l'albero creato a ogni iterazione, fare clic con il pulsante destro del mouse sul modulo Train Model (Training modello) e scegliere Trained model (Modello con training ) per visualizzare. Se si usa Tune Model Hyperparameters (Ottimizza iperparamezzi modello), fare clic con il pulsante destro del mouse sul modulo e scegliere Trained best model (Modello migliore con training) per visualizzare il modello migliore.

    Fare clic su ogni albero per eseguire il drill-down nelle divisioni e visualizzare le regole per ogni nodo.

  • Per usare il modello per l'assegnazione dei punteggi, connetterlo a Score Model per stimare i valori per i nuovi esempi di input.

  • Per salvare uno snapshot del modello con training, fare clic con il pulsante destro del mouse sull'output del modello con training del modulo di training e scegliere Salva con nome. La copia del modello di cui è stato eseguito il training salvato non viene aggiornata nelle esecuzioni successive dell'esperimento.

Esempio

Per esempi di come vengono usati gli alberi con boost in Machine Learning, vedere l'Azure AI Gallery:

Note tecniche

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

Suggerimento

In generale, gli alberi delle decisioni generano risultati migliori quando le funzioni sono in qualche modo correlate. Se le funzioni presentano un livello elevato di entropia, ovvero non sono correlate, condividono poche o nessuna informazione reciproca, quindi anche se ordinate in un albero non genereranno un significato predittivo importante.

Dettagli dell'implementazione

L'insieme di alberi viene prodotto tramite il calcolo, in ogni passaggio, di un albero di regressione che fornisce un'approssimazione del gradiente della funzione di perdita e tramite l'aggiunta all'albero precedente con coefficienti che riducono al minimo la perdita del nuovo albero. L'output dell'insieme prodotto da MART in un'istanza specifica è la somma degli output degli alberi.

  • Per un problema di classificazione binaria l'output viene convertito in probabilità mediante qualche tipo di calibrazione.

  • Per i problemi di regressione l'output corrisponde al valore previsto della funzione.

  • Per i problemi di classificazione, le istanze vengono ordinate in base al valore di output dell'insieme.

Parametri del modulo

Nome Intervallo Type Predefinito Descrizione
Maximum number of leaves per tree >=1 Integer 20 Specifica il numero massimo di foglie per ogni albero.
Minimum number of samples per leaf node >=1 Integer 10 Specifica il numero minimo di casi necessari per formare un nodo foglia.
Velocità di apprendimento [double.Epsilon;1.0] Float 0,2 Specifica la velocità di apprendimento iniziale.
Total number of trees constructed >=1 Integer 100 Specifica il numero massimo di alberi che è possibile creare durante il training
Random number seed any Integer Specifica un valore di inizializzazione per il generatore di numeri casuali usato dal modello. Lasciare vuoto per impostazione predefinita.
Allow unknown categorical levels any Boolean true Se true, crea un livello aggiuntivo per ogni colonna categorica. I livelli del set di dati di test non disponibili nel set di dati di training verranno mappati a questo livello aggiuntivo.

Output

Nome Tipo Descrizione
Untrained model ILearner interface Modello di regressione senza training

Vedi anche

Elenco moduli A-Z
Regressione