Balanced Accuracy (균형 정확도)

2026. 5. 26. 07:26·Programming/ML
728x90
728x90

Balanced Accuracy(균형 정확도) 는
class imbalance(클래스 불균형) 가 있는
classification(분류) 문제에서 사용하는
evaluation metric(평가지표)임.

Ordinary Accuracy

일반적인 Accuracy(정확도) 는 전체 sample 중 맞춘 비율임.

$$\text{Accuracy} = \frac{\text{맞춘 sample 수}}{\text{전체 sample 수}}$$

 

하지만,

  • 특정 class의 sample 수가 매우 많으면,
  • model(모델)이 majority class(다수 클래스)만 잘 맞춰도
  • accuracy가 높게 나올 수 있음.

Balanced Accuray

앞서의 class imbalance 에서의 일반 accuracy가 가지는 문제점을 극복하기 위해

각 class별 Recall(재현율) 을 따로 계산한 뒤 평균낸 것이 Balanced Accuracy(균형 정확도) 임.

 

$$\text{Balanced Accuracy} = \frac{1}{K} \sum_{k=1}^{K} \text{Recall}_k$$

  • 여기서 $K$는 class 개수임.

즉, Balanced Accuracy(균형 정확도)는

sample 수가 많은 class가 전체 성능을 과도하게 지배하지 못하도록,

각 class의 Recall(재현율)을 같은 비중으로 반영한 metric(평가지표)임.


4-class classification(4개 클래스 분류)의 예

다음과 같이 4개의 class가 있다고 하자.

실제 class sample 수 맞춘 개수 Recall(재현율)
A 100 90 (90/100 = 0.90)
B 50 30 (30/50 = 0.60)
C 20 10 (10/20 = 0.50)
D 10 2 (2/10 = 0.20)

 

이때 Balanced Accuracy(균형 정확도)는 다음과 같음.

$$\text{Balanced Accuracy} = \frac{0.90+0.60+0.50+0.20}{4} = 0.55$$

즉, balanced accuracy는 55% 임.

 

반면 일반 accuracy는 다음과 같음.

$$\text{Accuracy} = \frac{90+30+10+2}{100+50+20+10} = \frac{132}{180} \approx 0.733$$

즉, 일반 accuracy는 약 73.3%임.

 

이 예에서 accuracy는 73.3%로 비교적 높아 보임.

  • 하지만 class D의 recall은 $0.20$ 에 불과함.
  • 즉, minority class(소수 클래스)인 D를 거의 맞추지 못하고 있음.

Balanced Accuracy(균형 정확도)는
각 class의 recall을 동일한 비중으로 평균내기 때문에,
이런 문제를 더 잘 드러냄.


참고: Binary Classification

Binary Classification(이진분류)에서는 negative class(음성클래스) 에 대한 Recall은 Specificity (특이도)라고도 불림.

 

때문에 다음과 같이 기재된 문헌도 많음:

$$\text{Balanced Accurayc} = \frac{\text{Sensitivity} + \text{Specificity}}{2} = \frac{\text{TPR}+\text{TNR}}{2}$$

 

* $\text{TPR}=\frac{\text{TP}}{\text{TP}+\text{FN}}$ : True Positive Rate(참양성률) = Recall = Sensitivity

* $\text{TNR}=\frac{\text{TN}}{\text{TN}+\text{FP}}$ : True Negative Rate(참음성률) = Specificity

 

위의 식은 앞서의 정의와 정확히 일치하나, 익숙치 않은 경우엔 다르게 보이므로 노파심(?)에서 다시 기재함.

 

참고로, 

ROC Curve에서 사용되는 Fallout(위양성률) 은 1-Specificity 으로 False Positive Rate라고도 불림.

https://dsaint31.me/mkdocs_site/ML/ch02/ml_cls_metrics/?h=roc#receiver-operating-characteristics-roc-and-auc

 

BME

