Broccoli's House

#2-(8) 지도학습 알고리즘 : 정리 본문

공부/머신러닝

#2-(8) 지도학습 알고리즘 : 정리

김콜리 2018. 2. 3. 14:31

※ 이 글의 내용은 O'REILLY의 <파이썬 라이브러리를 활용한 머신러닝> 책을 기반으로 한다.




지도 학습 알고리즘 : 정리




  • 요약 및 정리
 - 최근접 이웃(k-NN) : 데이터 포인트에서 가장 가까운 훈련 데이터 포인트, 최근접 이웃을 찾는 알고리즘. 작은 데이터 세트일 경우에 기본모델로서 좋고 이해하기 쉽다.

 - 선형 모델 : 선형적인 직선이나 평면, 초평면 등을 이용하여 출력을 찾는 알고리즘. 첫 번째로 시도하기 좋으며, 대용량 데이터세트와 고차원 데이터 세트에 가능하다.

 - 나이브 베이즈 : 데이터의 특성을 독립적이라 가정하여 각 상황의 확률을 계산하여 결과를 출력한다. 분류 문제에만 적용할 수 있다. 대용량 데이터 세트와 고차원 데이터에 사용 가능하다. 선형 모델보다 훨씬 빠르나 정확도는 떨어진다.

 - 결정 트리 : 데이터를 이진 분류하는 것을 반복하여 최종적으로 결과를 출력한다. 매우 빠르고 데이터 스케일의 조정이 필요 없다. 시각화하기 좋고 설명하기 쉬우나 과대적합되는 경향이 있다.

 - 랜덤 포레스트 : 과대적합된 단일 결정 트리를 여러 개 묶어 하나의 모델로 만든 것. 결정 트리 하나보다 거의 항상 좋은 성능을 낸다. 매우 안정적이고 강력하며 데이터 스케일의 조정이 필요가 없다. 다만 시간이 오래 걸리고 텍스트같은 고차원 희소 데이터에는 잘 맞지 않는다.

 - 그래디언트 부스팅 결정 트리 : 깊이가 깊지 않은 단일 결정 트리를 여러 개 묶어 하나의 모델로 만든 것. 랜덤 포레스트보다 조금 더 성능이 좋다. 랜덤 포레스트보다 학습은 느리나 예측은 빠르고 메모리를 적게 사용한다. 다만 랜덤 포레스트보다 매개변수의 튜닝이 많이 필요하다.

 - 서포트 벡터 머신(SVM) : 클래스 사이의 경계에 위치한 데이터 포인트(서포트 벡터) 간의 거리를 최대화하여 결과를 찾는 알고리즘. 비슷한 의미의 특성으로 이루어진 중간 규모 데이터 세트에는 잘 맞지만, 데이터 스케일의 조정이 필요하고 매개변수에 민감하다.

 - 신경망 : 딥러닝에서 자세히 다루어 여기서는 다루지 않는다. 대용량 데이터 세트에서 매우 복잡한 모델을 만들 수 있다. 다만 매개변수의 선택과 데이터 스케일에 민감하며, 큰 모델에는 학습이 오래 걸린다.


Comments