XGBoost utilizza il metodo dell'addestramento additivo in cui modella il residuo del modello precedente.In che modo XGBoost esegue il calcolo parallelo?
Questo è sequenziale, tuttavia, come funziona il calcolo parallelo?
XGBoost utilizza il metodo dell'addestramento additivo in cui modella il residuo del modello precedente.In che modo XGBoost esegue il calcolo parallelo?
Questo è sequenziale, tuttavia, come funziona il calcolo parallelo?
Xgboost non esegue più alberi in parallelo come hai notato, hai bisogno di previsioni dopo ogni albero per aggiornare i gradienti.
Piuttosto esegue la parallelizzazione ENTRO un singolo albero my utilizzando openMP per creare rami in modo indipendente.
Per osservare questo, creare un set di dati gigante ed eseguire con n_rounds = 1. Vedrai tutti i tuoi core che sparano su un albero. Questo è il motivo per cui è così ben progettato.
Per ulteriori dettagli, consultare http://zhanpengfang.github.io/418home.html. –
@T. Scharf Ma come funziona questo per più nodi, cioè più computer anziché 1 computer con più core? La quantità di comunicazione per sincronizzare l'albero all'interno di un albero sarebbe immensa. – AbdealiJK
Sì, no, per aggirare questo fatto .. @AbdealiJK ma se i tuoi dati sono così grandi devi distribuirlo questo è il prezzo che paghi –
Grazie per aver chiesto - Ho avuto la stessa domanda. – nkhuyu
Un bel blog in [here] (http://www.parallelr.com/parallel-computation-with-r-and-xgboost/) per coprire parallelamente e XGboost. – Patric