What is Decesion Tree?
Decision Tree๋ ํน์ ์กฐ๊ฑด์ ๊ธฐ๋ฐํ์ฌ ๊ฒฐ์ ์ ๋ํ ๋ชจ๋ ๊ฐ๋ฅํ ํด๊ฒฐ์ฑ ์ ์๊ฐ์ ์ผ๋ก ๋ํ๋ธ ๊ทธ๋ํฝ ํํ์ด๋ค
- ์ค๊ฐ ๋ ธ๋๋ ์ฌ๋ฌ Alternatives ์ค์ ์ด๋ ํ ์ ํ์ ์๋ฏธํ๋ค
- ๋ฆฌํ ๋ ธ๋๋ ์ต์ข Decision์ ์๋ฏธํ๋ค
- ๊ทธ๋ฆผ์์ ๋์ด๊ฐ 30์ธ ์ดํ์ด๊ณ , ํ์์ด ์๋๋ฉด ์ปดํจํฐ๋ฅผ ์ฌ์ง ์์ ๊ฒ์ด๋ผ๊ณ ์์ธก
Algorithm Overview
Decision Tree ์๊ณ ๋ฆฌ์ฆ์ ๋๋ต์ ์ธ ๊ณผ์
- ๋ถํ ์ ๋ณต์ ์ฌ์ฉํด์ Top-down ๋ฐฉ์์ผ๋ก ํธ๋ฆฌ๋ฅผ ํ์ฑํ๋ค
- ์ฒ์์๋ ๋ชจ๋ Training data๋ Root๋ก๋ถํฐ ์์ํ๋ค
- ๋ฐ์ดํฐ๋ค์ ํ์ฌ ๋จ๊ณ์์ ์ ํ๋ Feature๋ฅผ ๊ธฐ์ค์ผ๋ก Recursiveํ๊ฒ ๋๋๋ค
- ์ด๋ ํ์ฌ ๋จ๊ณ์์ ์ด๋ค Feature๋ฅผ ์ ํํ ์ง๋, Heuristic(๊ฐํธ ์ถ๋ก ) ํ๊ฑฐ๋ Statistical(ํต๊ณ์ )ํ ๋ฐฉ๋ฒ์ผ๋ก ๊ฒฐ์ ํ๋ค
- Ex) Information Gain
Partitioning์ ๋ฉ์ถ๊ธฐ ์ํ ์กฐ๊ฑด?
- Recursiveํ๊ฒ ๋ด๋ ค ๊ฐ๋ค๊ฐ ํ์ฌ ๋
ธ๋์ ์๋ ๋ฐ์ดํฐ๋ค์ Class๊ฐ ๋ชจ๋ ๊ฐ์ผ๋ฉด ์ค๋จ
- ๋ ์ด์ ๋ถ๋ฆฌํ ํ์๊ฐ ์์
- ๋ ์ด์ ๋จ์ Feature๊ฐ ์กด์ฌํ์ง ์์ผ๋ฉด ์ข ๋ฃ
Decision Tree Introduction
Decision Tree์ ๊ธฐ๋ณธ์ ์ธ ์์ด๋์ด๋ Greedy, Recursive, Divide and Conquer
- ์ต์ด์ ํธ๋ฆฌ๋ ๋น์ด์๋ค
- ๋ฐ์ดํฐ๋ฅผ ๋ถ๋ฅํ๊ธฐ ์ํ ๊ธฐ์ค(Feature)์ ์ ํํ๋ค
- ๋ ์ด์ ๋ถ๋ฅํ ํ์๊ฐ ์๋ค๋ฉด ์ข ๋ฃ
- ๊ทธ๋ ์ง ์์ผ๋ฉด 2๋ฒ ๋จ๊ณ๋ก ๋์๊ฐ์ Recursiveํ๊ฒ ๋ฐ์ดํฐ๋ฅผ ๋ถ๋ฆฌํ๋ค
- ๊ฐ์ฅ ์ด์์ ์ธ ์ผ์ด์ค
- ๊ทธ๋ฐ๋ฐ ๋ณดํต ์ด๋ ์ง ์๊ธฐ ๋๋ฌธ์, Recursiveํ๊ฒ ๊ณ์ ๋ค์ด๊ฐ์ผ ํ๋ค
๊ฐ ๋จ๊ณ์์ ์ด๋ค Feature๋ฅผ ์ ํํ ์ง ์ด๋ป๊ฒ ๊ฒฐ์ ํ ์ ์์๊น?
- Algorithm
- ID3: Entrophy
- C4.5: Gain Ratio
- CART: Gini index
- Common Idea
- ๊ฐ๊ฐ์ Feature์ ๋ํด์ ํด๋น Feature๋ก ๋ถ๋ฆฌํ๊ฒ ๋๋ฉด, ์ผ๋ง๋ Heterogeneousํ ๊ฒฐ๊ณผ๊ฐ ๋์ค๋์ง ํ๊ฐํ๋ค
- Heterogeneousํ์ง ์๊ณ , Homogeneousํ ๊ฒ์ด ์ข๋ค
- ์ผ๋ง๋ ๋ง์ ์๋ก ๋ค๋ฅธ ํด๋์ค์ ๋ฐ์ดํฐ๋ค์ด ์์ฌ์๋์ง๋ฅผ ํ๊ฐํ๋ค
- ๋ถ๋ฆฌ๋ฅผ ํ๋๋ฐ ์๋ก ๋ค๋ฅธ ํด๋์ค์ ๋ฐ์ดํฐ๊ฐ ๋ง์ด ์์ฌ์์ผ๋ฉด ํด๋น ๋จ๊ณ์์ ์ ํํ๊ธฐ์ ๋ณ๋ก ์ ์ข์ Feature
- ๊ฐ๊ฐ์ Feature์ ๋ํด์ ํด๋น Feature๋ก ๋ถ๋ฆฌํ๊ฒ ๋๋ฉด, ์ผ๋ง๋ Heterogeneousํ ๊ฒฐ๊ณผ๊ฐ ๋์ค๋์ง ํ๊ฐํ๋ค
- Feature Types
- Feature๋ค์ Categoricalํ ๊ฒ์ผ๋ก ๊ฐ์ ํ๋ค
- ๋ง์ฝ ๊ทธ๋ ์ง ์์ผ๋ฉด ๋ฌด์ํ ๋ง์ Branch๋ค์ด ๋ป์ด๋์ค๊ฒ ๋๋ค
- ๋ง์ฝ Categorical ํ์ง ์๊ณ , Continuous ํ๋ค๋ฉด ๋ฏธ๋ฆฌ Discretization์ด ๋์ด ์์ด์ผ ํ๋ค
- Feature๋ค์ Categoricalํ ๊ฒ์ผ๋ก ๊ฐ์ ํ๋ค
Feature Selection
์ด๋ค Feature๋ฅผ ์ ํํ๋ ๊ฒ ๊ฐ์ฅ ์ข์๊น?
- ํด๋น Feature๋ก ๋ฐ์ดํฐ๋ฅผ ๋ถ๋ฅํ์ ๋, ๊ฐ์ฅ Homogeneousํ๊ฒ ๋ถ๋ฅ๋๋ ๊ฒ์ด ๊ฐ์ฅ ์ข๋ค
- ๊ฐ์ ๋ง๋ก ๊ฐ์ฅ ๋ Heterogeneousํ๊ฒ ๋ถ๋ฆฌ๋์ด์ผ ํ๋ค
- ์์์์ Age๋ก ๋ถ๋ฅํ์ ๋ ๊ฐ์ฅ Homogeneousํ๊ฒ ๋ถ๋ฅ๋ ๊ฒ์ด๋ค
- ํด๋น ๋จ๊ณ์์๋ Age๋ฅผ ์ ํํ๋ ๊ฒ ๋ฒ ์คํธ!
ID3
Iterative Dichotomiser 3
- ID3 ๋ฐฉ์์ Entropy(์ํธ๋กํผ) ์ ๊ธฐ๋ฐํ Information Gain์ด ์ฌ์ฉ ๋๋ค
- Entropy?
- ์ํธ๋กํผ๋ ํ๋ฅ ๋ถํฌ ๋ด์ ์๋ ์ ๋ณด์ ์์ ์์น์ ์ผ๋ก ๋ํ๋ธ ๊ฒ
- ์ฝ๊ฒ ๋งํด์ ๋ฌด์ง์๋ ๋ก ์๊ฐํ ์ ์๋ค
- ๊ทธ๋ฃน ๋ด์ ์ผ๋ง๋ ๋ฐ์ดํฐ๊ฐ ๋ฌด์ง์ํ๊ฒ ์์ฌ์๋์ง
- ์ํธ๋กํผ ๊ฐ์ ์์ ์์ ํตํด์ ๊ณ์ฐํ ์ ์๋ค
- Entropy ๊ฐ์ด ๋์์๋ก, ๋ฐ์ดํฐ์ ๋ถํฌ๊ฐ ๋ Heterogeneousํ๋ค ๋ ๊ฒ
- Entropy ๊ฐ์ด ๋ฎ๋ค๋ ๊ฒ์, Pi ๊ฐ์ด ๋งค์ฐ ๋๊ฑฐ๋ ๋ฎ๊ฑฐ๋ ๋ ์ค ํ๋์ธ ๊ฒฝ์ฐ์ด๋ค
- Pi๊ฐ์ด 1์ ๊ฐ๊น์ฐ๋ฉด, ๋๋ถ๋ถ์ ๋ฐ์ดํฐ๊ฐ i์ ์ํ๋ค๋ ๋ป์ด๋ฏ๋ก ์ํธ๋กํผ๊ฐ ๋ฎ์ ๊ฒ์ด๋ค
- Pi๊ฐ์ด 0์ ๊ฐ๊น์ฐ๋ฉด, ํด๋น Class์ ๋ํ ๋ฐ์ดํฐ๋ ๊ฑฐ์ ์กด์ฌํ์ง ์๋๋ค๋ ์๋ฏธ์ด๋ฏ๋ก ์ํธ๋กํผ๋ฅผ ๋ฎ์ถ๋๋ฐ ๊ธฐ์ฌํ๋ค
- ๋ง์ฝ 2๊ฐ์ ํด๋์ค๋ง ์กด์ฌํ๋ค๊ณ ํด๋ณด์, ํ๋์ ํด๋์ค์ ๋ํด์ ๋ฐ์ดํฐ๊ฐ ์กด์ฌํ์ง ์์ผ๋ฉด ๋๋ถ๋ถ์ ๋ฐ์ดํฐ๊ฐ ๋๋จธ์ง ํ๋์ ํด๋์ค์ ์ํ๋ค๋ ์๋ฏธ์ด๋ฏ๋ก ์ํธ๋กํผ๊ฐ ๋ฎ์ ๊ฒ์ด๋ค
- Information Gain์ ๋ถ๋ฆฌํ๊ธฐ ์ด์ ๊ณผ ์ดํ์ Entropy์ ์ฐจ์ด๋ฅผ ์๋ฏธํ๋ค
- ํน์ Attribute A์ ๋ํด ๋ถ๋ฅ๋ฅผ ํ์ ๋, ๋ถ๋ฅํ๊ธฐ ์ ๊ณผ ํ์ Gain์ ์ฐจ์ด๊ฐ ํด์๋ก ํด๋น Feature๋ ์ข์ Feature ์ด๋ค
- ๋ณดํต์ ๋ถ๋ฅํ๊ธฐ ์ ์ Gain๊ฐ์ด ๋ ํดํ ๋ฐ, ์ ๊ณผ ํ์ ์ฐจ์ด๊ฐ ํฌ๋ค๋ ๊ฒ์ ๋ถ๋ฅ ์ดํ์ Gain๊ฐ์ด ๋ง์ด ๊ฐ์ํ๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค
- ๋ถ๋ฆฌ ์ดํ์๋ ์ฌ์ ํ ์ํธ๋กํผ๊ฐ ๋๋ค๋ฉด, Info Gain ๊ฐ์ ์์์ง ๊ฒ์ด๋ค
์์
- ๋ชจ๋ ์ ํ๊ฐ๋ฅํ Feature์ ๋ํด์ Gain ๊ฐ์ ๊ตฌํ๋ค
- ๋ถ๋ฅํ๊ธฐ ์ด์ ์ Gain๊ฐ๊ณผ์ ์ฐจ๊ฐ ๊ฐ์ฅ ํฌ๊ฒ ๋ฒ์ด์ง๋ Feature๋ฅผ ์ ํ ํ๋ค
- ์์์์๋ Credit์ ์ ํํ์ ๋, Gain์ ์ฐจ๊ฐ ๊ฐ์ฅ ํฌ๊ธฐ ๋๋ฌธ์ ํด๋น ๋จ๊ณ์์๋ Credit์ ์ ํํ๋ ๊ฒ์ ๋ฒ ์คํธ!
C4.5
Evolution of ID3
- Information Gain์ Attribute Value์ ์๊ฐ ๋ง์ Feature์ผ์๋ก ๊ฐ์ด ์ปค์ง๋ ๊ฒฝํฅ์ด ์๋ค ๋ ๋ฌธ์
- Feature A๋ 5๊ฐ์ Value๋ฅผ ๊ฐ์ง๊ณ ์๊ณ , Feature B๋ 2๊ฐ์ Value๋ฅผ ๊ฐ์ง๊ณ ์๋ค๊ณ ํ์
- A๊ฐ B๋ณด๋ค ๋์ Information Gain์ ๊ฐ์ง๋ ๊ฒฝํฅ์ด ์๋ค
- ๊ทธ๋ผ ์๋ฌด๋๋ A๊ฐ ์ ํ๋ ํ๋ฅ ์ด ๋์์ง๋ค
- C4.5 ์๊ณ ๋ฆฌ์ฆ์ Gain Ratio๋ฅผ ์ฌ์ฉ ํ๋ค
- Gain Ratio๋ Information Gain์ Normalizationํ ๊ฒ
- Gain Ratio๋ Feature๋ฅผ ์ ํํ ๋ Branch์ ์๋ฅผ ๊ณ ๋ คํ๋ค
- SplitInfo๋ ๋จ์ง ์ผ๋ง๋ ๋ง์ Branch๊ฐ ์๋์ง์๋ง ์ง์คํ๋ค
- log(x)์ ๊ฐ์ x๊ฐ 0์ ๊ฐ๊น์์ง์๋ก ๊ธ๊ฒฉํ๊ฒ ์์์ง๋ค
- Branch๊ฐ ๋ง์ ๊ฒฝ์ฐ์๋ x์ ๊ฐ์ด 0์ ๋ ๊ฐ๊น์์ง ๊ฒ์ด๊ณ , SplitInfo์ ๊ฐ์ ์ปค์ง๊ฒ ๋๋ค
- Gain Ratio๋ Information Gain๊ฐ์ SplitInfo๋ก ๋๋ ์ ์ ๊ทํ๋ฅผ ํ๋ค
- Gain Ratio๋ Partition์ด ๋ง์ Feature์๋ ๋ ๋ง์ ํ๋ํฐ๋ฅผ ์ค๋ค
- Branch(Value)๊ฐ ๋ง์ ๊ฒฝ์ฐ์๋ SplitInfo๊ฐ์ด ํฌ๊ธฐ ๋๋ฌธ์, ๋๋ ์ฃผ๋ฉด Gain๊ฐ์ด ์์์ง๊ฒ ๋๋ค
์์
- Credit์ ๊ฒฝ์ฐ Value๊ฐ 3๊ฐ (Excellent, Fair, Poor)
CART
Classification And Regression Trees
- Gini Index?
- Entropy์ ๋น์ทํ ๊ฐ๋ ์ ๊ฐ๋๋ค
- CART๋ ID3์ ์์ด๋์ด์ ๋งค์ฐ ๋น์ทํ๋ค
728x90
'HYU > ๋ฐ์ดํฐ์ฌ์ด์ธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
11. Rule Based Classification (0) | 2024.04.14 |
---|---|
10. Overfitting (0) | 2024.04.14 |
8. Classification (0) | 2024.04.13 |
7. Association Rules (0) | 2024.04.13 |
6. Miner Improvements (0) | 2024.04.13 |