ImageLab News 

이미지랩소식

ImageLab News

이미지랩소식

머신러닝[분류알고리즘3] 랜덤 포레스트

배깅은 보팅과는 달리 같은 알고리즘으로 여러 분류기를 만들어 최종 결정을 내리는 알고리즘이다. 앙상블 알고리즘 가운데서는 비교적 빠른 수행 속도를 가지고 있으며, 다양한 영역에서 높은 예측 성능을 보이고 있다.

랜덤 포레스트의 기반 알고리즘은 결정 트리 알고리즘으로, 결정 트리의 쉽고 직관적이라는 장점을 그대로 가지고 있다. (* 랜덤 포레스트뿐 아니라 부스팅을 기반으로 하는 앙상블 알고리즘의 대부분이 결정 트리 알고리즘을 기반으로 채택하고 있다.)

랜덤 포레스트는 여러 개의 결정 트리 분류기가 전체 데이터에서 배깅 방식으로 각자의 데이터를 샘플링해 개별적으로 학습을 수행한 뒤, 최종적으로 모든 분류기가 보팅을 통해 예측 결정을 하게 된다.


cc8de9bc59e1b.png

랜덤 포레스트의 개별 결정 트리가 학습하는 데이터는 전체 데이터에서 일부가 중첩되게끔 샘플링된 데이터 세트이다. 이런 방식으로 중첩되게끔 여러 개의 데이터 세트를 분리하는 것을 부트스트래핑(bootstrapping) 분할 방식이라고 한다. (Bagging은 Bootstrapping Aggregating의 줄임말)

원본 데이터가 10개인 학습 데이터 세트에 랜덤 포레스트를 3개의 결정 트리 기반으로 학습하게끔 n_estimators=3 하이퍼 파라미터를 부여하면 다음과 같은 데이터 세트가 생성된다. 


12345678910


↓ 부트스트래핑 분할


서브세트 #1

1233356889

서브세트 #2

134568789910

서브세트 #3

1134456699


이렇게 데이터가 일부 중첩된 개별 데이터 세트에 결정 트리 분류기를 각각 적용하는 것이 랜덤 포레스트이다.



Image Lab 이미지랩

본사 경기도 성남시 수정구 창업로 43, 업무동 1층 86호 

연구소 경기도 성남시 수정구 창업로 43, B동 1013호 

Tel. 031-757-9472 Fax. 031-759-1489

Image Lab 이미지랩

본사 경기도 성남시 수정구 창업로 43, 업무동 1층 86호

연구소 경기도 성남시 수정구 창업로 43, B동 1013호

Tel. 031-757-9472 Fax. 031-759-1489  E-mail. imagelabinc@gmail.com