๊ฒฐ์ ํธ๋ฆฌ(Decision Tree)โโโ
• ๊ด์ธก๊ฐ๊ณผ ๋ชฉํฏ๊ฐ์ ์ฐ๊ฒฐ์์ผ์ฃผ๋ ์์ธก ๋ชจ๋ธ, ๋๋ฌด ๋ชจ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ถ๋ฅํจ
• ์๋ง์ ํธ๋ฆฌ ๊ธฐ๋ฐ ๋ชจ๋ธ์ ๊ธฐ๋ณธ ๋ชจ๋ธ(based model)์ด ๋๋ ์ค์ ๋ชจ๋ธ
• VS ์ ํ ๋ชจ๋ธ : ์ ํ ๋ชจ๋ธ์ด ๊ฐ ๋ณ์์ ๋ํ ๊ธฐ์ธ๊ธฐ ๊ฐ๋ค์ ์ต์ ํํ์ฌ ๋ชจ๋ธ์
๋ง๋ค์ด ๋๊ฐ๋ค๋ฉด, ํธ๋ฆฌ ๋ชจ๋ธ์์๋ ๊ฐ ๋ณ์์ ํน์ ์ง์ ์ ๊ธฐ์ค์ผ๋ก ๋ฐ์ดํฐ๋ฅผ
๋ถ๋ฅ ํด๊ฐ๋ฉฐ ์์ธก ๋ชจ๋ธ์ ๋ง๋ฆ
- ์ข ์๋ณ์๊ฐ ์ฐ์ํ ๋ฐ์ดํฐ์ ๋ฒ์ฃผํ ๋ฐ์ดํฐ ๋ชจ๋์ ์ฌ์ฉํ ์ ์์
- ๋ชจ๋ธ๋ง ๊ฒฐ๊ณผ๋ฅผ ์๊ฐํํ ๋ชฉ์ ์ผ๋ก ๊ฐ์ฅ ์ ์ฉ
- ์์๋ผ์ด์ด๊ฐ ๋ฌธ์ ๋ ์ ๋๋ก ๋ง์ ๋ ์ ํ ๋ชจ๋ธ๋ณด๋ค ์ข์ ๋์์ด ๋ ์ ์๋ค.
- ๋ฐ์ดํฐ๋ฅผ ๋ฌด์ํ๊ฒ ์ชผ๊ฐ์ด ๋๊ฐ๊ณ , ๊ฐ ๊ทธ๋ฃน์ ๋ํ ์์ธก์น๋ฅผ ๋ง๋ค์ด๋ด๋ ๋ฐฉ์
ex) ๋จ์/์ฌ์๋ก ๋๋ ์ ๊ฐ ๋ชฉํฏ๊ฐ, ํ๊ท ์น๋ฅผ ๋๋
=> ๋์ด๋ฅผ 30์ธ ์ด์/๋ฏธ๋ง์ธ ๋ ๋ถ๋ฅ๋ก ๋๋ ์ ํ๊ท ์น๋ฅผ ๊ณ์ฐ
- ์์ธก๋ ฅ๊ณผ ์ฑ๋ฅ์ ๋จ์ด์ง์ง๋ง ์๊ฐํ๊ฐ ๋งค์ฐ ๋ฐ์ด๋จ
- ๋ค๋ฅธ ํธ๋ฆฌ๋ชจ๋ธ์ ์ดํดํ๊ธฐ ์ํด ํ์ํ๋ค.
๐ ์์ธก๋ ฅ & ์ค๋ช ๋ ฅ
๐ ์์ธก๋ ฅ : ๋ชจ๋ธ ํ์ต์ ํตํด ์ผ๋ง๋ ์ข์ ์์ธก์น๋ฅผ ๋ณด์ฌ์ฃผ๋๊ฐ
๐ ์ค๋ช ๋ ฅ : ํ์ต๋ ๋ชจ๋ธ์ ์ผ๋ง๋ ์ฝ๊ฒ ํด์ํ ์ ์๋์ง ์๊ณ ๋ฆฌ์ฆ์ ๋ณต์ก๋๊ฐ ์ฆ๊ฐํ ์๋ก
์์ธก๋ ฅ์ ์ข์์ง๋ ์ค๋ช ๋ ฅ์ ๋ค์ ๋จ์ด์ง๋ ๋ฐ๋น๋ก ๊ด๊ณ
์ฆ, ๋จ์ํ ์๊ณ ๋ฆฌ์ฆ์ผ์๋ก ์์ธก๋ ฅ์ด ์๋์ ์ผ๋ก ๋จ์ด์ง ์ ์์ผ๋ ํด์์ ์ฉ์ดํ๋ฉฐ,
๋ณต์กํ ์๊ณ ๋ฆฌ์ฆ์ ์์ธก๋ ฅ์ด ๋ฐ์ด๋ ๋งํผ ํด์์ ์ด๋ ค์
๐ฌ ๊ฒฐ์ ํธ๋ฆฌ์ ํ๊ท ๋ถ์์ ์๋์ ์ผ๋ก ํด์์ด ์ฌ์ ์ค๋ช ๋ ฅ์ด ๋๋ค๊ณ ํ ์ ์์ผ๋ฉฐ,
์ดํ ๋ฐฐ์ธ ์๊ณ ๋ฆฌ์ฆ๋ค์ ๋ณต์ก๋๊ฐ ์ฆ๊ฐํ์ฌ ์์ธก๋ ฅ์ด ๋์ง๋ง ํด์์ด ์ด๋ ต๋ค
๋ฅ๋ฌ๋ ๋ํ ๋งค์ฐ ๋ณต์กํ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ํด์์ด ์ด๋ ค์์ ์ด๋ฅผ ๋ธ๋๋ฐ์ค์ ๋น์ ํ๊ธฐ๋ ํ๋ค,
๐ฌ ์ํ๊ณ์ด์์ ํน์ง ์ง๋ณ์ ๋ฐ๋ณ๋ฅ ์ ๋ํ ์์ธก ๋ชจ๋ธ์ ๋ง๋ค ๋๋, ๋ฐ๋ณ๋ฅ ์
๋์ด๊ฑฐ๋ ์ต์ ํ๋ ์ค์ํ ์์ธ์ ๋ฐํ๋ ๋ฐ๋ ์ค๋ช ๋ ฅ์ด ์ข์ ์๊ณ ๋ฆฌ์ฆ์ด ์ ํฉํ ์ ์๊ณ ,
์ฌ๊ธฐ๊ฑฐ๋๋ฅผ ์์ธกํ๋ ๋ชจ๋ธ์์๋ ์์ธ๋ณด๋ค๋ ๋ ์ ํํ๊ฒ ์ฌ๊ธฐ๊ฑฐ๋๋ฅผ ์ก์๋ผ ์ ์์ด์ผ ํ๋ฏ๋ก
์์ธก๋ ฅ์ด ๋์ ์๊ณ ๋ฆฌ์ฆ์ด ๋ ์ ํฉํ๋ค... ๋ฐ๋ผ์ ์ํฉ์ ๋ฐ๋ผ ์ฐ์ ์ํ ๊ฒ์ด ๋ค๋ฅด๋ค๊ณ ๋ณผ ์ ์๋ค.
๐ช์ฅ์
• ๋ฐ์ดํฐ์ ๋ํ ๊ฐ์ ์ด ์๋๋ชจ๋ธ( Nonparametric Model)
(VS ์ ํํ๊ท)
• ์์๋ผ์ด์ด์ ์ํฅ์ ๊ฑฐ์ ๋ฐ์ง ์์
• ํธ๋ฆฌ ๊ทธ๋ํ๋ฅผ ํตํด์ ์ง๊ด์ ์ผ๋ก ์ดํด & ์ค๋ช ๊ฐ๋ฅ
=> ์๊ฐํ์ ๋งค์ฐ ์ข์
๐ฉธ ๋จ์
• ํธ๋ฆฌ๊ฐ ๋ฌดํ์ ๊น์ด์ง๋ฉด ์คํผ ํผํ ๋ฌธ์ ๋ฅผ ์ผ๊ธฐ
๐ ์ค๋ฒ ํผํ ??? : ์ํ ๋ฐ์ดํฐ์ ๋๋ฌด ์ ํํ๊ฒ ํ์ต์ด ๋์๊ธฐ ๋๋ฌธ์, ์ํ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ํ๋จ์ ํ๋ฉด 100%์ ๊ฐ๊น์ด ์ ํ๋๋ฅผ ๋ณด์ด์ง๋ง ๋ค๋ฅธ ๋ฐ์ดํ๋ฅผ ๋ฃ๊ฒ ๋๋ฉด, ์ ํ๋๊ฐ ๊ธ๊ฒฉํ๊ฒ ๋จ์ด์ง๋ ๋ฌธ์ ์ด๋ค.
• ๋ฐ์ ๋ ํธ๋ฆฌ ๊ธฐ๋ฐ ๋ชจ๋ธ๋ค์ ๋นํด ์์ธก๋ ฅ์ด ๋งค์ฐ ๋จ์ด์ง
๐ฒ ๊ฒฐ์ ํธ๋ฆฌ ๊ณผ์
์์ ์ค๋ช ๋ค์ ์ฐธ๊ณ ํ์ฌ
๋ฐ์ดํฐ๋ฅผ ๋ถ์ => ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ => ๋ชจ๋ธ๋ง => ํ๊ฐ(๊น์ด๋ฅผ ์ ๋นํ ์ค์ ํ์ฌ ์ค๋ฒ ํผํ ๋ฐฉ์ง)
๐ ์๊ฐํ ๊ฒฐ๊ณผ ๋์ถ
๋ผ์ด๋ธ๋ฌ๋ฆฌ : from sklearn.tree import plot_tree
plt.figure(figsize=( ? , ? ) <= ๊ทธ๋ํ ํฌ๊ธฐ ์ค์
plot_tree(model, max_depth= ๊น์ด๊ฐ ์ค์ , fontsize= ๊ธ์ํฌ๊ธฐ)
plt.show( )
'ํ๋ฃจ๊ณต๋ถ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๐ฉ์ฌ๋ฏธ๋ก ์ฌ๋ฆฌ๋ ์์ด๋ณด Data Analysis(๋ฐ์ดํฐ ๋ถ์) ์ฌ์ด ์์ (0) | 2022.11.16 |
---|---|
์ 21์ฅ๐ML_RandomForest๐ (0) | 2022.11.15 |
์ 19์ฅ๐ML_Naive Bayes๐ (0) | 2022.11.11 |
์ 18์ฅ๐Machine Learning_ML๐ (0) | 2022.11.10 |
๐ML_KNN_์๊ณ ๋ฆฌ์ฆ๐ฉ (0) | 2022.11.09 |