In che modo l'aumento del gradiente calcola le stime di probabilità?


12

Ho cercato di capire l'incremento del gradiente leggendo vari blog, siti Web e cercando di trovare la mia risposta cercando ad esempio il codice sorgente XGBoost. Tuttavia, non riesco a trovare una spiegazione comprensibile di come gli algoritmi di aumento gradiente producano stime di probabilità. Quindi, come calcolano le probabilità?


3
Questo essenzialmente pone e risponde alla stessa domanda, nel caso in cui una diversa spiegazione ti sia utile: stats.stackexchange.com/questions/204154/…
Matthew Drury,

Risposte:


14

XGBoost per la classificazione è un modello che combina i principi degli alberi decisionali e della regressione logistica.

La funzione di regressione logistica calcola le probabilità lineari sulla scala logit:

z=XwP(y=1|X)=11+exp(z)

A differenza della regressione logistica, le "caratteristiche" in sono costruite come nodi terminali di un insieme di alberi decisionali - quindi ogni fila di raccoglie le foglie terminali per ciascun campione; la riga è un vettore binario -hot, per il numero di alberi. (Ogni albero XGBoost viene generato secondo un algoritmo particolare, ma non è rilevante qui.)XXTT

Ci sono colonne in , una colonna per ciascun nodo terminale. Non esiste alcuna espressione per il numero totale di nodi terminali, poiché il numero di nodi può variare tra gli alberi (e di solito, secondo la mia esperienza).nX

Ogni foglia dell'albero ha un "peso" associato. Quel peso è registrato in . Per essere conforme a , ci sono elementi in .wXnw

Oppure, in alternativa, le probabilità del log per un campione sono la somma dei pesi delle sue foglie terminali. La probabilità del campione appartenente alla classe 1 è la trasformazione del log inverso della somma.


Questo è molto utile, grazie. Quanti elementi dovrebbe contenere il vettore beta? Sarebbe uguale al numero di nodi fogliari totali su tutti gli alberi? (E ci sarebbe lo stesso numero di colonne nella matrice X, giusto?)
Vishal

Grazie per la risposta aggiornata. Questo significa che esiste una matrice unica X e un insieme unico di beta per ogni campione / osservazione ( i)? In altre parole, per ogni campione / osservazione per il quale si desidera calcolare la probabilità di appartenenza alla classe 1, è necessario determinare i valori univoci della Xmatrice e del vettore beta?
Vishal,

1
Ogni riga di memorizza le ante del terminale per un campione. X
Sycorax dice di reintegrare Monica il

@SycoraxsaysReinstateMonica La tua risposta è molto utile per comprendere il GBM. Inoltre, puoi spiegare come viene costruito il primo albero in GBM (classificatore) e come viene deciso il criterio di suddivisione del nodo per il primo albero. Non sono sicuro di cosa stiamo prevedendo per il primo albero (anche supponendo che una costante sia inizializzata, come il gradiente di perdita sia calcolato dalla costante) e se mse è il criterio di divisione, da cosa è composto (differenza quadrata di quali valori ??)
martedì
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.