์ฌ์ฌ๋ฆ LG Aimers 5๊ธฐ '๊ธ์ต ๋ฐ์ดํฐ ์ด์ ๊ฑฐ๋ ํ์ง(FDS)' ๋ํ์ ์ฐธ์ฌํ์ต๋๋ค. ์ ์ฒด ๋ฐ์ดํฐ์ 1%๋ ์ ๋๋ ์ด์ ๊ฑฐ๋๋ฅผ ์ฐพ์๋ด์ผ ํ๋, ๊ทน์ฌํ ํด๋์ค ๋ถ๊ท ํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๊ฒ์ด ํต์ฌ์ด์์ต๋๋ค. ์ด ๊ธ์ 1,400๋ช ์ค ์์ 5.5%๋ฅผ ๋ฌ์ฑํ๊ธฐ๊น์ง์ ๊ธฐ์ ์ ๊ฒฐ์ ๊ณผ ๊ทธ ๊ณผ์ ์ ๊ธฐ๋กํ ํ๊ณ ์ ๋๋ค.
1. ๋ฌธ์ ์ ์ ๋ฐ ์ ๊ทผ ์ ๋ต
ํ๊ฐ์งํ๋ F1-Score์๋ค. ๋ชจ๋ ์์ธก์ '์ ์'์ผ๋ก๋ง ํด๋ 99% ์ ํ๋๊ฐ ๋์ค๋ ์ํฉ์์, Accuracy์ ํจ์ ์ ํผํ๊ณ ์์ ํด๋์ค(์ด์ ๊ฑฐ๋) ํ์ง ์ฑ๋ฅ์ ๋์ด๋ ๊ฒ์ด ๊ด๊ฑด์ด์์ต๋๋ค. ์ด๋ฅผ ์ํด ๋ค์๊ณผ ๊ฐ์ ํ์ดํ๋ผ์ธ์ ์ค๊ณํ์ต๋๋ค.
- ๋ฐ์ดํฐ ํ์(EDA) ๋ฐ ์ ์ฒ๋ฆฌ - ํด๋์ค ๋ถ๊ท ํ ์ฒ๋ฆฌ (Sampling) - ๊ฐ๋ณ ๋ชจ๋ธ ํ์ต - ์์๋ธ์ ํตํ ์ฑ๋ฅ ๊ทน๋ํ
2. ํต์ฌ ๊ธฐ์ ๊ณผ ์ฝ๋ ๋ถ์
2.1. ๋ถ๊ท ํ ๋ฐ์ดํฐ ์ฒ๋ฆฌ: ์ SMOTE-ENN์ธ๊ฐ?
๋จ์ Oversampling์ ๊ณผ์ ํฉ, Undersampling์ ์ ๋ณด ์์ค์ ๋ฆฌ์คํฌ๊ฐ ์์ต๋๋ค. SMOTE-ENN์ ์ด ๋ ๋ฐฉ์์ ๋จ์ ์ ๋ณด์ํ๋ ํ์ด๋ธ๋ฆฌ๋ ์ํ๋ง ๊ธฐ๋ฒ์ด๋ผ ์ ํํ์ต๋๋ค.
- SMOTE (Oversampling): ์์ ํด๋์ค์ ํน์ง์ ํ์ตํด ์ ์ฌํ ํฉ์ฑ ๋ฐ์ดํฐ๋ฅผ ์์ฑ, ๋ชจ๋ธ์ด ์ด์ ๊ฑฐ๋ ํจํด์ ํ์ตํ ๊ธฐํ๋ฅผ ๋๋ฆฐ๋ค. - ENN (Undersampling): ๋ค์ ํด๋์ค ์ค ํด๋์ค ๊ฒฝ๊ณ์ ๋ ธ์ด์ฆ ๋ฐ์ดํฐ๋ฅผ ์ ๊ฑฐ, ๋ชจ๋ธ์ด ๋ ๋ช ํํ ๊ฒฐ์ ๊ฒฝ๊ณ๋ฅผ ํ์ตํ๋๋ก ๋๋๋ค.
์ด ์กฐํฉ์ F1-Score์ ๊ตฌ์ฑ์์์ธ ์ ๋ฐ๋(Precision)์ ์ฌํ์จ(Recall)์ ๊ท ํ ์๊ฒ ๊ฐ์ ํ๋ ๋ฐ ํจ๊ณผ์ ์ด์์ต๋๋ค.
2.2. Stacking ์์๋ธ: ๋ ๋๋ํ๊ฒ ์์ธก ๊ฒฐํฉํ๊ธฐ
๋จ์ผ ๋ชจ๋ธ์ ํ๊ณ๋ฅผ ๋๊ธฐ ์ํด ์คํํน(Stacking) ์์๋ธ์ ๊ตฌ์ถํ์ต๋๋ค. ์ผ๋ฐ์ ์ธ Averaging ๋ฐฉ์๊ณผ ๋ฌ๋ฆฌ, ์คํํน์ '์ด๋ค ๋ชจ๋ธ์ ์์ธก์ ๋ ์ ๋ขฐํ ์ง'๋ฅผ ํ์ตํ๋ ๋ฉํ ๋ชจ๋ธ(Meta-Model)์ ์ฌ์ฉํ์ต๋๋ค.
- Base Models (1๋จ๊ณ): ๊ทธ๋๋์ธํธ ๋ถ์คํ ๊ณ์ด์ LGBM, XGBoost, CatBoost๋ฅผ ์ฌ์ฉํ๋ค. ์ธ ๋ชจ๋ธ์ ๊ฐ๊ฐ ๋ฆฌํ ์ค์ฌ/๋ ๋ฒจ ์ค์ฌ ์ฑ์ฅ, ๋ฒ์ฃผํ ๋ณ์ ์ฒ๋ฆฌ ๋ฑ ํ์ต ๋ฐฉ์์ ์ฐจ์ด๊ฐ ์์ด, ์๋ก ๋ค๋ฅธ ๊ด์ ์ ์์ธก์ ์์ฑํ๋ค. ์ด '๋ค์์ฑ'์ด ์์๋ธ ์ฑ๋ฅ์ ํต์ฌ์ด๋ค. - Meta-Model (2๋จ๊ณ): Base Model๋ค์ ์์ธก๊ฐ์ ์ ๋ ฅ๋ฐ์ ์ต์ข ์์ธก์ ์ํํ๋ค. ๊ณผ์ ํฉ ๋ฐฉ์ง๋ฅผ ์ํด ๋ณดํต Logistic Regression ๊ฐ์ ๋จ์ํ ๋ชจ๋ธ์ ์ฌ์ฉํ๋ค.
๋ฐ์ดํฐ ๋ถํฌ์ ๋ฆฌ์ํ๋ง(์์ ์์น)
- ์๋ณธ ํด๋์ค ๋ถํฌ: ์ ์ ์ฝ 99,000๊ฑด, ์ด์ ์ฝ 1,000๊ฑด (์ด์ ๋น์จ โ 1.0%) - SMOTE-ENN ์ ์ฉ ํ: ์ ์ ์ฝ 98,500๊ฑด, ์ด์ ์ฝ 9,980๊ฑด (๋ถ๊ท ํ ์ํ) - ๊ฒ์ฆ ์ค์ : Stratified K-Fold, k=5. ๋ฉํ ๋ชจ๋ธ์ OOF ์์ธก์ ์ ๋ ฅ์ผ๋ก ํ์ตํ์ฌ ๋ฐ์ดํฐ ๋์๋ฅผ ๋ฐฉ์ง
3. ๊ฒฐ๊ณผ ๋ฐ ํ๊ณ : ์์ฌ์ ์์์ ์ป์ ๊ตํ
์ต์ข ์ ์ผ๋ก 1,400๋ช ์ ์ฐธ๊ฐ์ ์ค ์์ 5.5%๋ผ๋ ๋์์ง ์์ ์ฑ์ ์ ๊ฑฐ๋ ์ ์์์ต๋๋ค. ๋๊ท๋ชจ ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ๋ถํฐ ํ์ดํผํ๋ผ๋ฏธํฐ ํ๋, ๋ชจ๋ธ ์ต์ ํ๊น์ง ์ค์ ๋จธ์ ๋ฌ๋ ํ๋ก์ ํธ์ ์ ๊ณผ์ ์ ์์ถ์ ์ผ๋ก ๊ฒฝํํ๋ฉฐ ์ค๋ฌด ์ญ๋์ ํ ๋จ๊ณ ๋์ด์ฌ๋ฆด ์ ์์์ต๋๋ค.
ํ์ง๋ง ์์งํ ์์ฌ์์ด ๋ ํฌ๋ค. ๊ฐ๋ฐ์ ์ฐจ์ด๋ก ๋ณธ์ ์ง์ถ์ ๊ธฐํ๋ฅผ ๋์ณค๊ธฐ ๋๋ฌธ์ด๋ค. ๋ํ๊ฐ ๋๋ ํ ๋ณต๊ธฐํด๋ณด๋, ๋ค์๊ณผ ๊ฐ์ ์ ๋ค์ด ๋ถ์กฑํ๋ค๋ ๊ฒ์ ๊นจ๋ฌ์์ต๋๋ค.
- ํผ์ฒ ์์ง๋์ด๋ง์ ๋ถ์ฌ: ์ฃผ์ด์ง ํผ์ฒ๋ฅผ ํ์ฉํ๋ ๋ฐ ๊ธ๊ธํด, ๋ณ์ ๊ฐ์ ๊ด๊ณ๋ฅผ ๋ถ์ํ๊ณ ์๋ก์ด ํผ์ฒ๋ฅผ ์์ฑํ๋ ๋ฐ๋ ์ํํ๋ค.
- ์คํ ๊ด๋ฆฌ์ ์ค์์ฑ: ๋ค์ํ ํ์ดํผํ๋ผ๋ฏธํฐ ์กฐํฉ๊ณผ ๋ชจ๋ธ ๊ตฌ์กฐ๋ฅผ ์๋ํ์ง๋ง, ๋ชจ๋ ์คํ ๊ณผ์ ์ ์ฒด๊ณ์ ์ผ๋ก ๊ธฐ๋กํ๊ณ ๊ด๋ฆฌํ์ง ๋ชปํด ์ต์ ์ ์กฐํฉ์ ์ฐพ๋ ๋ฐ ๋นํจ์จ์ ์ธ ๋ถ๋ถ์ด ์์๋ค.
- ์๊ฐ ๋ถ๋ฐฐ์ ์คํจ: ์ด๋ฐ ๋ฐ์ดํฐ ํ์ ๋ฐ ์ ์ฒ๋ฆฌ์ ๋๋ฌด ๋ง์ ์๊ฐ์ ํ ์ ํ์ฌ, ํ๋ฐ๋ถ ๋ชจ๋ธ ํ๋๊ณผ ์์๋ธ ์ ๋ต ๊ณ ๋ํ์ ์ธ ์๊ฐ์ด ๋ถ์กฑํ๋ค.
4. ์์ผ๋ก์ ๊ณํ
- ํผ์ฒ ์์ง๋์ด๋ง ์ฌํ ํ์ต: ๋๋ฉ์ธ ์ง์์ ํ์ฉํ ์ฐฝ์์ ์ธ ํผ์ฒ ์์ฑ ๋ฅ๋ ฅ์ ๊ธฐ๋ฅด๊ฒ ๋ค.
- MLOps ๊ธฐ์ด ๋ค์ง๊ธฐ: MLflow ๊ฐ์ ๋๊ตฌ๋ฅผ ํ์ฉํ์ฌ ์คํ ๊ณผ์ ์ ์ฒด๊ณ์ ์ผ๋ก ๊ด๋ฆฌํ๊ณ ์ฌํ์ฑ์ ๋์ด๋ ํ๋ จ์ ํ๊ฒ ๋ค.
- ๋ค์ํ ๋ํ ์ฐธ์ฌ: Kaggle, DACON ๋ฑ ๋ค๋ฅธ ๊ฒฝ์ง๋ํ์ ๊พธ์คํ ์ฐธ์ฌํ๋ฉฐ ์ค์ ๊ฐ๊ฐ์ ์ ์งํ๊ณ ์๋ก์ด ๊ธฐ๋ฒ๋ค์ ์ตํ๊ฒ ๋ค.
๋ง์น๋ฉฐ
๋น๋ก ๋ชฉํํ๋ ๋ณธ์ ์ง์ถ์๋ ์คํจํ์ง๋ง, ์น์ดํ๊ฒ ๊ณ ๋ฏผํ๋ ์๊ฐ๋ค์ ๋จธ์ ๋ฌ๋ ์ญ๋์ ๋จ๋จํ ๋ฐ๊ฑฐ๋ฆ์ด ๋์ด์ค ๊ฒ์ด๋ผ ํ์ ํฉ๋๋ค.