이 두개의 차이는 크게 두가지다.
1. Bootstrap 이용 여부
- random forest 는 부트스트랩 샘플링을 사용하지만, extra trees는 이를 사용하지 않고 original dataset을 사용함
2. 트리 분할 시 변수 선택 과정
- 각각의 알고리즘에서 만들어지는 다수의 트리 중 하나의 트리를 생각하자.
random forest의 경우, 각각의 트리에서, bootstrap 샘플링된 데이터를 바탕으로 랜덤한 features들을 사용하여 만들 수 있는 최적의 트리를 생성한다.
-반면, extra tree의 각각의 트리에서는, original data를 바탕으로(차이점 1) 랜덤한 feature들을 사용하지만, (랜덤포레스트와 동일) 최적의 트리를 만드는 것이 아니라, 각각 split 지점에서 무작위의 feature을 선택하여 그 feature에 대한 최적의 partition을 찾아 split을 진행한다.(랜덤성과 최적성)
extra tree는 random forest에 비해 randomness가 더 가미된 모델이지만, 역시 optimization 도 포함된 모델이다.
extra tree는 random forest 에 비해..
1. 연산량이 적다
2. 일반적으로 랜덤성이 증가하면, 모델의 bias가 증가하지만 variance는 감소함
그러나 일반적으로는 random forest가 더 선호된다.
이해가 애매하다면 다음 포스트 참고할 것.
'ML & AI' 카테고리의 다른 글
NMF (비음수 행렬분해) (0) | 2022.07.13 |
---|---|
Introduction to Machine Learning with Python(IMLP): Chap 2 지도학습 (0) | 2022.07.10 |
대표적인 데이터 스케일링 방법들. (0) | 2022.07.03 |
RandomForest 의 장단점 (0) | 2022.06.30 |
Logistic Regression 에서의 Regularization (0) | 2022.05.16 |