Gradient Boosting์ ๊ฐํ ๋ฒ์
๊ฒฐ์ ํธ๋ฆฌ๋ฅผ ์ฝํ ํ์ต๊ธฐ๋ก ์ฌ์ฉํ๋ฉฐ, ์ฌ๋ฌ ๊ฐ์ ์ฝํ ๋ชจ๋ธ์ ์์ฐจ์ ์ผ๋ก ์กฐํฉํด ๊ฐ๋ ฅํ ์์ธก ๋ชจ๋ธ์ ๋ง๋ฆ
๊ธฐ์กด Gradient Boosting๋ณด๋ค ์ ํ๋, ์๋, ์์ ํจ์จ์ฑ ๋ฉด์์ ํฌ๊ฒ ํฅ์๋จ
"์ด์ ๋ชจ๋ธ์ ์ค๋ฅ๋ฅผ ๋ค์ ๋ชจ๋ธ์ด ๋ณด์" ํ๋ ๋ฐฉ์์ผ๋ก ํ์ต
ํธ๋ฆฌ1 โ ํธ๋ฆฌ2 โ ํธ๋ฆฌ3 โ ...ํผ์ฒ 1, 2, 3, 4 โ ๊ฐ ํผ์ฒ๋ณ split ํ๋ณด ๊ณ์ฐ โ ๋ณ๋ ฌ ์ํ| ํญ๋ชฉ | XGBoost์ ๊ฐ์ ์ |
|---|---|
| ํ์ต ์๋ | ํธ๋ฆฌ ๋ด๋ถ ๋ณ๋ ฌ ์ฐ์ฐ ๋์ ์ผ๋ก ์๋ ํฅ์ |
| ์ผ๋ฐํ ๋ฅ๋ ฅ | ์ ๊ทํ(term: lambda, alpha)์ ํ์ต ์ข ๋ฃ ์กฐ๊ฑด์ ๋์ ํด ๊ณผ์ ํฉ ๊ฐ์ |
| ์ํ์ ๊ฐ์ | ์์ค ํจ์์ ๋ํด 2์ฐจ ๋ฏธ๋ถ(ํค์์)๊น์ง ํ์ฉ |
| ๊ฒฐ์ธก์น ์ฒ๋ฆฌ | ์๋์ผ๋ก ๊ฒฐ์ธก๊ฐ ์ฒ๋ฆฌ ๊ฒฝ๋ก๋ฅผ ์ ํํจ |
| ์กฐ๊ธฐ ์ข ๋ฃ | ์ผ์ ์ํญ ๋์ ์ฑ๋ฅ ๊ฐ์ ์์ผ๋ฉด ํ์ต ์๋ ์ข ๋ฃ(Early Stopping) |
| ํ์ดํผํ๋ผ๋ฏธํฐ ๊ฐ์ด๋ | ์๋ ์กฐ์ ์์๋ค์ ๋ํ ๊ฐ์ด๋ ์กด์ฌ |
| ํ๋ผ๋ฏธํฐ | ์ค๋ช |
|---|---|
| n_estimators | ํธ๋ฆฌ ๊ฐ์ (๊ธฐ๋ณธ์ ์ผ๋ก ๋ง์์๋ก ์ฑ๋ฅ ์ฆ๊ฐ, ๊ณผ์ ํฉ ์ฃผ์) |
| max_depth | ํธ๋ฆฌ ์ต๋ ๊น์ด |
| learning_rate | ๊ฐ ํธ๋ฆฌ์ ๊ธฐ์ฌ ์ ๋ (์์์๋ก ํ์ต ์๋ ๋๋ฆฌ์ง๋ง ์ผ๋ฐํ ์ ๋จ) |
| subsample | ๊ฐ ํธ๋ฆฌ๋ง๋ค ์ฌ์ฉํ ์ํ ๋น์จ (๊ณผ์ ํฉ ๋ฐฉ์ง์ฉ) |
| colsample_bytree | ๊ฐ ํธ๋ฆฌ๋ง๋ค ์ฌ์ฉํ ํผ์ฒ ๋น์จ |
| lambda, alpha | ์ ๊ทํ ๊ด๋ จ (L2, L1) |
ํ๊ท(Regression), ๋ถ๋ฅ(Classification) ๋ชจ๋ ๊ฐ๋ฅ
GPU ํ์ต ์ง์
โค ์์ฒ ๊ฐ ํธ๋ฆฌ, ์๋ฐฑ๋ง ๊ฐ ์ํ์์๋ ๋น ๋ฅธ ํ์ต ๊ฐ๋ฅ
๋์ฉ๋ ๋ฐ์ดํฐ์ ์์๋ ๋ณ๋ ฌ ์ต์ ํ + ๋ฉ๋ชจ๋ฆฌ ํจ์จ์ด ๋ฐ์ด๋จ