2000년대에 들어 컴퓨팅파워가 발전하게 되며 여러 개의 weak learner를 활용하는 앙상블 기법이 나타남

복잡한 문제에 있어서는 한 명보다 수천 명의 대답을 결합하는게 좋다는 개념을 머신러닝에 적용하게 됨
즉, 각각 개별 classifier나 regressor의 예측 결과를 결합하여 개별 모델의 성능보다 좋은 결과를 도출하게 됨
이러한 기법의 알고리즘을 앙상블이라고 하며 random forest는 가장 인기있는 앙상블 기법중 하나임

랜덤포레스트에서는 디시젼트리를 개별 weak learner로 활용하게 됨
전체 데이터셋에 대한 무작위 샘플링으로 개별 트리에 대한 부분 데이터 집합을 구성함

개별 트리는 독립적으로 학습해서 데이터에 대한 예측을 수행함
분류 문제라면 투표를 통해 다수의 트리가 예측한 결과를 채택할 것이고,
회귀 문제라면 평균, 최대값, 중간치 등을 활용해서 값을 결정할 것임

그리고 일반화를 위해서 example(행) 과 feature(열)에 대해 랜덤샘플링이 이루어짐

개별 예측값들은 학습한 subset에 편향되지만(언더피팅), 개별 결과들을 결합함으로써 편향과 분산을 줄일 수 있음

또한 개별 트리를 계속해서 무한정 추가하면 오버피팅이 올 수 있음
때문에 검증데이터셋에 대해 early stopping 기능을 사용하여 이를 방지할 수 있음

+ Recent posts