3-3 Ensemble Of Tree
1. Ensemble(์์๋ธ)
- An ensemble is a group of people who work or perform together.
- ์์๋ธ(ensemble)์ ์ ์ฒด์ ์ธ ์ด์ธ๋ฆผ์ด๋ ํต์ผ. โ์กฐํโ๋ก ์ํํ๋ค๋ ์๋ฏธ์ ํ๋์ค์ด
- ์์ ์์ 2์ธ ์ด์์ด ํ๋ ๋ ธ๋๋ ์ฐ์ฃผ๋ฅผ ๋งํ๋ฉฐ,
- ๋ฎค์ง์ปฌ์์ ์ฃผ, ์กฐ์ฐ ๋ฐฐ์ฐ๋ค ๋ค์์ ํ์์ ๋ฃ๊ณ ์ถค์ ์ถ๊ณ ๋ ธ๋๋ฅผ ๋ถ๋ฅด๋ฉด์ ๋ถ์๊ธฐ๋ฅผ ๋๊ตฌ๋ ์ญํ
ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ
ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ
2. Tree์ Ensemble
- Decision Tree Algorithm
- Ensemble methods are meta-algorithms that conbine several machine learning techniques into one predictive model
- in order to decrease variance(bagging) and bias(boosting)
Ensemble methods can be divided into two groups
- Parallel ensemble methods where the base learners are generated parallel (e.g Random Forest)
- exploit independence between the base learners
- since the error can be reduced dramatically by averaging
- Sequential ensemble methods where the base learners are generated sequentially (e.g AdaBoost)
- exploit the dependence between the base learners
- The overall performance can be boosted by weighing previously mislabeld examples with higher weight
ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ
ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ
3. Bagging (โDecrease Variance)
- Bootstrap ๋ฐฉ์์ ์์๋ธ ํ์ต๋ฒ
- Bootstrap aggregating
- Bagging์ ๋ถ์ฐ์ ์ค์ด๊ณ overfitting์ ํผํ๋๋ก ํด์ค
- Decision Tree๋ Random Forest์ ์ ์ฉ๋๋ ๊ฒ์ด ์ผ๋ฐ์
Bootstrap
- ์ฒซ ๋ฒ์งธ ์ฐจ๋ก์์ ํ๋ ๊ณต์ด ๋ฝํ ํ๋ฅ = 1/3
- ๋ ๋ฒ์งธ ์ฐจ๋ก์์ ํ๋ ๊ณต์ด ๋ฝํ ํ๋ฅ = 1/3
- ์ธ ๋ฒ์งธ ์ฐจ๋ก์์ ํ๋ ๊ณต์ด ๋ฝํ ํ๋ฅ = 1/3
- 9๊ฐ ๊ณต์ด ๋ชจ๋ ํ๋์์ผ ์ ์๋ค
๊ฐ๋ณ ๋ถ๋ฅ๊ธฐ๋ณด๋ค ์ฑ๋ฅ์ด ๋ฐ์ด๋ ์ด์
- ์ดํญ๋ถํฌ์ ํ๋ฅ ์ง๋ ํจ์
- ๋จ์ผ Tree์ Binary Class ํ๋ฅ ์ ๋ํด N๊ฐ์ Tree๋ก ํ์ฅ ์์ผฐ์ ๋์ ์ค์ฐจ์จ
- ๋ฐ๋ผ์ ์์๋ธ์ ์๋ฌ ํ๋ฅ ์ ๊ฐ๋ณ ๋ถ๋ฅ๊ธฐ ๋ณด๋ค ํญ์ ์ข๋ค.
- ๋ค๋ง ๊ฐ๋ณ ๋ถ๋ฅ๊ธฐ์ ์๋ฌ์จ์ด 0.5์ด๋ฉด์ ์์๋ธํ ๋ถ๋ฅ๊ธฐ๊ฐ ์ง์ ์ผ ๋, ์์ธก์ด ๋ฐ๋ฐ์ผ๋ก ๋๋๋ฉด ์๋ฌ๋ก ์ทจ๊ธ๋๋ค.
- ๋ฐ๋ผ์ ๊ฐ๋ณ ๋ถ๋ฅ๊ธฐ๊ฐ ๋ฌด์์ ์ถ์ธก(P(E)=0.5)๋ณด๋ค๋ ์ฑ๋ฅ์ด ์ข์์ผ ํ๋ค.
A Commonly used class of ensemble algorithms are forest of randomized trees
- In random forests, each tree in the ensemble is built from a sample drawn with replacement (i.e a bootstrap sample) from the traning set.
- In addition, instead of using all the features, a random subset of features is selected, further randomizing the tree
- As a result, the bias of the forest increases slightly, but due to the averaging of less correlated trees (์๊ด๊ด๊ณ๊ฐ ์ ์ tree์ ํ๊ท ํ ๋๋ฌธ์), its variance decreases, resulting in an overall better
- ๊ฐ Tree์ Prediction์ ๋ชจ์ ๋ค์๊ฒฐ ํฌํ(Majority voting)๋ก ์์ธก
ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ
ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ
4. Boosting (โDecrease Bias)
Boosting
- the hypothesis boosting
- Reduce Bias
- Improve Performance
Compare with Bagging
- ๊ณตํต์
- 1๊ฐ์ Strong Learner๊ฐ ์๋ n๊ฐ์ Weak Learner Model์ Ensemble ๋ฐฉ์
- Weak Learner๋ฅผ ๋ค์๊ฒฐ ํฌํ(Majority voting)๋ก ์ฐ๊ฒฐ
- ์ฐจ์ด์
- ๊ฐ ๋ชจ๋ธ์ ๋ง๋ค๊ธฐ ์ํ sampling์์ ์ค๋ณต์ ํ์ฉํ์ง ์์ (Bootstrap ๋ฐฉ์ X)
- ์ํธ ์์กด์ ์ธ ๊ฐ๋ณ ๋ชจ๋ธ
- ์ด์ Model์ ์ํฅ์ ๋ฐ์์ Error์ ๋ ํฐ ๊ฐ์ค์น ๋ถ์ฌ
AdaBoost
Gradienc Boosting
- AdaBoost์ Gradient Boosting์ ์ ๋ฐ์ ์ธ ๊ฐ๋ ์ด ๊ฐ๋ค.
- Weak (๊น์ด๊ฐ 1์ธ Decision Tree์ ๊ฐ์) Learner๋ฅผ Boostingํ์ฌ Strong Model์ ๋ง๋ ๋ค.
XGBoost
LightGBM
ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ
ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ ใใใใใใใใใใ
5. Quiz
- Variance๋ฅผ ๋ฎ์ถ๊ธฐ ์ํ Ensemble ๋ฐฉ์์? ๐คก
(a) Bagging ใใใใใใใใใใ (b) Gradienc Descent
(c) Boostingใใใใใใใใใใ (d) Hyperparameter Tuning