AUC F-score F2 PR ROC accuracy confusion matrix mAP macro micro precision recall sensitivity weighted Performance Measures for Classifiers Confusion matrix Confusion matrix(오차행렬, 혼동행렬)은 row는 label의 ideal class 를 나타내며, column

dsaint31.me


요약

Balanced Accuracy(균형 정확도)는

  • 각 class별 Recall(재현율)을
  • 동일한 비중으로 평균낸 metric(지표)이며,
  • class imbalance(클래스 불균형)가 있는 경우
  • 일반 Accuracy(정확도)보다 더 적절한 평가 지표가 될 수 있음.

같이 보면 좋은 자료

https://ds31x.tistory.com/307

 

[ML] Classification 과 관련 metrics 에 대한 소개.

이 문서는 AI, ML, 그리고 DL의 정의와 이들 간의 차이점을 설명하며,특히 ML의 supervised learning에서 가장 많이 다루는 task인 classification의 종류와 관련 metrics를 설명함.Classifier (분류기):정의: 주어진

ds31x.tistory.com

https://dsaint31.me/mkdocs_site/ML/ch02/ml_cls_metrics/

 

BME

AUC F-score F2 PR ROC accuracy confusion matrix mAP macro micro precision recall sensitivity weighted Performance Measures for Classifiers Confusion matrix Confusion matrix(오차행렬, 혼동행렬)은 row는 label의 ideal class 를 나타내며, column

dsaint31.me


 

728x90

'Programming > ML' 카테고리의 다른 글

Optimism-corrected Accuracy  (0) 2026.05.26
[ML] BFGS, L-BFGS, L-BFGS-B : Quasi-Newton method  (0) 2026.04.27
Linear Regression (Summary)  (0) 2026.04.25
Bootstrap Sampling 기반 Accuracy 추정 지표  (0) 2026.04.14
XAI: Coefficient, Feature importance, and SHAP  (0) 2026.03.24
'Programming/ML' 카테고리의 다른 글
  • Optimism-corrected Accuracy
  • [ML] BFGS, L-BFGS, L-BFGS-B : Quasi-Newton method
  • Linear Regression (Summary)
  • Bootstrap Sampling 기반 Accuracy 추정 지표
dsaint31x
dsaint31x
    반응형
    250x250
  • dsaint31x
    Dsaint31's blog
    dsaint31x
  • 전체
    오늘
    어제
    • 분류 전체보기 (795)
      • Private Life (16)
      • Programming (212)
        • DIP (116)
        • ML (41)
      • Computer (121)
        • CE (54)
        • ETC (31)
        • CUDA (3)
        • Blog, Markdown, Latex (4)
        • Linux (12)
      • ... (369)
        • Signals and Systems (115)
        • Math (177)
        • Linear Algebra (33)
        • Physics (43)
        • 인성세미나 (1)
      • 정리필요. (61)
        • 의료기기의 이해 (6)
        • PET, MRI and so on. (7)
        • PET Study 2009 (1)
        • 방사선 장해방호 (5)
        • 방사선 생물학 (3)
        • 방사선 계측 (9)
        • 기타 방사능관련 (3)
        • 고시 (9)
        • 정리 (18)
      • RI (0)
      • 원자력,방사능 관련법 (2)
  • 블로그 메뉴

    • Math
    • Programming
    • SS
    • DIP
  • 링크

    • Convex Optimization For All
  • 공지사항

    • Test
    • PET Study 2009
    • 기타 방사능관련.
  • 인기 글

  • 태그

    Programming
    numpy
    signals_and_systems
    Term
    Vector
    opencv
    function
    SS
    random
    Optimization
    Probability
    math
    fourier transform
    SIGNAL
    cv2
    linear algebra
    Python
    ML
    인허가제도
    signal_and_system
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
dsaint31x
Balanced Accuracy (균형 정확도)
상단으로

티스토리툴바