지도학습(분류/회귀) - Ensemble

문영제·2022년 7월 12일
0

LG AImers

목록 보기
12/24

Ensemble Learning

Definition of Ensemble

이미 사용하고 있거나 개발한 알고리즘의 간단한 확장으로 supervise learning task에서 성능을 올릴 수 있는 방법으로, 예측 성능을 안정적으로 향상할 수 있으며 쉽게 구현이 가능하고 모델 파라미터의 튜닝이 많이 필요 없다는 장점이 있으나 모델 자체로는 compact한 표현이 되기 어려움이 있다는 단점이 있다.

How It works

머신러닝에서 알고리즘의 종류에 상관없이 서로 다르거나, 같은 메커니즘으로 동작하는 다양한 머신러닝 모델을 묶어 함께 사용하는 방식으로 여러 다른 모델을 모아서 예측 모델의 집합으로 사용하는 것이다. 학습 데이터 셋을 나누어서 진행하고 학습한 다수의 모델이 각각 결정을 내린 후 다수결로 최종 예측 결과를 제공할 수 있다.

Components of Ensemble

Bagging

학습과정에서 training sample을 랜덤하게 나누어 선택해 학습하는 방식으로 다양한 classifier들이 랜덤하게 선택된 다양한 sample들로 학습이 되기에 같은 모델을 가져도 서로 다른 특성의 학습이 가능하고 모델을 병렬적으로 학습 가능하다. 어원은 다수의 sample data set을 생성하여 학습하는 방식인 BootStrapping과 low variance의 안정적인 성능을 제공하는데 유용한 방법인 Aggregating을 합한 단어라고 할 수 있다.

Boosting

약한 연산자(bias가 높은 classifier, 성능이 낮아 혼자서는 무엇을 하기 어려운 모델)들이 연쇄적으로 적용되어 연속적인 특징을 가지고 연산자의 성능을 올릴 수 있다는 장점이 존재한다. Boosting의 경우 약한연산자의 미정의된 부분을 위한 커진 편향성이 다음 연산의 연산자 형태로 영향을 준다.

Boosting Algorithm Examples

  • Addboost: base classifier에 의해서 오분류된 sample에 대해 보다 높은 가중치를 두어서 다음 학습에 사용할 수 있게 함
  • Bagging과 Boosting을 활용하는 알고리즘
    By bagging -> random forest (inherently boosting)
    By boosting -> gradient boosting machine (GBM) as generalized Adaboost

Model 성능 평가 방식

  1. Accuracy (정확도) 측정: 각 경우에 대해서 오차가 얼마가 있었는지 표현하는 방법으로, confusion matrix을 사용한다. 정확도를 관측하는 방법에는 각각 TN(True Negative), TP(True Positive), 1종오류(FP)와 2종 오류(FN)가 있다. 이를 이용하여 각 Value를 구할 수 있으며 아래에 예시를 들어 설명하였다.
  • Accuracy = TP+TN/ALL, Precision = TP/TP+FP, Recall = TP/TP+FN
  • ROC Curve; 쌍봉형과 같이 나타낼 수 있으며 아래와 같이 TP와 TN에 대해 둘의 비로서 나타낼 수 있다.
  • Unbalanced 데이터 세트의 경우 accuracy 이외에도 precision과 recall값을 동시에 보아야 성능을 제대로 예측 가능

ROC Curve

: 서로 다른 classifier의 성능을 측정하는 데 사용하는 curve

SL을 사용하는 application

R-CNN

  1. image, language inter-disciplinary studies(image, language captioning, question and answering)
  2. semantic segmentation
  3. face recognition, post estimation
  4. face detection, super resolution
profile
부산사는 아저씨

0개의 댓글