INFO BOX 1.1 신경망 이외의 인기 있는 다른 머신 러닝 기술
그림 1-1의 벤 다이어그램에서 ‘머신 러닝’ 동심원에서 ‘신경망’ 동심원 안으로 바로 들어왔습니다. 하지만 신경망이 아닌 다른 머신 러닝 기술을 짧게 언급할 가치가 있습니다. 역사적인 이해를 도울 수 있을 뿐만 아니라 이런 기술을 사용한 코드를 만날 수 있기 때문입니다.
나이브 베이즈 분류기(naive Bayes classifier)는 초기 머신 러닝 형태 중 하나입니다. 간단하게 말해서 베이즈 정리(Bayes’ theorem)는 1) 사건이 일어날 사전 확률(믿음)과 2) 사건에 관련된 관찰된 사실(특성(feature))이 주어졌을 때 이 사건의 확률을 추정하는 방법입니다. 이 정리는 관찰된 사실이 주어졌을 때 알려진 여러 카테고리 중에 가장 높은 확률(가능성)을 가진 카테고리로 관찰된 데이터 포인트를 분류하는 데 사용할 수 있습니다. 나이브 베이즈는 관찰된 사실이 상호 독립적이라는 가정을 기반으로 합니다(알고리즘 이름 그대로 강력하지만 순진한(naive) 가정입니다).
로지스틱 회귀(logistic regression, logreg)도 분류 알고리즘입니다. 간단하고 다재다능한 특징 때문에 여전히 인기가 높고 당면한 분류 문제를 가늠해 보기 위해 데이터 과학자가 첫 번째로 시도해 보는 알고리즘입니다.
커널 방법(kernel method)은 이진(binary)(즉, 두 개의 클래스) 분류 문제를 다루는 방법으로 원본 데이터를 고차원 공간으로 매핑하여 두 클래스 사이의 거리(마진(margin))를 최대화하는 변환을 찾습니다. 가장 잘 알려진 예로는 서포트 벡터 머신(Support Vector Machine, SVM)이 있습니다.
결정 트리(decision tree)는 플로차트(flowchart) 같은 구조로, 입력 데이터 포인트를 분류하거나 주어진 입력으로 출력 값을 예측합니다. 플로차트 각 단계마다 “특성 X가 어떤 임계값보다 큰가요?”와 같은 간단한 ‘예/아니요’ 질문에 답을 합니다. ‘예’ 또는 ‘아니요’라는 대답에 따라 또 다른 ‘예/아니요’ 질문 두 개 중 하나를 선택하는 식으로 계속됩니다. 플로차트 끝에 도달하면 최종 답을 얻게 됩니다. 따라서 결정 트리는 사람이 이해하고 시각화하기 쉽습니다.
랜덤 포레스트(random forest)와 그레이디언트 부스티드 머신(gradient-boosted machine)은 많은 개수의 개별 결정 트리를 앙상블(ensemble)하여 결정 트리의 정확도를 높이는 방법입니다. 앙상블 또는 앙상블 학습(ensemble learning)은 개별 머신 러닝 모델의 묶음을 훈련하고 추론할 때 각 모델의 출력을 모아 사용하는 기술입니다. 오늘날 그레이디언트 부스팅은 지각에 관련되지 않은 데이터(예를 들어 신용 카드 부정 거래 탐지)를 다루는 데 최고는 아니더라도 가장 뛰어난 알고리즘 중 하나이며, 캐글(Kaggle)과 같은 데이터 과학 경연 대회에서 딥러닝과 함께 가장 많이 사용되는 기술 중 하나입니다.