Diferențe matematice între GBM, XGBoost, LightGBM, CatBoost

Există mai multe implementări ale familiei de modele GBDT, cum ar fi:

  • GBM
  • XGBoost
  • LightGBM
  • Catboost.

Care sunt diferențele matematica între aceste diferite implementări?

Catboost pare să depășească celelalte implementări chiar și folosind doar parametrii impliciți conform acestui benchmark, dar este încă foarte lent.

Presupun că catboost nu folosește variabilele dummificate, astfel încât greutatea dată fiecărei variabile (categorice) este mai echilibrată în comparație cu celelalte implementări, astfel încât variabilele cu cardinalitate ridicată nu au mai multă greutate decât celelalte. Permite categoriilor slabe (cu cardinalitate scăzută) să intre în unii copaci, prin urmare, o performanță mai bună. În afară de asta, nu am alte explicații.

Doriți să vedeți acest articol în limba engleză de la echipa Yandex despre singularitatea matematică a CATBoost.

Am citit-o pe scurt, iar printre unele lucruri pe care am putut să le înțeleg rapid a fost faptul că nu folosesc reziduurile obținute în TREN pentru a antrena, deoarece aceste reziduuri creează o prejudecată optimistă în calitatea învățării. ( Actualizare: această noutate oferă o modalitate de a combate supradaptarea, care este unul dintre motivele pentru care algoritmul a funcționat mai bine în comparație cu analogii săi, precum și o varietate de moduri de preprocesare a variabilelor categorice).

Ne pare rău să nu vă ofer un răspuns specific și complet.

Diferențe matematice între GBM, XGBoost

În primul rând, vă sugerez să citiți un articol de Friedman despre Gradient Boosting Machine, aplicat în special modelelor de regresor liniar, clasificatorilor și arborilor de decizie. https://statweb.stanford.edu/