MCP로 연결 →

계산 입력

공식

광고

결과

정확도
75%
전체 예측 중 맞힌 비율
정확도 (비율) 0.75
올바른 예측 (TP + TN) 150
전체 예측 200

정확도 계산기란?

정확도(Accuracy)는 분류 모델의 성능을 평가할 때 가장 널리 쓰이는 지표 중 하나입니다. 모델이 내린 전체 예측 가운데 맞힌 비율을 나타내며, 양성으로 올바르게 예측한 경우와 음성으로 올바르게 예측한 경우를 모두 포함합니다. 이 계산기는 혼동 행렬(confusion matrix)의 네 칸을 입력하면 정확도를 비율과 백분율로 한 번에 환산해 줍니다.

사용 방법

혼동 행렬에서 얻은 네 가지 값을 입력하세요.

  • TP (진양성, True Positives) — 실제 양성을 양성으로 올바르게 예측한 건수.
  • TN (진음성, True Negatives) — 실제 음성을 음성으로 올바르게 예측한 건수.
  • FP (위양성, False Positives) — 실제 음성을 양성으로 잘못 예측한 건수.
  • FN (위음성, False Negatives) — 실제 양성을 음성으로 잘못 예측한 건수.

값을 넣으면 정확도가 자동으로 계산됩니다. 도구가 없다면 네 숫자를 더한 뒤 아래 공식을 적용하면 됩니다.

공식 풀이

정확도 = (TP + TN) / (TP + TN + FP + FN). 분자는 올바르게 예측한 모든 건수를, 분모는 전체 예측 건수를 의미합니다. 여기에 100을 곱하면 백분율로 바꿀 수 있습니다.

$$\text{Accuracy} = \dfrac{TP + TN}{TP + TN + FP + FN}$$$$\text{Accuracy \%} = \text{Accuracy} \times 100$$
광고
TP, TN, FP, FN 셀을 보여주는 2x2 혼동 행렬
혼동 행렬의 네 가지 결과: 정확한 예측(TP, TN)은 초록색, 오류(FP, FN)는 빨간색.

예제로 살펴보기

어떤 모델의 결과가 \(TP = 80\), \(TN = 70\), \(FP = 20\), \(FN = 30\)이라고 가정해 봅시다. 올바른 예측 = 80 + 70 = 150, 전체 = 80 + 70 + 20 + 30 = 200입니다. 따라서 정확도 = 150 / 200 = 0.75, 즉 75%가 됩니다.

$$\text{Accuracy} = \dfrac{80 + 70}{80 + 70 + 20 + 30} = \dfrac{150}{200} = 0.75 = 75\%$$

다양한 시나리오에서의 정확도

동일한 정확도 공식 \(\text{정확도} = \frac{\text{TP} + \text{TN}}{\text{TP} + \text{TN} + \text{FP} + \text{FN}} \times 100\%\) 은 매우 다른 모델 동작을 숨길 수 있습니다. 아래 각 시나리오는 총 100개의 사례를 사용하므로 백분율을 직접 비교할 수 있습니다.

시나리오 TP TN FP FN 정확도
균형잡힌 데이터셋, 좋은 모델 45 45 5 5 90%
불균형, 다수 음성 (희귀 질병) 2 93 2 3 95%
"항상 음성 예측" 기준선 0 95 0 5 95%
높은 거짓 양성 (과도한 플래깅) 48 22 28 2 70%
높은 거짓 음성 (누락된 양성) 20 50 0 30 70%

핵심 요점은 두 번째 행과 세 번째 행의 비교입니다. 다수 클래스만 예측하는 모델이 실제로 일부 양성 사례를 감지하는 모델과 동일한 95%를 얻습니다. 균형잡힌 데이터셋(1번 행)에서는 정확도가 훨씬 더 유용합니다. 마지막 두 행은 동일한 70% 정확도를 가진 두 모델이 상반된 비호환적인 방식으로 실패할 수 있음을 보여줍니다. 하나는 거짓 경보로 가득 차고, 다른 하나는 조용히 양성을 놓칩니다.

정확도 점수 해석

정확도는 분류기가 올바르게 예측한 모든 예측의 비율입니다. 정확도 90%는 10개의 사례 중 9개가 올바르게 라벨이 지정되었으며, 상응하는 오류율은 \(100\% - 90\% = 10\%\)입니다. 이는 직관적이고 소통하기 쉽지만, 정확히 그래서 자주 오독됩니다.

항상 정보 없음 기준선과 비교하세요. 가장 정직한 타당성 검사는 다수 클래스 기준선입니다. 사례의 95%가 음성이면, "음성"이라고 맹목적으로 예측하는 분류기는 이미 95%를 얻습니다. 실제 모델은 그 기준선을 이겨야 가치가 있습니다. 50/50 분할에서 95% 정확도는 인상적이지만 95/5 분할에서는 무의미합니다.

