ํธ๋ฆฌ ๊ธฐ๋ฐ ๋ฐฉ๋ฒ(tree-based methods)
Predictor ๊ณต๊ฐ(space) -> ์ฌ๋ฌ ๊ฐ์ ๋จ์ํ๊ณ ์์ ๊ณต๊ฐ์ผ๋ก ๊ณ์ธตํ(stratify), ๋๋๋(segment) ๋ฐฉ๋ฒ
=> Predictor ๊ณต๊ฐ์ ๋๋๊ธฐ ์ํด ์ฌ์ฉ๋๋ ๋ถํ ๊ท์น์ด, ๋ง์น ๋๋ฌด๊ฐ ๊ฐ์ง๋ฅผ ์น๋ ๊ฒ๊ณผ ์ ์ฌํ์ฌ decision tree ๋ฐฉ๋ฒ
- ์ฅ์ : ๋จ์ํด์ ํด์ํ๊ธฐ ์ฌ์
- ๋จ์ : Decision tree ๋ฐฉ๋ฒ์ ๋ณดํต ๋ค๋ฅธ ์ง๋ํ์ต ๋ฐฉ๋ฒ๋ณด๋ค ์ฑ๋ฅ์ด ์ข์ง ๋ชปํจ
- => ๋์์ผ๋ก ์ฌ๋ฌ ๊ฐ์ ํธ๋ฆฌ๋ฅผ ๋ง๋ค์ด ์์ธก์ฑ๋ฅ์ ๋์ด๋ ๋ฐฉ์์ธ bagging, random forests, boosting ๋ฐฉ๋ฒ์ ์ฌ์ฉ
- (๋จ, ์ด ๋ฐฉ๋ฒ์ ํด์๋ ฅ์ด ๋จ์ด์ง)
- Internal node(๋ด๋ถ ๋ ธ๋) : ๊ธฐ์ค์ผ๋ก ๋น๊ตํ์ฌ ์ข์ฐ๋ก ๋๋
- Terminal node(ํฐ๋ฏธ๋ ๋ ธ๋) ๋๋ leaf(์)์ ์ซ์ : ํด๋น ๊ณต๊ฐ์ ํฌํจ๋ response์ ํ๊ท ๊ฐ
ํธ๋ฆฌ ์์ฑ ๊ณผ์
- Predictor space๋ฅผ J๊ฐ์ ๊ฒน์น์ง ์๋ ๊ณต๊ฐ์ผ๋ก ๊ตฌ๋ถ
- ๊ฐ๊ฐ์ ๋ฐ์ดํฐ๋ R ์ค ํ๋์ ๊ณต๊ฐ์ ๋จ์ด์ง๋ฉฐ ๊ฐ์ ๊ณต๊ฐ์ ์๋ ๋ฐ์ดํฐ๋ค์ ๋ชจ๋ ๊ฐ์ ์์ธก๊ฐ์ ๊ฐ์ง (ํด๋น ๊ณต๊ฐ์ training data์ response์ ํ๊ท )
- ํธ๋ฆฌ ์์ฑ ๋ชฉํ : RSS๋ฅผ ์ต์ํํ๋ box๋ฅผ ์ฐพ๋ ๊ฒ
- Predictor space๋ฅผ J๊ฐ์ box๋ก ๊ตฌ๋ถํ๋ ๋ชจ๋ ๊ฒฝ์ฐ์ ์๋ฅผ ๊ณ ๋ คํ๋ ๊ฒ์ ์คํ ๋ถ๊ฐ๋ฅํจ -> ๋ฐ๋ผ์ greedy(ํ์์ ์์ ๊ฐ์ฅ ํฐ ์ด๋์ ์ฃผ๋ ๊ฒ์ ์ ํ)ํ ์ ๊ทผ๋ฐฉ์์ธ recursive binary splitting(๋ฐ๋ณต์ ์ผ๋ก 2๊ฐ์ ๊ณต๊ฐ์ผ๋ก ๊ตฌ๋ถ) ๋ฐฉ๋ฒ ์ฌ์ฉ
- ๋ง์น ๋๋ญ๊ฐ์ง์ฒ๋ผ ์์์ ์๋๋ก(top-down) ํธ๋ฆฌ์ ๊ณต๊ฐ์ ๊ณ์ํด์ ๋ถํ ํ์ฌ ๋งค๋ฒ ์๋ก์ด ๊ณต๊ฐ ์์ฑ
- ๋งค๋ฒ ๊ณต๊ฐ์ ๊ตฌ๋ถํ ๋๋ง๋ค ํ์์ ์์ ์ต์ ์ ๋ถํ ๋ฒ์ ์ ํํ๋ฏ๋ก greedyํ ๋ฐฉ๋ฒ์ด๋ผ๊ณ ๋ถ๋ฆผ
- ์ค๋จ ๊ท์น์ ๋ง์กฑํ ๋๊น์ง ๊ณต๊ฐ ๋ถํ ๋ฐ๋ณต ์ํ
ํธ๋ฆฌ ๊ณผ์ ํฉ(overfitting) ๋ฐฉ์ง
- J๊ฐ ํด(ํธ๋ฆฌ๊ฐ ๊น์) ๊ฒฝ์ฐ : ๊ณผ์ ํฉ ๋ ์ ์์
- J๊ฐ ์์ ๊ฒฝ์ฐ : ์์ผ๋ฉด variance๊ฐ ๋ฎ๊ณ ํด์๋ ฅ์ด ์ข์์ง(๋จ, bias๋ ์ปค์ง)
- ๋์ : ํธ๋ฆฌ ์์ฑ ๊ณผ์ ์์ ํธ๋ฆฌ๊ฐ ๋๋ฌด ๊น์ด์ง์ง ์๋๋ก ์กฐ์
- ๋จ์ : ์ด ๋์์ ๊ทผ์์์ ์ธ ๋ฐฉ๋ฒ์ผ๋ก ํฅํ ์์ ํฐ RSS์ ๊ฐ์๋ฅผ ๋ง๋๋ ๊ณต๊ฐ ๋ถํ ์ ์ฌ์ ์ ์ฐจ๋จํ ์ ์์
Pruning a tree (ํธ๋ฆฌ ๊ฐ์ง์น๊ธฐ)
- ๊ณผ์ ํฉ์ ๋ง๊ธฐ ์ํ ๋ ์ข์ ๋ฐฉ๋ฒ์ ํฐ ํธ๋ฆฌ๋ฅผ ์์ฑํ๊ณ , ํธ๋ฆฌ๋ฅผ pruning ํ์ฌ ๋ถ๋ถ ํธ๋ฆฌ(subtree)๋ฅผ ๋ง๋๋ ๊ฒ
Classification tree
- Regression tree์ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ์์ฑํ๋ ํ ๊ณต๊ฐ(region)์ ๊ฐ์ฅ ๋ง์ด ํฌํจ๋์ด ์๋ training data์ ํด๋์ค(class)๋ก ์์ธก
- RSS ๋์ classfication error rate๋ฅผ ์ฌ์ฉ
- ๋จ, classfication error rate๋ ํธ๋ฆฌ ์์ฑ์ ์ฌ์ฉ๋ ์ ์๋ ๋งํผ ๋ฏผ๊ฐํ์ง ์์ ๋ค๋ฅธ 2๊ฐ์ง ๊ธฐ์ค์ด ๋ ๋ง์ด ์ฌ์ฉ๋จ
ํธ๋ฆฌ์ ์ฅ๋จ์
- ์ฅ์
- ์ค๋ช ํ๊ธฐ ์ฌ์(๋ถ๊ธฐ๊ฐ ๋จ์ํ ๊ฒฝ์ฐ ์ ํํ๊ท๋ณด๋ค ๋ ์ง๊ด์ ์)
- Decision tree ๊ฐ ์ฌ๋์ ์์ฌ๊ฒฐ์ ๋ฐฉ๋ฒ๊ณผ ์ ์ฌํ๋ค๋ ๋ฏฟ์์ด ์์
- ๊ทธ๋ฆผ์ผ๋ก ์ค๋ช ํ ์ ์์ด ๋น์ ๋ฌธ๊ฐ๋ ์ดํดํ๊ธฐ ์ฌ์
- Dummy variable ์์ฑ ์์ด ์ง์ ๋ณ์๋ฅผ ์ฌ์ฉํ ์ ์์
- ๋จ์
- ์ผ๋ฐ์ ์ผ๋ก ๋ค๋ฅธ ๋จธ์ ๋ฌ๋ ๋ฐฉ๋ฒ์ ๋นํด ์ฑ๋ฅ์ด ๋ฎ์
=> ๊ทธ๋ฌ๋, ์ฌ๋ฌ ๊ฐ์ decision tree๋ฅผ ์์ฑํ์ฌ ํฉ์น๋(aggregating) ๋ฐฉ๋ฒ์ ํตํด์ ์ฑ๋ฅ์ ํฌ๊ฒ ํฅ์์ํฌ ์ ์์
'software engineering > ํ์ด์ฌ ๋จธ์ ๋ฌ๋' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Machine Learning] ํด๋ฌ์คํฐ๋ง (Clustering) (0) | 2024.01.18 |
---|---|
[Machine Learning] ๋น์ง๋ ํ์ต, Principal Components Analysis (0) | 2024.01.18 |
[Machine Learning] SVM (Support Vector Machines) (0) | 2024.01.12 |
[Machine Learning] Aggregating decision trees (1) | 2024.01.11 |
[Machine Learning] Subset selection๊ณผ ์ต์ ๋ชจ๋ธ ์ ์ (0) | 2024.01.10 |