서론
이전에 FAR(부재율)과 FRR(거부율)을 포스팅할 때 ROC곡선과 AUC를 올린다고 했었는데 이제서야 올린다.
ROC곡선과 AUC는 이진 분류 문제에서 모델의 성능을 평가하기 위해 사용되는 주요 지표이다.
ROC와 AUC
- ROC 곡선을 통해 모델이 어떻게 다양한 임계값에서 성능을 발휘하는 지 파악
- AUC는 단일 숫자로 모델의 성능을 요약하므로 여러 모델 비교할 때 유용
- ROC와 AUC는 클래스 불균형이 있는 데이터셋에서 유용한 평가 방법
- 정확도(Accuracy)와 달리, ROC와 AUC는 클래스 불균형의 영향을 적게받음
이진 분류(Binary Classification)
- 두 개의 클래스(예: 양성/음성, 참/거짓) 중 하나로 데이터를 분류하는 문제입니다.
TP (True Positive)
- 실제로 양성인 데이터를 양성으로 올바르게 분류한 경우.
TN (True Negative)
- 실제로 음성인 데이터를 음성으로 올바르게 분류한 경우.
FP (False Positive)
- 실제로 음성인 데이터를 양성으로 잘못 분류한 경우.
FN (False Negative)
- 실제로 양성인 데이터를 음성으로 잘못 분류한 경우.
ROC 곡선 (Receiver Operating Characteristic Curve)
- ROC 곡선은 분류 모델의 진단 능려을 시각적으로 평가하는 그래프
- ROC 곡선은 다양한 임계값을 기준으로 FPR, TPR 변화를 나타내고 임계값은 모델이 양성 클래스로 분류하기 위해 필요한 최소 확률
X축 : FPR(False Positive Rate, 거짓양성률) - FP / (FP + TN)
Y축 : TPR(True Positive Rate, 참양성률) - TP / (TP + FN)
AUC (Area Under the Curve)
- ROC 곡선 아래의 면적을 의미
- 모델의 성능을 수치적으로 평가
- 0과 1사이의 값을 가짐
> 0.5 : 모델이 랜덤 추측과 동일한 성능을 가짐
> 1.0 : 완벽한 모델, 모든 양성 샘플과 음성 샘플을 완벽하게 분류
> 0.7 - 0.8 : 양호한 성능
> 0.8 - 0.9 : 아주 좋은 성능
> 0.9이상 : 뛰어난 성능
ROC 곡선 및 AUC
- 주황색 곡선은 ROC 곡선을 나타냄
- 주황색 곡선 아래 부분이 AUC
- 점선은 무작위 추측의 기준선
- 아래 그림처럼 곡선이 진행된다면 비교적 높은 성능을 가지고 있다.
결론
FPR과 TPR은 보안기사를 공부하면 무조건 나오는 문제이다. 풀기도 쉽고 이해만 한다면 정답을 맞출 수 있을 것 같다.
실제로 직무에서는 이진 분류 문제를 깊게 다뤄본적도 없어 직무에서는 사용해 본 적이 없다.
참조
https://developers.google.com/machine-learning/crash-course/classification/roc-and-auc?hl=ko
'정보보안 > 정보보호기초' 카테고리의 다른 글
타이포스쿼팅(Typosquatting) (10) | 2024.10.14 |
---|---|
SQL Injection 종류와 공격 예시 (0) | 2024.07.26 |
FAR(부재율)과 FRR(거부율), False Positive, False Negative 정리 (0) | 2024.07.11 |
리버스 코드 엔지니어링 (PE파일, 링커, 스택 메모리 등) (0) | 2024.07.08 |
YARA와 정규표현식 (0) | 2024.07.04 |