본문 바로가기

머신러닝 용어 정리

혼동 행렬 (Confusion Matrix)

percision과 recall

  • precision과 recall의 차이는 FP에 focus가 있는지, FN에 focus가 있는지
    • FP가 가장 위험한 상황이라 이를 줄이고 싶다면 precision이 중요
    • 반대로, FN이 가장 위험한 상황이라 이를 피해야 한다면 recall이 중요
    • FP (False Positive): positive로 잘못 예측
    • FN (False Negative): negative로 잘못 예측

precision (정확도, 정밀도)

  • 내가 맞다고 생각한 것 중에 얼마나 맞췄는지
  • Positive Predictive Value
  • 모델이 Positive로 예측한 샘플 중에서 실제로 Positive인 샘플의 비율을 나타냅니다. 즉, 모델이 얼마나 정확하게 Positive 클래스를 예측하는지를 측정
  • ex) 지문인식
    • 지문인식에서 가장 위험한, 치명적인 경우는 내가 아닌데 나로 인식해서 잠금이 해제되는 상황
    • 나로 예측하는 경우 중에 정답이 많아야 하므로
    • 그렇다 보니 내가 맞는데도 잠금 해제가 안 되는 경우가 많음

recall (검출률, 재현율)

  • 진짜 정답 중에 몇개나 맞췄는지
  • Sensitivity, Hit Rate, True Positive Rate
  • 실제로 Positive인 샘플 중에서 모델이 Positive로 예측한 샘플의 비율을 나타냅니다. 즉, 모델이 Positive 클래스를 얼마나 잘 감지하는지를 측정
  • ex) 화재경보기
    • 최악의 상황은 불이 안났는데 불이 났다고 예측하는 경우보다 불이 났는데 안났다고 예측하는 경우
    • 진짜 화재 중에 예측한 화재가 더 많아야 하기 때문
    • 그렇다 보니 담배연기만 피워도 화재경보기가 작동하는 경우가 많음

F1-Score

  • 정밀도(Precision)와 재현율(Recall)의 조화 평균(Harmonic Mean)
    • 조화평균 → 두 지표 간의 균형을 잘 반영
  • 특히 불균형한 클래스 분포를 가진 데이터셋에서 유용
    • 왜?
      • 클래스 불균형 문제에서는 주로 샘플 수가 적은 클래스에 대한 Recall을 높이는 것이 중요합니다. 왜냐하면 샘플 수가 적은 클래스에 대한 Recall이 낮으면, 모델이 해당 클래스를 올바르게 감지하지 못할 수 있기 때문입니다. 예를 들어, 양성 클래스가 드물게 발생하는 의료 진단 문제에서, 거의 없는 양성 클래스에 대한 Recall이 낮으면 실제로 중요한 질병을 감지하지 못할 수 있습니다.
      • 그러나 샘플 수가 적은 클래스에 대한 Recall을 높이려고 하면 다수 클래스에 대한 Precision이 낮아지게 됩니다. 클래스 불균형 문제에서는 주로 Recall을 높이는 것이 중요하지만, 이 과정에서 Precision을 유지하는 것도 중요합니다. 이는 샘플 수가 적은 클래스에 대한 Recall을 고려하면서도, 다수 클래스에 대한 Precision을 최대한 유지하여 모델이 잘못된 양성 예측을 최소화하기 위함입니다.
      • 이 둘의 조화평균으로 지표를 만들면 precision, recall을 둘다 균형있게 반영하기 때문에두 지표가 균형을 이룰 때 가장 큰 값을 가집니다. 따라서, 특히 불균형 클래스 분포를 가진 데이터셋에서 유용합니다.
        • 조화평균은 주어진 값들의 역수를 취하기 때문에 큰 값은 작게, 작은 값은 크게 만들어줘 전체적으로 균형을 이루는 특성

ROC 곡선과 AUC

ROC 곡선 (Receiver Operation Characteristic Curve)

  • 수신자 판단 곡선 → 원래 2차대전 때 통신 장비 성능 평가를 위해 고안된 수치
  • FPR(False Positive Rate, 재현율, 민감도)이 변할 때 TPR(True Positive Rate)이 어떻게 변하는지를 나타내는 곡선
    • FPR을 0부터 1까지 변경. ← 분류 결정 임곗값을 1부터 0까지 변경

AUC (Area Under Curve)

  • 이진 분류의 예측 성능 측정에서 중요하게 사용되는 지표
  • AUC가 커지려면 FPR이 작은 상태에서 얼마나 큰 TPR을 얻을 수 있느냐가 관건

L1 규제 (L1 Reguralization), L2 규제 (L2 Regularization)

  • 일반적으로 L1 규제는 feature가 많고 그 중 일부만 중요한 경우에 유용하며, L2 규제는 모든 feature가 비슷한 영향력을 갖는 경우에 유용

L1 규제 (L1 Reguralization)

  • 가중치의 절대값에 비례하는 항을 손실 함수에 추가하는 방식
  • L1 규제는 가중치의 일부를 0으로 만들어 특성 선택을 자동으로 수행하는 경향이 있습니다. 즉, 일부 특성의 가중치를 완전히 제거하여 모델을 더 간단하게 만들 수 있습니다.
  • L1 규제는 희소한 가중치 벡터를 생성할 수 있습니다. 즉, 대부분의 가중치가 0이거나 매우 작은 값을 갖는 경우가 많습니다.

L2 규제 (L2 Regularization)

  • 가중치의 제곱에 비례하는 항을 손실 함수에 추가하는 방식
  • L2 규제는 특성 선택을 자동으로 수행하지 않으며, 대신 모든 특성을 고려한 채로 가중치를 줄입니다.
  • L2 규제는 가중치를 크게 줄여주는 경향이 있지만, 0으로 만들지는 않습니다. 모든 특성이 포함된 모델을 유지하면서 가중치의 크기를 줄이는 데 중점을 둡니다.

조기 중단 (Early Stopping)

validation/test loss가 더이상 낮아지지 않을 때 stop

 

출처: ChatGPT, <파이썬 머신러닝 완벽 가이드>

'용어정리' 카테고리의 다른 글

추천 관련 용어 정리  (0) 2024.02.18
딥러닝 용어 정리 및 책 추천  (0) 2020.12.30
C++ 용어 정리 및 사이트 추천  (0) 2020.12.26