4. Non-parametric 구분기와 k-NN 모델/Ensemble 모델

4. Non-parametric 구분기와 k-NN 모델/Ensemble 모델

Decision theory

특정상황에특수한확률적구분기 확장방법

샘플들이 True Positive, True Negative로 구분될 경우에는 머신러닝 기법이 확실하게 잘 작동됨을 의미함

모든 머신러닝 기법이 100% 정확한 결과를 출력해 주는 것은 사실상 불가

예측된 결과값에 대해 스팸인 것에 대해 코스트 평균 계산

최종 Cost 예측결과 = (스팸일 확률 X 스팸일 때의 Cost) + (스팸이 아닐 확률 X 스팸이 아닐 때의 Cost)

비용(cost) 낮은쪽 선택

Non-parametric 구분기

Parametric vs. Non-parametric

Parametric 모델 : 일반적으로데이터가많으면많을수록 정확도가올라간다.

파라미터의 개수가 고정된 모델 ex) 스플리팅 노드의 나누는 기준, 피쳐 타입

스플리팅 노드의 개수는 하이퍼 파라미터로 조정 → 파라미터의 개수도 고정 ex) Naïve Bayes 파라미터의 경우, 베이즈 룰에서 활용되었던 각각의 확률

나이브 베이즈, 디시즌 트리 → 파라메트릭 모델의 일종

학습 데이터가 늘어나도 파라미터의 개수는 변하지 않는다.

Non-parametric 모델 : 파라미터개수 → 데이터샘플과거의동일하거나그에비례함

ex) 모든 데이터를 나눌 때까지 의사결정 나무를 나누는 경우 → 데이터 샘플 개수만큼의 스플리팅 노드를 가지게 됨 → Non-parametric 모델 파라미터개수: 데이터샘플과거의동일하거나그에비례함 대표적인알고리즘: KNN 알고리즘

k-Nearest Neighbor 구분기

단순한구조

모든트레이닝샘플들과현재새롭게입력된데이터와거리측정

새로운데이터에가장가까운샘플에해당되는라벨을그대로 달아주는 것

가정 : 비슷한 비쳐를 가지고 있는 샘플들은 비슷한 라벨을 가질 것이다

K : 의사결정 나무나 Naïve Bayes에서의 하이퍼 파라미터와 똑같은 역할

Ensemble 모델

머신러닝의 지도 학습 알고리즘들의 성능을 올리기 위해서 필수적으로 적용되는 매커니즘

서로다른여러가지머신러닝기법들을함께사용하는방법

일반적으로 메타 클래시파이어 (서로 다른 머신러닝 기법의 구분기에서 나오는 결과값을 입력으로 해서 최종 결과값 출력 ) 라고도 부름

대표적인 알고리즘의 장점만으로 활용하는 모델

성능을 높이기 위한 앙상블모델 → 평균

각각의 결과값의 확률값 확률값의 평균 현재 입력된 데이터의 최종 라벨 결정

앙상블 모델 > Random Forest

각각의 의사결정 나무를 서로 독립적으로 학습 후 많은 의사결정 나무에서 얻은 결과값들을 averaging해서 최종 결과 출력

의사결정 나무가 기본적으로 작동 속도가 빠르기 때문에 랜덤 포레스트가 실제 상황에서 빈번하게 활용

앙상블 모델, averaging과 스태킹이 가지는 최대 장점인 동시에 계산 가능하고 작동속도가 매우 빠름

의사결정 나무를 그대로 랜덤 포레스트의 한 개 모델로 사용해버리면 서로 다른 구분기가 비슷한 예측 결과를 출력

문제를 해결하기 위해 서로 다른 의사결정 나무가 서로 다른 예측값을 출력하기 위해서 Bootstrapping과 Random Tree라는 두 가지 트릭을 사용하게

Bootstrap sampling : 어떤데이터셋을만들어내는과정 Bagging : 각각의 구분기가 서로 다른 데이터셋으로 학습되어 서로 다른 예측값 출력

Boosting

아웃라이어(Outlier)가 많은 환경에서 적용하기 좋음

자세한 하자 탐지기 머신러닝 기법을 나중에 적용하게 함으로써계산량이나 속도를 훨씬 빠르게 할 수 있음

from http://serim-24.tistory.com/57 by ccl(A) rewrite - 2021-08-18 01:00:15