Yolo 비전 선전
선전
지금 참여하기
용어집

수신자 작동 특성(ROC) 곡선

ROC 곡선과 AUC를 사용하여 AI/ML에서 분류기 성능을 평가하고, 사기 탐지 및 의료 진단과 같은 작업에서 TPR 대 FPR을 최적화하는 방법을 알아봅니다.

수신기 작동 특성(ROC) 곡선은 이진 분류 모델의 성능을 평가하는 데 사용되는 그래픽 표현입니다. 이진 분류 모델의 성능을 평가하는 데 사용되는 그래픽 표현입니다. 이 곡선은 다양한 분류 임계값에 걸쳐 TPR(정탐률)과 FPR(오탐률) 간의 트레이드 오프를 시각화합니다. 오탐률(FPR) 사이의 균형을 시각화합니다. 머신 러닝 머신 러닝(ML)에서 이 곡선은 모델이 '스팸'과 '스팸이 아닌' 또는 '질병'과 같은 두 가지 클래스를 얼마나 잘 구분할 수 있는지 평가하는 데 기본이 됩니다. "스팸이 아님" 또는 "병든" 대 "건강한". 이러한 비율을 그래프로 표시함으로써 ROC 곡선 는 다음과 같은 단일 수치 메트릭을 넘어 모델의 진단 능력에 대한 포괄적인 시각을 제공합니다. 정확도와 같은 단일 수치 지표를 넘어서는 포괄적인 시각을 제공합니다.

축의 이해

ROC 곡선을 올바르게 해석하려면 축에 표시된 두 가지 메트릭을 이해하는 것이 중요합니다:

  • 진양성률(TPR): 흔히 리콜 또는 민감도라고도 하는 이 메트릭은 모델이 실제 양성 사례의 비율을 실제 양성 사례의 비율을 측정합니다. 예를 들어 보안 시스템에서는 다음과 같습니다. 실제 침입자를 정확하게 탐지한 비율입니다.
  • 오탐률(FPR): 이 메트릭은 실제 음성 인스턴스 중 양성으로 잘못 식별된 비율을 계산합니다. 양성(오탐)으로 잘못 식별되는 비율을 계산합니다. FPR이 낮을수록 오경보가 적다는 것을 의미하며, 이는 다음과 같은 시스템의 사용자 신뢰에 매우 중요한 생체 인증과 같은 시스템에 대한 사용자 신뢰에 생체 인증.

이 곡선은 분류기의 신뢰도 임계값을 신뢰 임계값을 0에서 1까지 변경하여 곡선을 생성합니다. ROC 곡선의 각 점은 특정 결정 임계값에 해당하는 민감도/특이도 쌍을 나타냅니다. A 왼쪽 아래에서 오른쪽 위까지의 대각선은 예측 기술이 없는 무작위 분류기(동전 던지기 던지기), 왼쪽 상단 모서리로 가파르게 구부러지는 곡선은 성능이 우수한 모델을 나타냅니다.

실제 애플리케이션

ROC 곡선은 다양한 산업에서 의사 결정 임계값을 최적화하는 데 널리 활용됩니다. 모델 배포를 위한 의사 결정 임계값을 최적화하는 데 사용됩니다.

  1. 의료 진단: In 의료 이미지 분석에서 연구자들은 ROC 곡선을 사용해 폐렴이나 종양과 같은 상태를 감지하기 위한 모델을 조정합니다. 양성 사례를 놓치지 않기 위해 높은 TPR이 우선시됩니다. 양성 사례를 놓치지 않기 위해 약간 더 높은 FPR을 수용하더라도 높은 TPR을 우선시합니다. 이 균형은 다음과 같은 기관의 안전 표준을 준수하는 데 다음과 같은 기관의 안전 표준을 FDA.
  2. 금융 사기 탐지: 금융 기관에서 사용하는 금융 분야의 AI를 사용하여 사기 거래를 식별합니다. 여기서 ROC 곡선은 분석가가 대부분의 사기 시도를 포착하는 임계값을 선택하는 데 도움이 됩니다. 시도(높은 회수율)를 포착하는 임계값을 선택하는 데 도움이 됩니다. 고객 경험.

ROC에 대한 확률 계산하기

ROC 곡선을 그리려면 최종 클래스뿐만 아니라 양수 클래스에 대한 예측 확률도 필요합니다. 레이블이 필요합니다. 다음 예는 이러한 확률을 추출하는 방법을 보여줍니다. YOLO11 분류 모델에서 ultralytics 패키지입니다.

from ultralytics import YOLO

# Load a pretrained YOLO11 classification model
model = YOLO("yolo11n-cls.pt")

# Run inference on an image to get prediction results
results = model("path/to/image.jpg")

# Access the probability distribution for all classes
# These scores are necessary inputs for calculating ROC and AUC
probs = results[0].probs.data
print(f"Class probabilities: {probs}")

테스트 데이터 세트에 대해 이러한 확률을 얻으면 다음과 같은 라이브러리를 사용할 수 있습니다. Scikit-learn과 같은 라이브러리를 을 사용하여 곡선을 그리는 데 필요한 FPR 및 TPR 값을 계산할 수 있습니다.

ROC와 다른 평가 지표 비교

ROC 곡선은 강력한 도구이지만, 관련 평가 개념과 구분하는 것이 도움이 됩니다:

  • 곡선 아래 영역(AUC): 곡선 아래 면적 곡선 아래 면적(AUC) 은 ROC 곡선에서 파생된 스칼라 값입니다. ROC는 시각적 도표인 반면, AUC는 전체 성능을 0과 1 사이의 단일 수치로 정량화하여 0과 1 사이의 단일 수치로 정량화하여 서로 다른 지도 학습 모델 간의 쉽게 비교할 수 있습니다.
  • 정밀도-리콜 곡선: 매우 불균형한 데이터 세트(예: 인구의 1%에 영향을 미치는 희귀 질환 희귀 질환 등)을 다루는 경우, ROC 곡선이 지나치게 낙관적인 시각을 제공할 수 있습니다. 이러한 경우 정밀도-재콜 곡선 은 True를 고려하지 않고 소수 클래스 성과에 직접 초점을 맞추기 때문에 더 많은 정보를 제공하는 경우가 많습니다. 네거티브.
  • 혼동 매트릭스: A 혼동 매트릭스는 단일 특정 임계값에서의 성능에 대한 성능에 대한 스냅샷을 제공하여 정탐, 오탐, 오탐의 정확한 개수를 보여줍니다, 오탐 및 미탐의 정확한 수를 보여줍니다. ROC 곡선은 가능한 모든 임계값에서 생성된 혼동 행렬의 정보를 효과적으로 요약합니다. 의 정보를 효과적으로 요약합니다.

객체 감지와 관련된 작업의 경우 다음과 같은 메트릭이 사용됩니다. 평균 평균 정밀도(mAP) 와 같은 메트릭이 와 같은 메트릭이 일반적으로 사용되지만, 이러한 모델의 기본 분류 구성 요소에는 ROC 곡선이 여전히 적합합니다. 이러한 차이점을 이해하면 개발자가 특정 컴퓨터 비전(CV) 과제에 적합한 메트릭을 선택할 수 있습니다. 올바른 메트릭을 선택할 수 있습니다.

Ultralytics 커뮤니티 가입

AI의 미래에 동참하세요. 글로벌 혁신가들과 연결하고, 협력하고, 성장하세요.

지금 참여하기