Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost

Π’ этом Π±Π»ΠΎΠ³Π΅ ΠΌΡ‹ попытаСмся ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, сущСствуСт Π»ΠΈ ΠΎΠ΄ΠΈΠ½ настоящий Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ-ΡƒΠ±ΠΈΠΉΡ†Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСвосходит ΠΈΡ… всСх. ΠœΡ‹ сравним XGBoost, LightGBM ΠΈ CatBoost со старым GBM, ΠΈΠ·ΠΌΠ΅Ρ€ΠΈΠΌ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΈ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π½Π° Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… Π½Π°Π±ΠΎΡ€Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, связанных с ΠΌΠΎΡˆΠ΅Π½Π½ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎΠΌ. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ прСдставим ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ сравнСниС всСх Π½ΠΎΠ²Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Π°ΠΌ быстро ΠΏΠΎΠ½ΡΡ‚ΡŒ основныС различия ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΈΠ· Π½ΠΈΡ…. ПолСзно ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ прСдставлСниС ΠΎ Π΄Π΅Ρ€Π΅Π²ΡŒΡΡ… с Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π½Ρ‹ΠΌ бустом.

Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π€ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost

Π’ Ρ‡Π΅ΠΌ ΠΈΡ… ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ?

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΌΡ‹ погрузимся Π² Π΄Π΅Ρ‚Π°Π»ΠΈ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°Ρ‚ΡŒ нСсколько Π²Π°ΠΆΠ½Ρ‹Ρ… Π²Π΅Ρ‰Π΅ΠΉ:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим ΠΈΡ… основныС характСристики:

ΠŸΠ΅Ρ€Π΅Π΄ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ΠΌ всС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ ΠΏΠ°Ρ€Ρ‹ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ-сплит для всСх ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ². ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ Ρ‚Π°ΠΊΠΈΡ… ΠΏΠ°Ρ€ ΡΠ²Π»ΡΡŽΡ‚ΡΡ: (возраст, 10), (сумма, >500). Π­Ρ‚ΠΈ ΠΏΠ°Ρ€Ρ‹ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ-сплит строятся Π½Π° основС гистограммы ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π²ΠΎ врСмя обучСния Π² качСствС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… расщСплСний ΡƒΠ·Π»ΠΎΠ². Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ быстрСС, Ρ‡Π΅ΠΌ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ ΠΆΠ°Π΄Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎ пСрСчисляСт всС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ разбиСния для Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ².

lightGBM ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π½ΡƒΡŽ ΠΎΠ΄Π½ΠΎΡΡ‚ΠΎΡ€ΠΎΠ½Π½ΡŽΡŽ Π²Ρ‹Π±ΠΎΡ€ΠΊΡƒ (GOSS), которая Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ всС экзСмпляры с большими Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ (Ρ‚.Π΅. с большой ошибкой) ΠΈ ΡΠ»ΡƒΡ‡Π°ΠΉΠ½ΡƒΡŽ Π²Ρ‹Π±ΠΎΡ€ΠΊΡƒ экзСмпляров с ΠΌΠ°Π»Ρ‹ΠΌΠΈ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ распрСдСлСниС Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ вычислСнии ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹ΡˆΠ°, GOSS Π²Π²ΠΎΠ΄ΠΈΡ‚ постоянный ΠΌΠ½ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒ для экзСмпляров Π΄Π°Π½Π½Ρ‹Ρ… с ΠΌΠ°Π»Ρ‹ΠΌΠΈ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, GOSS достигаСт Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ баланса ΠΌΠ΅ΠΆΠ΄Ρƒ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ скорости Π·Π° счСт ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ количСства экзСмпляров Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ сохранСниСм точности для Π²Ρ‹ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π² Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π΅ являСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для LightGBM, поэтому Π΅Π³ΠΎ слСдуСт Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ явно.

Catboost ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π½ΠΎΠ²ΡƒΡŽ Ρ‚Π΅Ρ…Π½ΠΈΠΊΡƒ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Minimal Variance Sampling (MVS), которая прСдставляСт собой Π²Π·Π²Π΅ΡˆΠ΅Π½Π½ΡƒΡŽ Π²Ρ‹Π±ΠΎΡ€ΠΊΡƒ вСрсии Stochastic Gradient Boosting. Π’ этой Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ΅ взвСшСнная Π²Ρ‹Π±ΠΎΡ€ΠΊΠ° происходит Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Π΄Π΅Ρ€Π΅Π²Π°, Π° Π½Π΅ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ разбиСния. НаблюдСния для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π΄Π΅Ρ€Π΅Π²Π° бустинга ΠΎΡ‚Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠ°ΠΊΡΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΎΡ†Π΅Π½ΠΊΠΈ разбиСния.

XGboost Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² взвСшСнной Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π΅Π³ΠΎ процСсс разбиСния Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с GOSS ΠΈ MVS.

Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π€ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost

Catboost строит сбалансированноС Π΄Π΅Ρ€Π΅Π²ΠΎ. На ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π΄Π΅Ρ€Π΅Π²Π° выбираСтся ΠΏΠ°Ρ€Π° ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ-сплит, которая приносит наимСньшиС ΠΏΠΎΡ‚Π΅Ρ€ΠΈ (согласно ΡˆΡ‚Ρ€Π°Ρ„Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ) ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для всСх ΡƒΠ·Π»ΠΎΠ² уровня. МоТно ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° grow-policy.

LightGBM ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ рост Π΄Π΅Ρ€Π΅Π²Π° ΠΏΠΎ Π»ΠΈΡΡ‚ΡŒΡΠΌ (ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ «Π»ΡƒΡ‡ΡˆΠΈΠΉ-ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ»). Он Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ для роста Ρ‚ΠΎΡ‚ лист, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠΎΡ‚Π΅Ρ€ΠΈ, Ρ‡Ρ‚ΠΎ позволяСт Π²Ρ‹Ρ€Π°ΡΡ‚ΠΈΡ‚ΡŒ нСсбалансированноС Π΄Π΅Ρ€Π΅Π²ΠΎ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π΄Π΅Ρ€Π΅Π²ΠΎ растСт Π½Π΅ ΠΏΠΎ уровням, Π° ΠΏΠΎ Π»ΠΈΡΡ‚ΡŒΡΠΌ, ΠΏΡ€ΠΈ ΠΌΠ°Π»Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях Π²Π°ΠΆΠ½ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π³Π»ΡƒΠ±ΠΈΠ½Ρƒ Π΄Π΅Ρ€Π΅Π²Π°.