높은 정확도가 오도할 때. 강하게 불균형한 데이터에서는 정확도가 다수 클래스에 지배됩니다. 사기 탐지기, 희귀 질병 검사 또는 결함 탐지기는 99% 정확도를 보고하면서 실제로 중요한 희귀 양성 사례를 거의 포착하지 못할 수 있습니다. 이 경우들에서 거짓 음성과 거짓 양성의 비용은 보통 매우 다르며, 단일 전체 백분율은 이를 포착할 수 없습니다.

정확도를 보완하는 메트릭:

  • 정밀도 — 양성으로 예측된 사례 중 실제로 양성인 경우: \(\text{TP}/(\text{TP}+\text{FP})\). 거짓 양성이 비용이 클 때 사용하세요.
  • 재현율 (민감도) — 실제 양성 중 포착한 경우: \(\text{TP}/(\text{TP}+\text{FN})\). 양성을 놓치는 것이 비용이 클 때 사용하세요.
  • 특이도 — 실제 음성 중 올바르게 통과한 경우: \(\text{TN}/(\text{TN}+\text{FP})\).
  • F1 점수 — 정밀도와 재현율의 조화 평균으로, 양성 클래스에서 두 가지를 균형잡는 단일 숫자입니다.
  • 균형잡힌 정확도 — 민감도와 특이도의 평균으로, 클래스 불균형을 교정하며 클래스가 한쪽으로 치우쳐 있을 때 더 나은 주요 지표입니다.

위의 균형잡힌 예(TP=45, FP=5, FN=5)에서 재현율과 정밀도는 모두 \(45/50 = 90\%\)이므로 정확도, 정밀도 및 재현율이 일치합니다. 이는 데이터셋이 잘 균형잡혀 있다는 신호입니다. 이들이 크게 달라질 때는 단일 정확도 숫자보다 클래스별 메트릭을 신뢰하세요. 이는 일반적인 기술 정보이지 특정 문제의 도메인별 평가를 대체하지 않습니다.

광고

정의 및 용어집

참 양성 (TP)
모델이 양성으로 올바르게 예측한 양성 사례 (예: 병든 환자가 병들었다고 플래그됨).
참 음성 (TN)
모델이 음성으로 올바르게 예측한 음성 사례 (예: 건강한 환자가 건강하다고 통과됨).
거짓 양성 (FP)
양성으로 잘못 예측된 음성 사례 — 거짓 경보. 제1종 오류라고도 불립니다.
거짓 음성 (FN)
음성으로 잘못 예측된 양성 사례 — 놓친 경우. 제2종 오류라고도 불립니다.
혼동 행렬
예측 대 실제 클래스를 교차 집계한 2×2 표로, TP, TN, FP 및 FN이 네 개의 셀입니다. 거의 모든 분류 메트릭의 출처입니다.
정확도
모든 예측 중 올바른 예측의 비율: \((\text{TP}+\text{TN})/(\text{TP}+\text{TN}+\text{FP}+\text{FN})\), 보통 백분율로 표현됩니다.
오류율
잘못된 예측의 비율: \((\text{FP}+\text{FN})/(\text{TP}+\text{TN}+\text{FP}+\text{FN}) = 1 - \text{정확도}\).
정밀도
양성 예측값: \(\text{TP}/(\text{TP}+\text{FP})\) — 양성 예측이 얼마나 신뢰할 수 있는지.
재현율
민감도 또는 참 양성율: \(\text{TP}/(\text{TP}+\text{FN})\) — 실제 양성 중 얼마나 많이 찾았는지.
특이도
참 음성율: \(\text{TN}/(\text{TN}+\text{FP})\) — 실제 음성 중 올바르게 식별된 경우.
F1 점수
정밀도와 재현율의 조화 평균: \(2 \cdot \frac{\text{정밀도} \cdot \text{재현율}}{\text{정밀도} + \text{재현율}}\), 양성 클래스 성능의 단일 균형잡힌 측정.

자주 묻는 질문

정확도는 항상 좋은 지표인가요? 그렇지 않습니다. 데이터가 불균형한 경우(예: 전체의 95%가 음성)에는 모델이 무조건 다수 클래스만 예측해도 높은 정확도가 나올 수 있습니다. 정밀도(Precision), 재현율(Recall), F1 점수도 함께 확인하세요.

정확도의 범위는 어떻게 되나요? 0(모든 예측이 틀림)부터 1(모든 예측이 맞음)까지, 백분율로는 0%~100% 사이의 값을 가집니다.

다중 클래스 문제에도 사용할 수 있나요? 가능합니다. TP + TN을 모든 클래스에서 올바르게 분류한 전체 샘플 수로, 분모를 전체 샘플 수로 보면 됩니다.

최종 업데이트: