๐๐๐ก๐๐๐๐๐
์ต๊ทผ์ ์ด์ ๋ณธ๋ฌธ
[ ๋ชฉ์ฐจ ]
์ต๊ทผ์ ์ด์ ์๊ณ ๋ฆฌ์ฆ (KNN)
: ์ฃผ๋ณ์ ๋ฐ์ดํฐ๋ฅผ ๋ณด๊ณ ๋ด๊ฐ ์๊ณ ์ถ์ ๋ฐ์ดํฐ๋ฅผ ์์ธกํ๋ ๋ฐฉ์
- k=3 ์ด๋ผ๋ฉด ๋ณ 1๊ฐ์ ์ธ๋ชจ 2๊ฐ์ด๋ฏ๋ก ? ๋ ์ธ๋ชจ๋ก ์์ธก๋ ๊ฒ
- k=7 ์ด๋ผ๋ฉด ๋ณ 4๊ฐ์ ์ธ๋ชจ 3๊ฐ์ด๋ฏ๋ก ? ๋ ๋ณ๋ก ์์ธก๋ ๊ฒ
โ๏ธ ์์ ๊ฐ์ด ํ์ผํ ์ฃผ๋ณ ๋ฐ์ดํฐ k๊ฐ๋ฅผ ์ ์ ํ์ ๊ฑฐ๋ฆฌ ๊ธฐ์ค์ผ๋ก ๊ฐ์ฅ ๋ง์ ๊ฒ์ผ๋ก ์์ธกํ๋ ๊ฒ์ด ๋ฐ๋ก knn์ ๊ธฐ๋ณธ ์๋ฆฌ์ด๋ค ๊ทธ๋ผ k๋ ๋ช์ผ๋ก ์ ํด์ผ ํ๋ ๊ฑธ๊น? ๋ ๊ฑฐ๋ฆฌ๋ ์ด๋ป๊ฒ ์ธก์ ํด์ผ ํ๋ ๊ฒ์ผ๊น?
ํ์ดํผ ํ์ด๋ฏธํฐ์ ๊ฐ๋
- ํ๋ผ๋ฏธํฐ(Parameter): ๋จธ์ ๋ฌ๋ ๋ชจ๋ธ์ด ํ์ต ๊ณผ์ ์์ ์ถ์ ํ๋ ๋ด๋ถ ๋ณ์์ด๋ฉฐ ์๋์ผ๋ก ๊ฒฐ์ ๋๋ ๊ฐ
- ex) ์ ํํ๊ท์์ ๊ฐ์ค์น์ ํธํฅ
- Python์์๋ ํจ์ ์ ์์์ ํจ์๊ฐ ๋ฐ์ ์ ์๋ ์ธ์(์ ๋ ฅ ๊ฐ)๋ฅผ ์ง์ ํ๋ ๊ฐ๋
- ํ์ดํผ ํ๋ผ๋ฏธํฐ(Hyper parameter): ๋ฐ์ดํฐ ๊ณผํ์๊ฐ ๊ธฐ๊ณ ํ์ต ๋ชจ๋ธ ํ๋ จ์ ๊ด๋ฆฌํ๋๋ฐ ์ฌ์ฉํ๋ ์ธ๋ถ ๊ตฌ์ฑ๋ณ์์ด๋ฉฐ ๋ชจ๋ธ ํ์ต๊ณผ์ ์ด๋ ๊ตฌ์กฐ์ ์ํฅ์ ๋ฏธ์นจ
์ฌ๊ธฐ์ Data Science ํ๋ฌธ๊ณผ ์ฐ๊ด๋๋ ๊ฒ์ด ๋ฐ๋ก ํ์ดํผ ํ๋ผ๋ฏธํฐ์ด๋ค
๊ทผ๋์ ๋จธ์ ๋ฌ๋ ๋ชจ๋ธ์ ์ ํ์ฑ๊ณผ ๋์์ ๋ณต์ก์ฑ์ด ์ฆ๊ฐํด์, ์ ์ข์ ๊ฒฐ๊ณผ๊ฐ ๋์๋์ง ๊ทธ ์๋ฆฌ๋ ์ ํํ๊ฒ ํ์ ํ์ง ๋ชปํ๋ ๊ฒฝ์ฐ๊ฐ ์๊ธฐ๊ฑฐ๋ ์. ์ด๋ ๋ชจ๋ธ์ ํ์ดํผ ํ๋ผ๋ฏธํฐ ๋ณ์๋ฅผ ๋ฐ๊พธ๋ฉด์ ์ข์ ํ๊ฐ ์งํ๊ฐ ๋์ฌ ๋๊น์ง ์คํํ๊ณ ์๋ฆฌ๋ฅผ ๋ฐํ๋ด๋ ๊ฒ์ด ๋ฐ๋ก ๋ฐ์ดํฐ ์ฌ์ด์ธ์ค์ ๊ธฐ๋ฐ์ด๊ณ ๊ณผํ์ด๋ผ๋ ๋จ์ด๊ฐ ๋ถ์ ์ด์ ์ด๋ค
๊ฑฐ๋ฆฌ์ ๊ฐ๋
- 2์ฐจ์ ๊ทธ๋ํ์์ ๋ ์ ์ ๊ฑฐ๋ฆฌ๋ฅผ ์ค์ ํ๋ ๊ฒ์ ์ฌ์ ๋ณด์ธ๋ค ( ์ง์ ์ ๊ฑฐ๋ฆฌ๋ฅด ๊ตฌํ๋ฉด ๋๊ธฐ ๋๋ฌธ)
- ์ฐ๋ฆฌ๋ ๋ ์ ์ ์ขํ๊ฐ ์ฃผ์ด์ง๋ฉด ํผํ๊ณ ๋ผ์ค์ ์ ๋ฆฌ๋ฅผ ๊ตฌํ ์ ์๋ค โก๏ธ ์ ํด๋ฆฌ๋ ๊ฑฐ๋ฆฌ(Euclidean Distance)
- ๊ทธ ์ธ์๋ ๋งจํดํผ ๊ฑฐ๋ฆฌ ๋ฑ ๋ค์ํ ๊ฑฐ๋ฆฌ ๊ณ์ฐ ๋ฐฉ๋ฒ์ด ์๋ค ๊ฑฐ๋ฆฌ ๊ฐ๋ ์ ๋ฐ์ดํฐ๊ฐ์ ์ ์ฌ๋๋ฅผ ์ธก์ ํ ๋ ์์ฃผ ๋ฑ์ฅํ๋ ๊ฐ๋ ์ด๋ ํ๋ฒ ์ดํดํด๋ณด๋ ๊ฑธ๋ก !
- ์ ํด๋ฆฌ๋ ๊ฑฐ๋ฆฌ ๊ณต์
ํ์คํ๋ ํ์ โผ๏ธ
๊ธฐ๋ณธ์ ์ผ๋ก ๊ฑฐ๋ฆฌ ๊ธฐ๋ฐ์ ์๊ณ ๋ฆฌ์ฆ์ด๊ธฐ ๋๋ฌธ์ ๋จ์์ ์ํฅ์ ํฌ๊ฒ ๋ฐ๋๋ค
๋ฐ๋ผ์ ํผ์ฒ์ ๋ํ ํ์คํ๊ฐ ๋ฐ๋์ ์๋ฐ๋์ด์ผ ํ๋ค
์ด ๋ถ๋ถ์ ๋ฐ์ดํฐ๋ถ์ ํ๋ก์ธ์ค - ์ค์ผ์ผ๋ง ๋ถ๋ถ ์ฐธ๊ณ
knn ๋ชจ๋ธ์ ์ ๋ฆฌ
- ์ฅ์
- ์ดํดํ๊ธฐ ์ฝ๊ณ ์ง๊ด์
- ๋ชจ์ง๋จ์ ๊ฐ์ ์ด๋ ํํ๋ฅผ ๊ณ ๋ คํ์ง ์์
- ํ๊ท, ๋ถ๋ฅ ๋ชจ๋ ๊ฐ๋ฅ
- ๋จ์
- ์ฐจ์ ์๊ฐ ๋ง์ ์๋ก ๊ณ์ฐ๋์ด ๋ง์์ง
- ๊ฑฐ๋ฆฌ ๊ธฐ๋ฐ์ ์๊ณ ๋ฆฌ์ฆ์ด๊ธฐ ๋๋ฌธ์ ํผ์ฒ์ ํ์คํ๊ฐ ํ์ํจ
- Python ๋ผ์ด๋ธ๋ฌ๋ฆฌ
- sklearn.neighbors.KNeighborsClassifier
- sklearn.neighbors.KNeighborsRegressor
๋ถ์คํ ์๊ณ ๋ฆฌ์ฆ ์ด๋ก
: ์ฌ๋ฌ ๊ฐ์ ์ฝํ ํ์ต๊ธฐ (weak learner)๋ฅผ ์์ฐจ์ ์ผ๋ก ํ์ตํ๋ฉด์ ์๋ชป ์์ธกํ ๋ฐ์ดํฐ์ ๊ฐ์ค์น๋ฅผ ๋ถ์ฌํ์ฌ ์ค๋ฅ๋ฅผ ๊ฐ์ ํด๋๊ฐ๋ ํ์ต ๋ฐฉ์์ด๋ค
- ๋นจ๊ฐ์๊ณผ ์ด๋ก์์ ๋ถ๋ฅํ๋ ๋ฌธ์ ์ ๊ฒฝ์ฐ 1๊ฐ์ ์ (learner)์ผ๋ก ๊ตฌ๋ณ๋์ง ์๋ ๊ฒฝ์ฐ๊ฐ ์๋ค
- ์ด๋ฅผ ํตํด ์ฌ๋ฌ ๊ฐ์ learner๋ฅผ ํฉ์น ensemble์ ํตํด ์ฑ๋ฅ์ ์ฌ๋ฆฌ๋ ๋ฐฉ๋ฒ์ด๋ค
- ๋ถ์คํ
์๊ณ ๋ฆฌ์ฆ ์ข
๋ฅ
- Gradient Boosting Model
- ํน์ง
- ๊ฐ์ค์น ์ ๋ฐ์ดํธ๋ฅผ ๊ฒฝ์ฌํ๊ฐ๋ฒ ๋ฐฉ๋ฒ์ ํตํด ์งํ
- Python ๋ผ์ด๋ธ๋ฌ๋ฆฌ
- sklearn.ensemble.GradientBoostingClassifier
- sklearn.ensemble.GradientBoostingRegressor
- ํน์ง
- XGBoost
- ํน์ง
- ํธ๋ฆฌ๊ธฐ๋ฐ ์์๋ธ ๊ธฐ๋ฒ์ผ๋ก, ๊ฐ์ฅ ๊ฐ๊ด๋ฐ์ผ๋ฉฐ Kaggle์ ์์ ์๊ณ ๋ฆฌ์ฆ
- ๋ณ๋ ฌํ์ต์ด ๊ฐ๋ฅํด ์๋๊ฐ ๋น ๋ฆ
- Python ๋ผ์ด๋ธ๋ฌ๋ฆฌ
- xgboost.XGBRegressor
- xgboost.XGBRegressor
- ํน์ง
- LightGBM
- ํน์ง
- XGBoost์ ํจ๊ป ๊ฐ์ฅ ๊ฐ๊ด๋ฐ๋ ์๊ณ ๋ฆฌ์ฆ
- XGBoost๋ณด๋ค ํ์ต์๊ฐ์ด ์งง๊ณ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋์ด ์์
- ์์ ๋ฐ์ดํฐ(10,000๊ฑด ์ดํ)์ ๊ฒฝ์ฐ ๊ณผ์ ํฉ ๋ฐ์
- Python ๋ผ์ด๋ธ๋ฌ๋ฆฌ
- lightgbm.LGBMClassifier
- lightgbm.LGBMRegressor
- ํน์ง
- Gradient Boosting Model
'๋จธ์ ๋ฌ๋ ๐ฆพ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๊ตฐ์งํ๊ฐ ์งํ (0) | 2025.01.24 |
---|---|
๋น์ง๋ ํ์ต (0) | 2025.01.23 |
์์ฌ๊ฒฐ์ ๋๋ฌด, ๋๋ค ํฌ๋ ์คํธ (0) | 2025.01.21 |
๋ก์ง์คํฑ ํ๊ท (0) | 2025.01.20 |
์ ํํ๊ท (0) | 2025.01.17 |