XGboost раздСляСт Π΄ΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π³ΠΈΠΏΠ΅Ρ€ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° max_depth, Π° Π·Π°Ρ‚Π΅ΠΌ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΎΠ±Ρ€Π΅Π·Π°Ρ‚ΡŒ Π΄Π΅Ρ€Π΅Π²ΠΎ Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΈ удаляСт части, Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅Ρ‚ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹ΡˆΠ°. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΈΠ½ΠΎΠ³Π΄Π° Π·Π° расщСплСниСм Π±Π΅Π· ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ ΠΏΠΎΡ‚Π΅Ρ€ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ расщСплСниС с ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΡ‚Π΅Ρ€ΡŒ. XGBoost Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ рост Π΄Π΅Ρ€Π΅Π²Π° ΠΏΠΎ Π»ΠΈΡΡ‚ΡŒΡΠΌ (ΠΊΠ°ΠΊ LightGBM).

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

Catboost ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π²Π° Ρ€Π΅ΠΆΠΈΠΌΠ° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ: «Min» ΠΈ «Max». Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ «Min» ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ значСния ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ минимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠ° (ΠΈΠΌ присваиваСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ мСньшС всСх ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ). Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, гарантируСтся, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ разбиСния Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ отдСляСт ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ значСния ΠΎΡ‚ всСх ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. «Max» Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ «Min», Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ значСниями.

Π’ LightGBM ΠΈ XGBoost Π½Π΅Π΄ΠΎΡΡ‚Π°ΡŽΡ‰ΠΈΠ΅ значСния Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒΡΡ Π² Ρ‚Ρƒ сторону, которая ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ ΠΏΠΎΡ‚Π΅Ρ€ΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠΈ.

ΠœΠ΅Ρ‚ΠΎΠ΄ ваТности ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ²

Π£ XGBoost Π΅ΡΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΌΠ΅Ρ‚ΠΎΠ΄, «ΠžΡ…Π²Π°Ρ‚», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдставляСт собой ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ количСство наблюдСний, связанных с ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠΌ. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠ° ΠΌΡ‹ подсчитываСм количСство наблюдСний, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… для Π²Ρ‹Π±ΠΎΡ€Π° ΡƒΠ·Π»Π° листа.

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ²

LightGBM раздСляСт ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΈ, разбивая ΠΈΡ… ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ Π½Π° 2 подмноТСства. Основная идСя Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ Π² соотвСтствии с Ρ†Π΅Π»ΡŒΡŽ обучСния ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠΈ. По Π½Π°ΡˆΠ΅ΠΌΡƒ ΠΎΠΏΡ‹Ρ‚Ρƒ, этот ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ модСль LightGBM. Он ΠΈΠΌΠ΅Π΅Ρ‚ ΡΡ€Π°Π²Π½ΠΈΠΌΡƒΡŽ (Π° ΠΈΠ½ΠΎΠ³Π΄Π° ΠΈ Ρ…ΡƒΠ΄ΡˆΡƒΡŽ) ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Ρ‡Π΅ΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ†Π΅Π»ΠΈ ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΊΠΈ).

XGBoost Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ встроСнного ΠΌΠ΅Ρ‚ΠΎΠ΄Π° для ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ². ΠšΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (one-hot, Ρ†Π΅Π»Π΅Π²ΠΎΠ΅ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Ρ‚.Π΄.) Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ.

Π’ нашСм экспСримСнтС ΠΌΡ‹ использовали 4 Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ…, связанных с ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠΎΡˆΠ΅Π½Π½ΠΈΡ‡Π΅ΡΡ‚Π²Π° Π² ΠΌΠΈΡ€Π΅ элСктронной ΠΊΠΎΠΌΠΌΠ΅Ρ€Ρ†ΠΈΠΈ, с Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΉ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ, Π±Ρ‹Π» Π»ΠΈ Π·Π°ΠΊΠ°Π·, сдСланный ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ, ΠΌΠΎΡˆΠ΅Π½Π½ΠΈΡ‡Π΅ΡΠΊΠΈΠΌ ΠΈΠ»ΠΈ Π·Π°ΠΊΠΎΠ½Π½Ρ‹ΠΌ. Π­Ρ‚ΠΈ Π½Π°Π±ΠΎΡ€Ρ‹ ΡƒΡ‡Π΅Π±Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… содСрТат ΠΎΠΊΠΎΠ»ΠΎ 300 ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ², ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ долю (

1/3 ) ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ² ΠΈ ΠΎΠΊΠΎΠ»ΠΎ 100 тысяч наблюдСний.

Π’ΠΎ всСх экспСримСнтах ΠΌΡ‹ ΠΎΠ±ΡƒΡ‡Π°Π»ΠΈΡΡŒ Π½Π° CPU, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ экзСмпляр AWS c4.xlarge.

ΠœΡ‹ сравнили ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ обучСния, ΠΏΡ‹Ρ‚Π°ΡΡΡŒ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ максимально ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅ условия для всСх Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ². Для этого ΠΌΡ‹ ΠΎΠ±ΡƒΡ‡ΠΈΠ»ΠΈ модСль с 4000 Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π² ΠΈ Π³Π»ΡƒΠ±ΠΈΠ½ΠΎΠΉ 1 (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΡƒΠ·Π΅Π»), со ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ обучСния 0,01.

На Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ экспСримСнта. КаТдая Ρ‚ΠΎΡ‡ΠΊΠ° прСдставляСт собой срСднСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· 3 ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹Ρ… Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΎΠΊ.

Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π€ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost

ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ LightGBM являСтся самым быстрым ΠΈΠ· всСх ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ². CatBoost ΠΈ XGBoost Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с GBM, Π½ΠΎ ΠΎΠ½ΠΈ всС Π΅Ρ‰Π΅ ΠΎΡ‚ΡΡ‚Π°ΡŽΡ‚ ΠΎΡ‚ LightGBM.

Для Π½Π°ΡˆΠΈΡ… Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… LightGBM, CatBoost ΠΈ XGBoost Π±Ρ‹Π»ΠΈ

15x, 5x ΠΈ 3x быстрСС, Ρ‡Π΅ΠΌ GBM, соотвСтствСнно.

ΠœΡ‹ сравнили WAUC Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Π½Π° тСстовом Π½Π°Π±ΠΎΡ€Π΅ послС провСдСния пСрСкрСстной гипСрпарамСтричСской ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°. ΠœΡ‹ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ Π²Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π² подробности ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… Π³ΠΈΠΏΠ΅Ρ€ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Π½ΠΎ стоит ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π³ΠΈΠΏΠ΅Ρ€ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Π΅ для CatBoost, ΠΏΡ€ΠΈΠ²Π΅Π»ΠΈ ΠΊ Π±ΠΎΠ»Π΅Π΅ слоТной ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°ΠΌΠΈ, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ конСчная модСль ΠΏΠΎΡ‡Ρ‚ΠΈ всСгда ΠΈΠΌΠ΅Π»Π° большСС количСство Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π² ΠΈ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Π³Π»ΡƒΠ±ΠΈΠ½Ρƒ.

Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ экспСримСнта ΠΏΠΎ пСрСкрСстной Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ. КаТдая ячСйка прСдставляСт собой срСднСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ WAUC ΠΈΠ· 5 ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹Ρ… экспСримСнтов.

Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π€ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost

Π’ Π±Π°Π·ΠΎΠ²ΠΎΠΌ Π½Π°Π±ΠΎΡ€Π΅ Π΄Π°Π½Π½Ρ‹Ρ… CatBoost прСвосходит ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π½Π° 0,8-1%, Ρ‡Ρ‚ΠΎ являСтся Π·Π½Π°Ρ‡ΠΈΠΌΠΎΠΉ Ρ€Π°Π·Π½ΠΈΡ†Π΅ΠΉ. Π’ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π½Π°Π±ΠΎΡ€Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ… различия Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹, Ρ‡Ρ‚ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Π±Ρ‹Ρ‚ΡŒ Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅ΠΌ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° для этих Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π²Π°ΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π²ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΈ тСхничСскиС ограничСния.

ΠŸΠΎΡ€Π°Π±ΠΎΡ‚Π°Π² со всСми Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°ΠΌΠΈ, ΠΌΡ‹ ΠΏΡ€ΠΈΡˆΠ»ΠΈ ΠΊ Π²Ρ‹Π²ΠΎΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ, ΠΊ соТалСнию, Π½Π΅ сущСствуСт побСдитСля ΠΏΠΎ всСм критСриям. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² Riskified ΠΌΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ всС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ Π² наши систСмы ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ подходящий, учитывая ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ случай использования. НапримСр, Ссли ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ обучСния являСтся нашСй Π±ΠΎΠ»Π΅Π²ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ, ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ LightGBM. Π’ Π·Π°Π΄Π°Ρ‡Π°Ρ…, Π³Π΄Π΅ Π½Π°ΠΌ Π½ΡƒΠΆΠ½Π° максимальная Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±ΡƒΡ‡ΠΈΡ‚ΡŒ всС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ Ρ‚ΠΎΡ‚, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ самый высокий WAUC для Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ….

Помимо Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ прСдставили здСсь, Π΅ΡΡ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ шаги, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ точности ΠΈ скорости. Для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ скорости ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½Π° графичСских процСссорах. Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΈΠΌ Π²Π°ΠΆΠ½Ρ‹ΠΌ шагом являСтся настройка большого количСства Π³ΠΈΠΏΠ΅Ρ€ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². БущСствуСт мноТСство Π³ΠΈΠΏΠ΅Ρ€ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ настроСны Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚Π΅, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ… ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΡΠΊΡΠΊΠ»ΡŽΠ·ΠΈΠ²Π½Ρ‹ΠΌΠΈ для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°. Π’ ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· Π½Π°ΡˆΠΈΡ… Π±ΡƒΠ΄ΡƒΡ‰ΠΈΡ… Π±Π»ΠΎΠ³ΠΎΠ² ΠΌΡ‹ прСдставим ΠΈ сравним ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ настройки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ с Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°ΠΌΠΈ бустинга, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ Ρ‚Ρ€Π΅Ρ…Ρ„Π°Π·Π½Ρ‹ΠΉ поиск ΠΈ байСсовская оптимизация. Π‘Π»Π΅Π΄ΠΈΡ‚Π΅ Π·Π° новостями.

ВсС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ постоянно ΠΎΠ±Π½ΠΎΠ²Π»ΡΡŽΡ‚ΡΡ ΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠ°ΡŽΡ‚ΡΡ, поэтому ΠΌΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° ΠΈΡ… Ρ€Π΅Π»ΠΈΠ·Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ½ΠΎΠ³Π΄Π° Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π½ΠΎΠ²Ρ‹Π΅ ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ возмоТности.

Бпасибо ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ЯндСкса Π·Π° Ρ†Π΅Π½Π½Ρ‹ΠΉ Π²ΠΊΠ»Π°Π΄ ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ связь!

Π Π°Π΄ΡƒΠΉΡ‚Π΅ нас своими коммСнтариями, прСдлоТСниями ΠΈ мыслями!

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

XGBoost vs. CatBoost vs. LightGBM: How Do They Compare?

This article will guide you through decision trees and random forests in machine learning, and compare LightGBM vs. XGBoost vs. CatBoost.

Here’s what we’ll cover:

Random forests and decision trees are tools that every machine learning engineer wants in their toolbox.

Think of a carpenter. When a carpenter is considering a new tool, they examine a variety of brandsβ€”similarly, we’ll analyze some of the most popular boosting techniques and frameworks so you can choose the best tool for the job.

*Looking for the Colab Notebook for this post? Find it right here.*

What is a decision tree in machine learning?

Let’s start by explaining decision trees. Decision trees are a class of machine learning models that can be thought of as a sequence of β€œif” statements to apply to an input to determine the prediction.

In greater rigor, a decision tree incrementally constructs vertices within a tree that represent a certain β€œif” statement and has children vertices connected to the parent by edges representing the possible outcomes of the parent vertex if condition (in decision tree lingo, this is referred to as the cut).

Eventually, after some sequence of β€œif” statements, a tree vertice will have no children but hold a prediction value instead. Decision trees can learn the β€œif” conditions and eventual prediction, but they notoriously overfit the training data. To prevent overfitting, oftentimes decision trees are purposefully underfit and cleverly combined to reach the right balance of bias and variance.

What are random forests in machine learning?

Now we’ll explore random forests, the brainchild of Leo Breiman. Random forests are a type of ensemble learning or a collection of so-called β€œweak learner” models whose predictions are combined into a single prediction.

In the case of random forests, the collection is made up of many decision trees. Random forests are considered β€œrandom” because each tree is trained using a random subset of the training data (referred to as bagging in more general ensemble models), and random subsets of the input features (coined feature bagging in ensemble model speak), to obtain diverse trees.

Bagging decreases the high variance and tendency of a weak learner model to overfit a dataset. For random forests, both types of bagging are necessary. Without both types of bagging, many of the trees could create similar β€œif” conditions and essentially highly correlated trees.

Instead of bagging and creating many weak learner models to prevent overfitting, often, an ensemble model may use a so-called boosting technique to train a strong learner using a sequence of weaker learners.

In the case of decision trees, the weaker learners are underfit trees that are strengthened by increasing the number of β€œif” conditions in each subsequent model.

XGBoost, CatBoost, and LightGBM have emerged as the most optimized boosting techniques for gradient-boosted tree algorithms. Scikit-learn also has generic implementations of random forests and gradient-boosted tree algorithms, but with fewer optimizations and customization options than XGBoost, CatBoost, or LightGBM, and is often better suited for research than production environments.

Each of XGBoost, CatBoost, and LightGBM have their own frameworks, distinguished by how the decision tree cuts are added iteratively.

LightGBM vs. XGBoost vs. CatBoost

LightGBM is a boosting technique and framework developed by Microsoft. The framework implements the LightGBM algorithm and is available in Python, R, and C. LightGBM is unique in that it can construct trees using Gradient-Based One-Sided Sampling, or GOSS for short.

GOSS looks at the gradients of different cuts affecting a loss function and updates an underfit tree according to a selection of the largest gradients and randomly sampled small gradients. GOSS allows LightGBM to quickly find the most influential cuts.

XGBoost was originally produced by University of Washington researchers and is maintained by open-source contributors. XGBoost is available in Python, R, Java, Ruby, Swift, Julia, C, and C++. Similar to LightGBM, XGBoost uses the gradients of different cuts to select the next cut, but XGBoost also uses the hessian, or second derivative, in its ranking of cuts. Computing this next derivative comes at a slight cost, but it also allows a greater estimation of the cut to use.

Finally, CatBoost is developed and maintained by the Russian search engine Yandex and is available in Python, R, C++, Java, and also Rust. CatBoost distinguishes itself from LightGBM and XGBoost by focusing on optimizing decision trees for categorical variables, or variables whose different values may have no relation with each other (eg. apples and oranges).

To compare apples and oranges in XGBoost, you’d have to split them into two one-hot encoded variables representing β€œis apple” and β€œis orange,” but CatBoost determines different categories automatically with no need for preprocessing (LightGBM does support categories, but has more limitations than CatBoost).

LightGBM vs. XGBoost vs. CatBoost: Which is better?

All of LightGBM, XGBoost, and CatBoost have the ability to execute on either CPUs or GPUs for accelerated learning, but their comparisons are more nuanced in practice. Each framework has an extensive list of tunable hyperparameters that affect learning and eventual performance.

First off, CatBoost is designed for categorical data and is known to have the best performance on it, showing the state-of-the-art performance over XGBoost and LightGBM in eight datasets in its official journal article. As of CatBoost version 0.6, a trained CatBoost tree can predict extraordinarily faster than either XGBoost or LightGBM.

On the flip side, some of CatBoost’s internal identification of categorical data slows its training time significantly in comparison to XGBoost, but it is still reported much faster than XGBoost. LightGBM also boasts accuracy and training speed increases over XGBoost in five of the benchmarks examined in its original publication.

But to XGBoost’s credit, XGBoost has been around the block longer than either LightGBM and CatBoost, so it has better learning resources and a more active developer community. It also doesn’t hurt that XGBoost is substantially faster and more accurate than its predecessors and other competitors such as Scikit-learn.

Each boosting technique and framework has a time and a placeβ€”and it is often not clear which will perform best until testing them all. Fortunately, prior work has done a decent amount of benchmarking the three choices, but ultimately it’s up to you, the engineer, to determine the best tool for the job.

Is machine learning engineering the right career for you?

Knowing machine learning and deep learning concepts is importantβ€”but not enough to get you hired. According to hiring managers, most job seekers lack the engineering skills to perform the job. This is why more than 50% of Springboard’s Machine Learning Career Track curriculum is focused on production engineering skills. In this course, you’ll design a machine learning/deep learning system, build a prototype, and deploy a running application that can be accessed via API or web service. No other bootcamp does this.

Our machine learning training will teach you linear and logistical regression, anomaly detection, cleaning, and transforming data. We’ll also teach you the most in-demand ML models and algorithms you’ll need to know to succeed. For each model, you will learn how it works conceptually first, then the applied mathematics necessary to implement it, and finally learn to test and train them.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ различия ΠΌΠ΅ΠΆΠ΄Ρƒ GBM, XGBoost, LightGBM, CatBoost?

БущСствуСт нСсколько Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ сСмСйства GBDT, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ:

ΠšΠ°ΠΊΠΎΠ²Ρ‹ матСматичСскиС различия ΠΌΠ΅ΠΆΠ΄Ρƒ этими Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ рСализациями?

Π― ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡŽ, Ρ‡Ρ‚ΠΎ catboost Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ dummified ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, поэтому вСс, присваиваСмый ΠΊΠ°ΠΆΠ΄ΠΎΠΉ (ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ) ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, являСтся Π±ΠΎΠ»Π΅Π΅ сбалансированным ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ рСализациями, поэтому ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ с большим количСством элСмСнтов Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ большСго вСса, Ρ‡Π΅ΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠ΅. Π­Ρ‚ΠΎ позволяСт слабой ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ (с Π½ΠΈΠ·ΠΊΠΎΠΉ ΠΊΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ) Π²Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π΅Ρ€Π΅Π²ΡŒΡ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π»ΡƒΡ‡ΡˆΡƒΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. ΠšΡ€ΠΎΠΌΠ΅ этого, Ρƒ мСня Π½Π΅Ρ‚ Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠΈΡ… объяснСний.

Π’Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° эту Π°Π½Π³Π»ΠΎΡΠ·Ρ‹Ρ‡Π½ΡƒΡŽ ΡΡ‚Π°Ρ‚ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ЯндСкса ΠΎ матСматичСской ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ CATBoost.

ΠŸΡ€ΠΎΡˆΡƒ прощСния, Ρ‡Ρ‚ΠΎ Π½Π΅ Π΄Π°Π» Π²Π°ΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΈ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π°.

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ различия ΠΌΠ΅ΠΆΠ΄Ρƒ GBM, XGBoost

Π‘Π½Π°Ρ‡Π°Π»Π° я ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ Π²Π°ΠΌ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΡΡ‚Π°Ρ‚ΡŒΡŽ Π€Ρ€ΠΈΠ΄ΠΌΠ°Π½Π° ΠΎ машинС ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π°, примСняСмой Π² частности ΠΊ модСлям Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… рСгрСссоров, классификаторам ΠΈ Π΄Π΅Ρ€Π΅Π²ΡŒΡΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ. https://statweb.stanford.edu/

Π― Π±Ρ‹ Π½Π΅ стал Π²Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π² подробности здСсь. Π­Ρ‚ΠΎ просто Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π΅ ΠΏΡ€ΠΎΡ‡Ρ‚Π΅Π½ΠΈΠ΅, ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΏΠΎΡ‚Π΅Ρ€ΡŒ (L) ΠΈ ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ваТности. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, это ваТная ΡΡ‚Π°Ρ‚ΡŒΡ ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° спуска Π² пространствС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Ρ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ), Π° Π½Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π² цСлях ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎΡ‚Π΅Ρ€ΡŒ.

Π’Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π²ΠΈΠ½ΡŒΠ΅Ρ‚ΠΊΡƒ для ΠΌΠΎΠ΄Π΅Π»ΠΈ XGBoost ΠΎΡ‚ Tianqi Chen et al. Π’Π΅ΠΏΠ΅Ρ€ΡŒ это становится интСрСсным. ΠŸΠ°Ρ€Π° матСматичСских ΠΎΡ‚ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠΉ этой ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΎΡ‚ классичСского GBM Π€Ρ€ΠΈΠ΄ΠΌΠ°Π½Π°:

Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π€ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost

К этому ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρƒ: посмотритС здСсь, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΏΠΎΡ‚Π΅Ρ€ΠΈ квантиля Π² CATBoost, которая ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΈ прСдоставляСт ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π²ΠΎΠ΅, Ρ‚Π°ΠΊ ΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Π΅: https://github.com/catboost/catboost/blob/master/catboost/libs/algo/ error_functions.h

Π₯отя Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ эту ΠΏΠΎΠ»Π΅Π·Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΏΠΎΡ‚Π΅Ρ€ΠΈ L1 Π² XGBoost, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ЯндСкса с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌΠΈ функциями ΠΏΠΎΡ‚Π΅Ρ€ΠΈ, написанными для XGB.

Они ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Π΅ способы ΠΏΠΎΠ΄Π°Ρ‡ΠΈ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… характСристик Π² ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ старый ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΎ извСстный ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ «с ΠΎΠ΄Π½ΠΎΠΉ стороны». УмСньшСниС Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ пространства Π±Π΅Π· ΠΏΠΎΡ‚Π΅Ρ€ΠΈ большого количСства ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ являСтся ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ подогнанная модСль ΠΌΠ΅Π½Π΅Π΅ приспособлСна.

Π― всС. Π― Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ LightGBM, поэтому Π½Π΅ ΠΌΠΎΠ³Ρƒ ΠΏΡ€ΠΎΠ»ΠΈΡ‚ΡŒ свСт Π½Π° Π½Π΅Π³ΠΎ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π³ΠΈΠΏΠ΅Ρ€ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π½Π° XGBoost, LightGBM ΠΈ CatBoost с использованиСм Hyperopt

Π”Π°Ρ‚Π° ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Aug 1, 2019

Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π€ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost

ΠžΠ±Π΅Ρ‰Π°ΡŽ, это Π±ΡƒΠ΄Π΅Ρ‚ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ, Ρ‡Π΅ΠΌ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ:

НСТная рСализация обучСния Π² области подкрСплСния Π² Ρ‚ΠΎΡ€Π³ΠΎΠ²Π»Π΅ ΠΏΠ°Ρ€ΠΎΠΉ

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ структурированного программирования Π² TensorFlow

towardsdatascience.com

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π“Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π½ΠΎΠ΅ Π΄Π΅Ρ€Π΅Π²ΠΎ принятия Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ (GBDT)

ΠŸΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ градиСнтааддитивная ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ° ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΡΠ”Π΅Ρ€Π΅Π²ΡŒΡ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ,ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ страницаXGBoost Π΄Π°Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ Ρ‡Π΅Ρ‚ΠΊΠΎΠ΅ объяснСниС понятий. По сути, вмСсто запуска статичСского Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ Π΄Π΅Ρ€Π΅Π²Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ случайного лСса Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ Π½ΠΎΠ²Ρ‹Π΅ Π΄Π΅Ρ€Π΅Π²ΡŒΡΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΏΠΎΠΊΠ° Π½ΠΈΠΊΠ°ΠΊΠΎΠ΅ дальнСйшСС ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ достигнуто. Π’Π΅Ρ…Π½ΠΈΠΊΠ° ансамбля Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ рСгуляризации ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π΅ΡˆΠ°ΡŽΡ‰Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для прСдотвращСния пСрСоснащСния. НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ модСль ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠΎΡ‰Π½ΠΎΠΉ, сущСствуСт мноТСство Π³ΠΈΠΏΠ΅Ρ€ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

XGBoost, LightGBM ΠΈ CatBoost

Π­Ρ‚ΠΎ извСстныС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π°. По ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠΌ GBDT, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ Π»ΡƒΡ‡ΡˆΠ΅Π΅ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΡƒΡ‚Π΅ΠΌ прохоТдСния всСх Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, эти ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ основанный Π½Π° гистограммС ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΡƒΠ΅Ρ‚ элСмСнты Π² элСмСнты ΠΈ выполняСт Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ элСмСнтов, Π° Π½Π΅ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ элСмСнтов. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, ΠΎΠ½ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ склонны ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π΅ΠΆΠ΅Π½Π½Ρ‹Π΅ Π²Ρ…ΠΎΠ΄Ρ‹. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ ΠΈΡ… Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ (см.Вотдля Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ). Π•Ρ‰Π΅ нСсколько ΠΊΠ»ΡŽΡ‡Π΅ΠΉ Π½Π° Π·Π°ΠΌΠ΅Ρ‚ΠΊΡƒ:

XGBoost: Π—Π½Π°ΠΌΠ΅Π½ΠΈΡ‚Ρ‹ΠΉ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹ΡˆΠ½Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ Kaggle Π’Ρ‹Ρ€Π°Ρ‰ΠΈΠ²Π°Π½ΠΈΠ΅ Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π² основано Π½Π° ΠΎΠ±Ρ€Π΅Π·ΠΊΠ΅ Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π² ΠΏΠΎ уровням (Π΄Π΅Ρ€Π΅Π²ΠΎ растСт ΠΏΠΎ всСм ΡƒΠ·Π»Π°ΠΌ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅) с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈΠΎΡ‚ раздСлСния, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π»ΡƒΡ‡ΡˆΠΈΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΠΎ всСм Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ раздСлСниям Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ шагС, ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, это ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

LightGBM: Доступны ΠΊΠ°ΠΊ поэтапноС, Ρ‚Π°ΠΊ ΠΈ листовоС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ (Π΄Π΅Ρ€Π΅Π²ΠΎ растСт ΠΈΠ· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ листа). Π­Ρ‚ΠΎ позволяСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ с ΠΈΠΌΠ΅Π½Π΅ΠΌΠžΠ΄Π½ΠΎΡΡ‚ΠΎΡ€ΠΎΠ½Π½ΡΡ Π²Ρ‹Π±ΠΎΡ€ΠΊΠ° Π½Π° основС Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π° (GOSS)это раздСляСт Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ Π½Π° основС самых Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚ΠΎΠ² ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ случайныС Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ с мСньшими Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… с мСньшими Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ Π±ΠΎΠ»Π΅Π΅ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½Ρ‹. Π”Ρ€ΡƒΠ³ΠΈΠΌ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ ΡΠ²Π»ΡΠ΅Ρ‚ΡΡΠ­ΠΊΡΠΊΠ»ΡŽΠ·ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (EFB), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠ·ΡƒΡ‡Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π΅ΠΆΠ΅Π½Π½ΠΎΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ нСсколько Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² ΠΎΠ΄Π½Ρƒ, Π½Π΅ тСряя Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, учитывая, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Ρ€Π°Π²Π½Ρ‹ Π½ΡƒΠ»ΡŽ вмСстС. Π­Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ LightGBM Π±ΠΎΠ»Π΅Π΅ быстрым Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с XGBoost.

CatBoost: Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ для ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ ΠΊ рСгрСссионным Π·Π°Π΄Π°Ρ‡Π°ΠΌ. Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π½Π° графичСском процСссорС считаСтсябыстрыйсрСди этих Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. Он ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π²ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… характСристик Π² числовыС, ΠšΠ»ΡŽΡ‡ΠΈ ΠΊ Π΅Π³ΠΎ скорости связаны с двумя ОБ:Π—Π°Π±Π²Π΅Π½Π½ΠΎΠ΅ Π΄Π΅Ρ€Π΅Π²ΠΎΠ° такТСУпорядочСнноС ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅,Π—Π°Π±Π²Π΅Π½Π½ΠΎΠ΅ дСрСвоотносится ΠΊ ΠΏΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΡŽ Π΄Π΅Ρ€Π΅Π²Π° ΠΏΠΎ уровням с симмСтричным Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΌ Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ΠΌ (Ρ‚.Π΅. ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ лист Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ раздСляСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠΌ), Π² Ρ‚ΠΎ врСмя какУпорядочСнноС ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ пСрСстановку ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Ρ†Π΅Π»Π΅Π²ΠΎΠ΅ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ для прСобразования ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ². Π’ΠΈΠ΄Π΅Ρ‚ΡŒΠ’ΠΎΡ‚Π° Ρ‚Π°ΠΊΠΆΠ΅Π’ΠΎΡ‚Π‘ΠΎΠ»ΡŒΡˆΠ΅ подробностСй.

БайСсовская оптимизация

Hyperopt

HyperoptΠ±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Python для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ поисковых пространств Π’ настоящСС врСмя ΠΎΠ½ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π΄Π²Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ:1. Π‘Π»ΡƒΡ‡Π°ΠΉΠ½Ρ‹ΠΉ поиска Ρ‚Π°ΠΊΠΆΠ΅2. Π”Π΅Ρ€Π΅Π²ΠΎ ΠΎΡ†Π΅Π½Ρ‰ΠΈΠΊΠΎΠ² ΠŸΠ°Ρ€Π·Π΅Π½Π° (TPE), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся байСсовским ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π  (Ρ… | Ρƒ)вмСсто Ρ‚ΠΎΠ³ΠΎΠ  (Ρƒ | Ρ…)Π½Π° основС аппроксимации Π΄Π²ΡƒΡ… Ρ€Π°Π·Π½Ρ‹Ρ… распрСдСлСний, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΡ€ΠΎΠ³ΠΎΠ²Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ вмСсто ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈ расчСтС ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ³ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ (см.это). РаньшС ΠΎΠ½ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Π» гауссовскиС процСссы ΠΈ Ρ€Π΅Π³Ρ€Π΅ΡΡΠΈΡŽ, Π½ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ½ΠΈ большС Π½Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

РусскиС Π‘Π»ΠΎΠ³ΠΈ

ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° LightGBM

1 LightGBM ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ

1.1 Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ GBDT ΠΈ LightGBM

Как ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рисункС Π½ΠΈΠΆΠ΅, Π² Π½Π°Π±ΠΎΡ€Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π₯иггса LightGBM ΠΏΠΎΡ‡Ρ‚ΠΈ Π² 10 Ρ€Π°Π· быстрСС, Ρ‡Π΅ΠΌ XGBoost, использованиС памяти составляСт ΠΎΠΊΠΎΠ»ΠΎ 1/6 ΠΎΡ‚ XGBoost, ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ точности Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΠ»ΡΡ.

Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π€ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost

1.2 ΠœΠΎΡ‚ΠΈΠ²Π°Ρ†ΠΈΡ LightGBM

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ машинного обучСния, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ Π½Π΅ΠΉΡ€ΠΎΠ½Π½ΠΎΠΉ сСти, ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±ΡƒΡ‡Π°Ρ‚ΡŒΡΡ ΠΌΠΈΠ½ΠΈ-ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ, ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ.

ΠΈGBDT Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠ΅Ρ€Π΅ΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ всС Π΄Π°Π½Π½Ρ‹Π΅ обучСния нСсколько Ρ€Π°Π· Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ, Если всС Π΄Π°Π½Π½Ρ‹Π΅ обучСния Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Ρ‹ Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ, это ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π΄Π°Π½Π½Ρ‹Ρ… обучСния, Π° Ссли ΠΎΠ½ΠΈ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Ρ‹ Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ, потрСбуСтся ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ для ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠ³ΠΎ чтСния ΠΈ записи Π΄Π°Π½Π½Ρ‹Ρ… обучСния. ОсобСнно Π² условиях массовых Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΎΠ³ΠΎ уровня ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ GBDT Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΠΈΡ‚ΡŒ Π΅Π³ΠΎ потрСбности.

1.3 ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Xgboost

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ инструмСнты GBDT Π² основном основаны Π½Π°ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ упорядочСниС(ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ отсортированный) Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π΄Π΅Ρ€Π΅Π²Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, xgboost). Основная идСя этого Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° для построСния Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π² Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ:

Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, всС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ отсортированы Π² соотвСтствии с ΠΈΡ… ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΡŽ.

Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ раздСлСния O(#data) Π‘Ρ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ поиска Π»ΡƒΡ‡ΡˆΠ΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ сСгмСнтации для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

НаконСц, послС нахоТдСния Ρ‚ΠΎΡ‡ΠΊΠΈ сСгмСнтации ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π΄Π°Π½Π½Ρ‹Π΅ Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Π½Π° Π»Π΅Π²Ρ‹ΠΉ ΠΈ ΠΏΡ€Π°Π²Ρ‹ΠΉ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠ΅ ΡƒΠ·Π»Ρ‹.

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²ΠΎ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ сортировки состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Ρ‚ΠΎΡ‡ΠΊΡƒ сСгмСнтации.

НСдостатки Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹:

Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΎΠ½ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ мСста. Π’Π°ΠΊΠΎΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ значСния ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ сортировки ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, отсортированный индСкс, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ·ΠΆΠ΅ быстро Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Ρ‚ΠΎΡ‡ΠΊΡƒ раздСлСния), для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ трСбуСтся Π²Π΄Π²ΠΎΠ΅ большС памяти ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ….

Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, Π΅ΡΡ‚ΡŒ ΠΈ большиС Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы Π²ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ раздСлСния Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ коэффициСнт усилСния раздСлСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся дорогостоящим.

НаконСц, это Π½Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ кэша. ПослС ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ сортировки доступ ΠΊ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Ρƒ являСтся ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ, ΠΈ порядок доступа ΠΊ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ функциям отличаСтся, ΠΈ кэш Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ слоС Π΄Π»ΠΈΠ½Π½ΠΎΠ³ΠΎ Π΄Π΅Ρ€Π΅Π²Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ доступ ΠΊ массиву индСксов строк ΠΊ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΌ индСксам, ΠΈ порядок доступа ΠΊ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ функциям Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡Π΅Π½, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ большой ΠΏΠΎΡ‚Π΅Ρ€Π΅ кэша.

1.4 LightGBM оптимизация

Π Π°Π·Π΄Π΅Π» ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ LightGBM Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

Π”Π°Π»Π΅Π΅ Π² основном прСдставлСны Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ гистограммы, стратСгия листового роста с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ Π³Π»ΡƒΠ±ΠΈΠ½Π΅ ΠΈ ускорСниСм разности гистограмм.

1.4.1 Алгоритм гистограммы

Основная идСя Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° гистограммы состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ сначала Π΄ΠΈΡΠΊΡ€Π΅Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½Ρ‹Π΅ собствСнныС значСния с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π² ​​k Ρ†Π΅Π»Ρ‹Ρ… чисСл, ΠΈ Π² Ρ‚ΠΎ ΠΆΠ΅ врСмя ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ гистограмму ΡˆΠΈΡ€ΠΈΠ½ΠΎΠΉ k. ΠŸΡ€ΠΈ ΠΎΠ±Ρ…ΠΎΠ΄Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, согласно дискрСтизированному Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ Π² качСствС индСкса для накоплСния статистики Π² гистограммС. ПослС ΠΎΠ΄Π½ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠ³ΠΎ ΠΎΠ±Ρ…ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… гистограмма Π½Π°ΠΊΠ°ΠΏΠ»ΠΈΠ²Π°Π΅Ρ‚ Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡƒΡŽ статистику, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊ поиску Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠ΅Π³ΠΎ Π’ΠΎΡ‡ΠΊΠ° раздСлСния.

Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π€ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost

ИспользованиС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² гистограммы ΠΈΠΌΠ΅Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ прСимущСств. ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΌ являСтся сниТСниС потрСблСния памяти: Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ гистограммы Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ сортировки, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ послС дискрСтизации свойства, ΠΈ этого значСния ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ достаточно для хранСния с 8-Π±ΠΈΡ‚Π½Ρ‹ΠΌΠΈ Ρ†Π΅Π»Ρ‹ΠΌΠΈ числами. ΠœΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΎ Π΄ΠΎ 1/8 ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π°.

Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π€ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost

Π‘Ρ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ вычислСний Ρ‚Π°ΠΊΠΆΠ΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сниТаСтся. Алгоритм ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ сортировки Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ коэффициСнт усилСния ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΡ€ΠΎΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ значСния свойства, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ гистограммы Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ k Ρ€Π°Π· (k ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ постоянной), Π° ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ опрСдСляСтся O(#data*#feature) ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ для O(k*#features) 。

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ гистограммы Π½Π΅ ΠΈΠ΄Π΅Π°Π»Π΅Π½. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ дискрСтизированы, Ρ‚ΠΎΡ‡ΠΊΠ° сСгмСнтации Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Ρ‚ΠΎΡ‡Π½Π°, поэтому это повлияСт Π½Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. Но Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ для Ρ€Π°Π·Π½Ρ‹Ρ… Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ дискрСтизированныС Ρ‚ΠΎΡ‡ΠΊΠΈ сСгмСнтации ΠΌΠ°Π»ΠΎ Π²Π»ΠΈΡΡŽΡ‚ Π½Π° ΠΊΠΎΠ½Π΅Ρ‡Π½ΡƒΡŽ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ, Π° ΠΈΠ½ΠΎΠ³Π΄Π° Π΄Π°ΠΆΠ΅ Π»ΡƒΡ‡ΡˆΠ΅.

ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π΄Π΅Ρ€Π΅Π²ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ являСтся слабой модСлью, ΠΈ Π½Π΅ слишком Π²Π°ΠΆΠ½ΠΎ, являСтся Π»ΠΈ Ρ‚ΠΎΡ‡ΠΊΠ° раздСлСния Ρ‚ΠΎΡ‡Π½ΠΎΠΉ, Π±ΠΎΠ»Π΅Π΅ толстая Ρ‚ΠΎΡ‡ΠΊΠ° раздСлСния Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ эффСкт рСгуляризации, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ эффСктивно ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π½Π°Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π΄Π°ΠΆΠ΅ Ссли ошибка обучСния ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π΄Π΅Ρ€Π΅Π²Π° Π»ΡƒΡ‡ΡˆΠ΅, Ρ‡Π΅ΠΌ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ раздСлСния Он Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ большС, Π½ΠΎ Π½Π΅ ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ большого влияния Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Gradient Boosting.

1.4.2 БтратСгия листового роста с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ Π³Π»ΡƒΠ±ΠΈΠ½Π΅

По Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ гистограммы LightGBM Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚. ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, ΠΎΠ½ отказываСтся ΠΎΡ‚ стратСгии роста Π΄Π΅Ρ€Π΅Π²Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎΠΌ инструмСнтов GBDT, ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ листовой Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ с ограничСниями ΠΏΠΎ Π³Π»ΡƒΠ±ΠΈΠ½Π΅. Π”Π°Π½Π½Ρ‹Π΅ ΠΏΠΎ уровням ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π»ΠΈΡΡ‚ΡŒΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ слоя Π² ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎ ΠΆΠ΅ врСмя. ΠœΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²ΡƒΡŽ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡŽ Π»Π΅Π³ΠΊΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ, ΠΎΠ½Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈ Π½Π΅ Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅Ρ€Π΅ΠΎΡΠ½Π°ΡΡ‚ΠΈΡ‚ΡŒ. Но Π½Π° самом Π΄Π΅Π»Π΅, Level-wise являСтся нСэффСктивным Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π»ΠΈΡΡ‚ΡŒΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ слоя Π±Π΅Π· Ρ€Π°Π·Π±ΠΎΡ€Π°, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ большим Π½Π΅Π½ΡƒΠΆΠ½Ρ‹ΠΌ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹ΠΌ расходам, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½Π° самом Π΄Π΅Π»Π΅ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π»ΠΈΡΡ‚ΡŒΡ ΠΈΠΌΠ΅ΡŽΡ‚ Π½ΠΈΠ·ΠΊΠΈΠΉ коэффициСнт раздСлСния ΠΈ поиск Π½Π΅ трСбуСтся. И Ρ€Π°ΡΠΊΠΎΠ»ΠΎΡ‚ΡŒ.

Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π€ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost

Пошаговая схСма являСтся Π±ΠΎΠ»Π΅Π΅ эффСктивной стратСгиСй, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΈΠ· всСх Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ… Π»ΠΈΡΡ‚ΡŒΠ΅Π² Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ Ρ‚Ρƒ, которая ΠΈΠΌΠ΅Π΅Ρ‚ наибольшСС усилСниС раздСлСния, Π° Π·Π°Ρ‚Π΅ΠΌ раздСляСтся ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ, ΠΏΠΎ листам ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ большС ошибок ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π»ΡƒΡ‡ΡˆΡƒΡŽ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΌ количСствС Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠΉ. НСдостатком Leaf-мудрости являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Ρ€Π°ΡΡ‚ΠΈΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ΅ Π΄Π΅Ρ€Π΅Π²ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΠΏΠ΅Ρ€Π΅ΠΎΡΠ½Π°Ρ‰Π΅Π½ΠΈΡŽ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, LightGBM добавляСт ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€Π΅Π΄Π΅Π» Π³Π»ΡƒΠ±ΠΈΠ½Ρ‹ Π²Ρ‹ΡˆΠ΅ листа для прСдотвращСния пСрСоснащСния ΠΏΡ€ΠΈ обСспСчСнии высокой эффСктивности.

Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π€ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost

1.4.3 УскорСниС гистограммы

Π”Ρ€ΡƒΠ³ΠΎΠΉ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ LightGBM являСтся гистограмма (гистограмма) для Π΄ΠΈΡ„Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ускорСния. Π›Π΅Π³ΠΊΠΎ наблюдаСмоС явлСниС: гистограмма листа ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π° ΠΏΠΎ Ρ€Π°Π·Π½ΠΈΡ†Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ гистограммой Π΅Π³ΠΎ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΡƒΠ·Π»Π° ΠΈ гистограммой Π΅Π³ΠΎ Π±Ρ€Π°Ρ‚Π°. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ гистограмму, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ всС Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° листС, Π½ΠΎ Ρ€Π°Π·Π½ΠΎΡΡ‚ΡŒ гистограммы Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΎΠΉΡ‚ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π΅Ρ€Π΅Π· k сСгмСнтов гистограммы. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ этот ΠΌΠ΅Ρ‚ΠΎΠ΄, послС построСния гистограммы листа LightGBM ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ гистограмму своСго родствСнного листа Π·Π° ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ, которая ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ΄Π²ΠΎΠ΅Π½Π° ΠΏΠΎ скорости.

Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost. Π€ΠΎΡ‚ΠΎ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ модСлями xgboost lightgbm ΠΈ catboost

1.4.4 ΠŸΡ€ΡΠΌΠ°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ

ВСрсия LightGBM для ΠΎΠ΄Π½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π΄Π΅Ρ‚Π°Π»Π΅ΠΉ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ оптимизация доступа ΠΊ ΠΊΡΡˆΡƒ, многопоточная оптимизация, оптимизация Ρ€Π°Π·Ρ€Π΅ΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ сводится ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ:

катСгорияАлгоритм ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ сортировкиlightGBM
ИспользованиС памяти2*#feature*#data*4Bytes*#feature*#data*1Bytes
НакоплСниС статистикиO(*#feature*#data)O(*#feature*#data)
РасчСт усилСния ΠΏΠΎ сплитуO(*#feature*#data)O(*#feature*#k)
Гистограмма плохаяN/AУскорСниС Π²Π΄Π²ΠΎΠ΅
ΠŸΡ€ΡΠΌΠ°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈN/AΠ’ 8 Ρ€Π°Π· быстрСС Π½Π° Π΄Π°Π½Π½Ρ‹Ρ… Экспо
ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ кэшаN/AНа 40% быстрСС ΠΏΠΎ Π΄Π°Π½Π½Ρ‹ΠΌ Π₯иггса
ΠŸΠΎΡˆΠ°Π³ΠΎΠ²Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π΄Π΅Ρ€Π΅Π²Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ Π³Π»ΡƒΠ±ΠΈΠ½Π΅N/AΠ‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ
1.4.5 ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Π°Ρ оптимизация LightGBM

LightGBM Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ прСимущСство ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ эффСктивного ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ°. LightGBM ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈ Π² настоящСС врСмя ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Π°Ρ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡΠΈΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…Π˜Π· Π΄Π²ΡƒΡ…

​ LightGBM ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ для ΠΎΠ±ΠΎΠΈΡ… ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *