studenti deboli lineari per Xgboost

Sep 03 2020

Vedo ora che la documentazione di Xgboost considera gli alberi solo come discenti deboli, ma ricordo bene che anche i modelli lineari erano un'opzione, mi chiedo se sono ancora supportati.

Ad ogni modo, ho sempre pensato che alla combinazione lineare dei predittori fosse applicata qualche trasformazione non lineare derivabile, come sigmoide, perché è ben noto che la somma di un qualsiasi numero di combinazioni lineari è una combinazione lineare stessa. Con mia grande sorpresa, recentemente mi è stato detto che nessuna trasformazione non lineare è stata mai considerata nell'algoritmo Xgboost. Questa domanda e risposta molto apprezzata lo conferma.

Ma, nella mia comprensione, Xgboost con studenti deboli lineari è solo un'implementazione di fantasia di una discesa del gradiente di Newton per modelli lineari generalizzati (che è esattamente ciò che glmfa la funzione R , ad eccezione della regolarizzazione).

È così?

Risposte

1 usεr11852 Sep 08 2020 at 05:41

Sì, la tua comprensione è per lo più corretta; XGBoost utilizza effettivamente la discesa delle coordinate per adattarsi ai GLM di apprendimento di base e non direttamente al metodo di Newton, ma concettualmente hai ragione. Alla fine installeremo un GLM. Ho fornito maggiori dettagli sull'argomento nel thread: Differenza nei coefficienti di regressione di LinearRegression di sklearn e XGBRegressor .

In generale, questa equivalenza non è inaspettata. Alla fine della giornata, la combinazione lineare di modelli lineari è ancora un modello lineare; il nostro modello è di forma$y \approx X \beta$. In definitiva, ogni iterazione di boost aggiorna la stima finale di una certa quantità$\alpha$, il nostro tasso di apprendimento. Effettuare un gran numero di aggiornamenti (ovvero potenziare le iterazioni) risulterà nell'avere un discente XGBoost equivalente a GLM (con associati$L_1$ e $L_2$ regolarizzazione).