๋ถ์คํ ์ ์ฝํ ํ์ต๊ธฐ๋ฅผ ์ฌ๋ฌ ๊ฐ ์ฐ๊ฒฐํ์ฌ ๊ฐํ ํ์ต๊ธฐ๋ฅผ ๋ง๋๋ ์์๋ธ ๋ฐฉ๋ฒ์ด๋ค. ๋ถ์คํ ๋ฐฉ๋ฒ ์ค ๊ฐ์ฅ ์ ๋ช ํ ๊ฒ์ ์์ด๋ค๋ถ์คํ ๊ณผ ๊ทธ๋๋์ธํธ ๋ถ์คํ (XGBoost, LightGBM)์ด๋ค.
์์ด๋ค๋ถ์คํธ
์ด์ ์์ธก๊ธฐ๋ฅผ ๋ณด์ํ๋ ๋ฐฉ์์ ์ด์ ๋ชจ๋ธ์ด ๊ณผ์์ ํฉํ๋ ํ๋ จ์ํ์ ๊ฐ์ค์น๋ฅผ ๋ ๋์ด๋ ๊ฒ์ด๋ค. ์ด๋ ๊ฒ ํ๋ฉด ์๋ก์ด ์์ธก๊ธฐ๋ ์ด์ ์ ํ์ต์ด ์ ์๋๋ ์ํ์ ๋ ๋ง์ถฐ์ง๊ฒ ๋๋ค. ์์ด๋ค๋ถ์คํธ๋ ์ด ๋ฐฉ์์ ์ฌ์ฉํ๋ค.
์๋ฅผ ๋ค์ด ์์ด๋ค๋ถ์คํธ ๋ถ๋ฅ๊ธฐ๋ฅผ ๋ง๋ค ๋๋ ๋จผ์ ์๊ณ ๋ฆฌ์ฆ์ ๊ธฐ๋ฐ์ด ๋๋ ์ฒซ ๋ฒ์งธ ๋ถ๋ฅ๊ธฐ(์; ๊ฒฐ์ ํธ๋ฆฌ)๋ฅผ ํ๋ จ์ธํธ์์ ํ๋ จ์ํค๊ณ ์์ธก์ ๋ง๋ ๋ค. ๊ทธ ๋ค์์ ์๊ณ ๋ฆฌ์ฆ์ด ์ฅ๋ชป ๋ถ๋ฅํ ํ๋ จ์ํ์ ๊ฐ์ค์น๋ฅผ ์๋์ ์ผ๋ก ๋์ธ๋ค. ๋ ๋ฒ์งธ ๋ถ๋ฅ๊ธฐ๋ ์ ๋ฐ์ดํธ๋จ ๊ฐ์ค์น๋ก ํ๋ จ์ธํธ์์ ํ๋ จํ๊ณ ๋ค์ ์์ธกํ๋ค. ๋ ๊ฐ์ค์น๋ฅผ ์ ๋ฐ์ดํธํ๋ค...๋ฐ๋ณต...
์ง์ ๋ ์์ธก๊ธฐ ์์ ๋๋ฌํ๊ฑฐ๋ ์๋ฒฝํ ์์ธก๊ธฐ๊ฐ ๋ง๋ค์ด์ง๋ฉด ์ค์ง๋๋ค.
์ฌ์ดํท๋ฐ์ AdaBoostRegressor, AdaBoostClassifier๋ฅผ ์ฌ์ฉํ๋ค.
๊ทธ๋๋์ธํธ ๋ถ์คํ
์์ด๋ค๋ถ์คํธ์ฒ๋ผ ์์๋ธ์ ์ด์ ๊น์ง ์ค์ฐจ๋ฅผ ๋ณด์ ํ๋๋ก ๋ก์ธก๊ธฐ๋ฅผ ์์ฐจ์ ์ผ๋ก ์ถ๊ฐํ์ง๋ง, ์ํ์ ๊ฐ์ค์น๋ฅผ ์ ๋ฐ์ดํธํ๋ ์์ด๋ค๋ถ์คํธ์ ๋ฌ๋ฆฌ ์ด์ ์์ธก๊ธฐ๊ฐ ๋ง๋ ์์ฌ ์ค์ฐจ(residual error)์ ์๋ก์ด ์์ธก๊ธฐ๋ฅผ ํ์ต์ํจ๋ค.
์ฌ์ดํท๋ฐ์ GradientboostingRegressor, GradientboostingClassifier
XGBoost
์ต์ ํ๋ ๊ทธ๋๋์ธํธ ๋ถ์คํ , ์๋ ์กฐ๊ธฐ ์ข ๋ฃ ์ต์ ๋ ์ค์ ํ ์ ์๋ค.
import xgboost
xg_reg=xgboost.XGBRegressor()
xg_reg.fit(X_train, y_train, eval_set=[(X_val, y_val)], early_stopping_rounds=2)
y_pred = xg_reg.predict(X_val)
'๋จธ์ ๋ฌ๋' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์์๋ธํ์ต๊ณผ ๋ฐฐ๊น (0) | 2022.12.09 |
---|---|
python numpy, pandas ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋, ์ฐจ์ด (0) | 2022.12.08 |
๋น์ง๋ํ์ต - ๊ตฐ์ง, k-means, ์ค๋ฃจ์ฃ์ ์ ์ฌ์ดํท๋ฐ (0) | 2022.12.07 |
๋จธ์ ๋ฌ๋ ๋ถ๋ฅ ์ฑ๋ฅ ์ธก์ (0) | 2022.12.06 |
์ฐจ์ ์ถ์, PCA python ์ฌ์ดํท๋ฐ (0) | 2022.12.05 |