AI의 변화, 근거와 맥락까지.AI NEWS & CONTEXT
AI 사전 · 성능과 평가

정확도

정확도는 분류 모델이 맞게 예측한 사례의 비율을 나타내는 평가 지표다. 전체 예측 수에 대한 정답 예측 수로 계산하며 가장 직관적이고 널리 쓰인다. 다만 클래스가 불균형한 데이터에서는 성능을 과대평가할 수 있어 정밀도, 재현율, F1 점수와 함께 봐야 한다.

정확도
분류머신러닝 분류 모델의 평가 지표[1]
정의전체 예측 중 맞게 예측한 것의 비율[1]
계산식(TP + TN) ÷ (TP + TN + FP + FN)[1]
값의 범위0~1 (0%~100%)[1]
주요 한계클래스가 불균형한 데이터에서 성능을 과대평가할 수 있음[2] [3]
대표 사용처균형 잡힌 데이터의 분류 과제와 벤치마크 비교[1]

쉽게 말하면, 정확도는 모델이 문제를 맞힌 비율을 백분율로 나타낸 값이다. 100개 중 95개를 맞히면 정확도는 95%다. 다만 정답이 한쪽 종류에 치우친 데이터에서는 이 숫자만으로 모델이 쓸모 있는지 판단하기 어려울 수 있다.[1]

1. 개요

정확도(accuracy)는 분류 모델이 맞게 예측한 비율을 재는 분류 지표다.[3] 전체 예측 수에 대한 정답 예측 수의 비율이며, 정확도가 95%인 모델은 100건 가운데 95건을 맞힌다. 정확도는 가장 직관적이고 머신러닝에서 가장 널리 보고되는 평가 지표 가운데 하나다.[1]

이진 분류에서 정확도는 참양성(TP), 참음성(TN), 거짓양성(FP), 거짓음성(FN) 네 값으로 (TP + TN) ÷ (TP + TN + FP + FN)과 같이 계산된다. 정확도가 높다고 해서 항상 모델이 좋다는 뜻은 아니다. 불균형 데이터에서는 다수 클래스만 항상 예측하는 모델이 점수를 높게 받고도 실제로는 쓸모없을 수 있다.[2][3]

정확도는 직관적이어서 실무자가 분류기를 학습시킨 뒤 가장 먼저 확인하는 지표인 경우가 많다. 기술 배경이 없는 이해관계자에게 설명하기도 쉽다. 그러나 이 단순함은 오해를 부를 수 있다. 정확도 점수가 높다고 해서 모델이 항상 잘 작동하는 것은 아니며, 이 문제는 이 글의 뒤쪽 절에서 자세히 다룬다.[1]

분류 결과의 맞고 틀림을 세는 생각은 현대 머신러닝보다 앞선다. 통계학에서는 적어도 20세기 중반부터 분류 오류율(1에서 정확도를 뺀 값)이 판별 분석과 다른 분류 방법을 평가하는 데 쓰였다.[3] 1950년대 말과 1960년대에 퍼셉트론을 개발하던 프랭크 로젠블랫(Frank Rosenblatt) 등 초기 연구자들은 혼동 행렬로 사람과 기계의 시각·청각 자극 분류를 비교했다.[1]

머신러닝이 뚜렷한 분야로 성장하면서 정확도는 지도 학습 분류 과제 전반의 기본 평가 지표가 되었다. 그 적용 범위는 이미지 인식부터 의료 진단까지 다양하다.[1]

2. 계산 방법

정확도는 정답과 일치한 예측 수를 전체 예측 수로 나눈 값이다. 식으로 쓰면 다음과 같다.[1]

\text{Accuracy} = \frac{\text{Number of correct predictions}}{\text{Total number of predictions}}
정확도의 기본 정의

이진 분류 문제라면 같은 식을 혼동 행렬의 네 칸으로 나타낼 수 있다.[1]

\text{Accuracy} = \frac{\text{TP} + \text{TN}}{\text{TP} + \text{TN} + \text{FP} + \text{FN}}
이진 분류의 정확도
혼동 행렬 네 칸의 의미
기호이름의미
TP참양성(True Positive)양성 사례를 양성으로 맞게 예측[1]
TN참음성(True Negative)음성 사례를 음성으로 맞게 예측[1]
FP거짓양성(False Positive)음성 사례를 양성으로 잘못 예측(제1종 오류)[1]
FN거짓음성(False Negative)양성 사례를 음성으로 잘못 예측(제2종 오류)[1]

예를 들어 고양이와 개 사진 100장으로 테스트한 분류 모델이 그중 80장을 맞히면, 정확도는 80/100 = 0.8, 곧 80%다.[1]

정확도의 여집합은 오류율(misclassification rate, 0-1 손실)이다.[3] 오류율은 1에서 정확도를 뺀 값이며, FP와 FN의 합을 전체 예측 수로 나눈 값과 같다.[3]

\text{Error Rate} = 1 - \text{Accuracy} = \frac{\text{FP} + \text{FN}}{\text{TP} + \text{TN} + \text{FP} + \text{FN}}
오류율의 정의

정확도가 0.92이면 오류율은 0.08이며 예측의 8%가 틀렸다는 뜻이다. 정확도와 오류율의 합은 항상 1.0이므로 담고 있는 정보는 정확히 같다. 어느 쪽을 보고할지는 대체로 관례의 문제다. 일부 분야와 대회는 모델의 성공보다 실수를 부각하기 위해 오류율을 선호한다.[1]

클래스가 셋 이상인 다중 클래스 문제에서도 정확도는 자연스럽게 확장된다. 클래스가 k개면 분류기는 각 사례에 k개 레이블 중 하나를 붙이고, 정확도는 여전히 전체 사례 수에 대한 정답 예측 수다. k 클래스 문제의 혼동 행렬은 k×k 행렬이 되며, 대각선 원소는 맞게 분류한 사례, 대각선 밖 원소는 잘못 분류한 사례를 뜻한다.[1]

다중 레이블 분류에서는 한 사례가 여러 클래스에 동시에 속할 수 있다. 이 설정에서 가장 엄격한 정확도는 부분집합 정확도(subset accuracy, 완전 일치 비율)이며, 예측한 레이블 집합이 정답 레이블 집합과 정확히 같을 때만 맞은 것으로 센다. 사이킷런(scikit-learn)의 accuracy_score 함수는 다중 레이블 입력에서 기본으로 부분집합 정확도를 쓴다.[4] 사이킷런 문서도 이 함수가 샘플마다 예측한 레이블 집합이 정답 레이블 집합과 정확히 일치해야 한다는 기준으로 계산한다고 설명한다.[5] 이 측정은 매우 엄격하므로 다중 레이블 환경에서는 다른 지표보다 낮게 나오는 경향이 있다.[3]

3. 정확도가 적합한 경우

데이터셋의 클래스 수가 대체로 비슷할 때 정확도는 매우 유용한 지표다. 이때 정확도는 모델의 전체 성능을 신뢰할 수 있게 보여 준다.[1]

정확도는 다음 조건에서 잘 작동한다.[1]

정확도가 잘 작동하는 조건
조건정확도가 잘 작동하는 이유
클래스 분포가 균형 잡힘어느 클래스도 빈도만으로 점수를 지배하지 않음[1]
오분류 비용이 같음거짓양성의 비용이 거짓음성과 대략 비슷함[1]
요약 지표 하나가 필요함모든 예측을 하나의 숫자로 압축해 빠른 비교가 가능함[1]
벤치마크 비교CIFAR-10, MNIST처럼 클래스가 균형 잡힌 표준 데이터셋에서는 정확도를 주요 순위표 지표로 씀[1]

표준 이미지 분류 벤치마크에서 정확도는 오랫동안 기본 지표였다. ImageNet에서는 top-1과 top-5 정확도가 논문과 대회에서 표준 지표로 보고된다. MNIST(손글씨 숫자 인식)와 CIFAR-10(10개 균형 클래스의 사물 인식)은 클래스 분포가 고르기 때문에 정확도를 쓴다.[1]

4. 정확도의 역설

클래스가 불균형하면(한 클래스의 사례 수가 다른 클래스보다 뚜렷하게 많으면) 정확도는 모델 성능의 믿을 만한 측정치가 아닐 수 있다. 이 현상을 정확도의 역설(accuracy paradox)이라 부르며, 예측 분석에서 정확도가 오해를 부를 수 있다는 역설적 발견을 가리킨다.[3] 다수 클래스만 항상 예측하는 모델도 정확도 점수는 높을 수 있지만, 해당 과제에서는 완전히 쓸모없을 수 있다.[2]

Chicco and Jurman은 정확도와 F1 점수가 특히 불균형 데이터셋에서 위험할 만큼 과도하게 낙관적이고 부풀려진 결과를 보일 수 있다고 경고했다.[2]

4.1. 실제 사례

클래스가 불균형한 데이터셋에서 정확도가 오해를 부르는 구체적 사례는 다음과 같다.[1]

불균형 데이터에서 정확도의 착시
영역클래스 분포단순 전략정확도실제 쓸모
사기 탐지정상 98%, 사기 2%항상 「정상」으로 예측98%사기를 하나도 탐지하지 못함[1]
스팸 필터링정상 메일 90%, 스팸 10%항상 「스팸 아님」으로 예측90%스팸을 하나도 걸러내지 못함[1]
의료 선별 검사건강 99.5%, 질병 0.5%항상 「건강」으로 예측99.5%질병 사례를 모두 놓침[1]
테러 탐지위협 아님 99.999%항상 「위협 아님」으로 예측99.999%완전히 기능하지 않음[1]

정상 거래가 98%이고 사기 거래가 2%뿐인 사기 탐지 시스템에서, 모든 거래를 정상으로 표시하는 모델은 정확도 98%를 얻는다. 인상적으로 들리는 이 숫자에도 이 모델은 사기를 잡는다는 주된 목적에 실패한다.[1]

4.2. 불균형이 정확도를 깨뜨리는 이유

근본 원인은 정확도가 맞은 예측을 모두 같은 비중으로 계산하기 때문이다. 불균형 데이터셋에서는 다수 클래스를 맞히는 것이 소수 클래스를 맞히는 것보다 정확도 점수에 훨씬 크게 기여한다. 그래서 모델은 소수 클래스를 무시하고도 높은 정확도를 보고할 수 있다. 정밀도, 재현율, F1 점수, 매튜스 상관계수(MCC) 같은 대안 지표는 예측이 클래스별로 어떻게 분포하는지를 반영하기 위해 존재한다.[2][3]

수치로 확인하면, 도시 보안 시스템이 100만 명을 감시하고 그중 10명이 실제 위협이라고 하자. 실제 위협 10명을 모두 포함해 1,000명에 경보를 발령하는 시스템은 정확도 99.9%(100만 명 중 999,010명 정답)를 얻는다. 그러나 경보를 받은 1,000명 가운데 실제 위협은 10명뿐이라 정밀도는 1%다. 즉 경보의 99%가 오경보다. 정확도 점수는 이 문제를 완전히 가린다.[1]

5. 문맥별 정확도

정확도는 주로 분류와 연결되지만, 이 용어는 머신러닝과 데이터 과학의 다른 영역에서도 쓰이며 때로는 다른 뜻을 가진다.[1]

분류에서 정확도는 앞서 정의한 표준 의미를 가진다. 예측 레이블이 정답 레이블과 일치하는 사례의 비율이며, 이진·다중 클래스·다중 레이블 설정 모두에 적용된다.[1]

회귀에서 정확도는 표준 지표가 아니다. 회귀는 출력이 이산 레이블이 아니라 연속값인 문제이며, 평균제곱오차(MSE), 제곱근 평균제곱오차(RMSE), 평균절대오차(MAE), 결정계수(R-squared) 같은 지표를 쓴다. 일부 실무자는 회귀에서도 정확도를 예측값과 실제값이 얼마나 가까운지라는 느슨한 뜻으로 쓰지만, 두 가지 측정 개념을 뒤섞으므로 기술 문서에서는 피해야 한다.[1]

정보 검색에서 분류 정확도와 가장 가까운 개념은 검색 효과성이지만, 표준 지표는 다르다. 정밀도와 재현율은 시스템이 관련 문서를 반환하고 무관한 문서를 피하는지 평가하는 데 쓰인다. 정밀도@k(P@k), 평균 정밀도(MAP), 정규화 할인 누적 이득(nDCG) 같은 지표는 순위 위치까지 반영하기 때문에 선호된다.[3] 정보 검색에서 분류 정확도는 맞지 않는다. 문서 모음의 대부분은 어떤 질의와도 무관하므로 극단적인 클래스 불균형 문제가 생긴다.[1]

6. 다른 지표와의 차이

정확도는 분류 지표 계열의 하나이며, 정밀도와 재현율과 F1 점수 같은 다른 지표는 모델 성능의 서로 다른 면을 포착한다.[3] 이 지표들과 정확도가 어떻게 관련되는지 알면 문제에 맞는 평가 방법을 고르는 데 도움이 된다.[1]

6.1. 정밀도·재현율·특이도

정밀도(양성 예측도, positive predictive value)는 양성으로 예측한 사례 가운데 실제로 양성인 비율이다.[3]

\text{Precision} = \frac{\text{TP}}{\text{TP} + \text{FP}}
정밀도

정밀도는 양성으로 표시한 사례 가운데 실제 양성이 얼마나 되는지에 답한다. 정밀도가 높으면 모델이 오경보를 거의 내지 않는다. 거짓양성의 비용이 큰 상황에서 특히 중요하며, 정상 메일을 스팸으로 표시하면 업무에 방해가 되는 이메일 스팸 필터링과 잘못된 혐의가 심각한 결과를 낳는 형사 사법이 여기에 해당한다.[1]

재현율(민감도, sensitivity, 참양성률)은 실제 양성 사례 가운데 모델이 맞게 찾아낸 비율이다.[3]

\text{Recall} = \frac{\text{TP}}{\text{TP} + \text{FN}}
재현율

재현율은 실제로 양성인 사례 가운데 모델이 몇 개를 찾아냈는지에 답한다. 재현율이 높으면 모델이 양성 사례를 적게 놓친다. 재현율은 암 진단을 놓치면 위험한 의료 진단과 사기 거래를 놓치면 금융 손실이 생기는 사기 탐지에서 중요하다.[1]

특이도(참음성률, true negative rate)는 모델이 음성 사례를 얼마나 잘 식별하는지 나타낸다.[1]

\text{Specificity} = \frac{\text{TN}}{\text{TN} + \text{FP}}
특이도

재현율이 양성 클래스에 초점을 맞춘다면 특이도는 음성 클래스에 초점을 맞춘다. 민감도와 특이도를 함께 보면 모델이 두 클래스를 얼마나 잘 다루는지 전체 그림을 얻을 수 있다. 두 지표는 의학과 임상 연구에서 두드러지게 쓰인다.[1]

6.2. F1 점수와 MCC

F1 점수는 정밀도와 재현율의 조화 평균이다.[1]

\text{F1} = \frac{2 \cdot \text{Precision} \cdot \text{Recall}}{\text{Precision} + \text{Recall}}
F1 점수

F1 점수는 0에서 1 사이이며 정밀도와 재현율 사이의 균형을 나타낸다. 클래스 분포가 고르지 않을 때 유용한데, 한쪽을 희생해 다른 쪽을 높인 모델을 벌하기 때문이다. 정밀도와 재현율의 차이가 크면 F1 점수는 둘 가운데 낮은 쪽으로 끌려가, 정확도가 가릴 수 있는 약점을 드러낸다.[1]

매튜스 상관계수(Matthews correlation coefficient, MCC)는 혼동 행렬의 네 칸을 모두 반영하는 균형 잡힌 지표다.[2]

\text{MCC} = \frac{\text{TP} \cdot \text{TN} - \text{FP} \cdot \text{FN}}{\sqrt{(\text{TP}+\text{FP})(\text{TP}+\text{FN})(\text{TN}+\text{FP})(\text{TN}+\text{FN})}}
MCC

MCC는 -1에서 +1 사이 값을 가진다. +1은 완벽한 예측, 0은 무작위 추측 수준의 성능, -1은 완전한 불일치를 뜻한다. Chicco and Jurman은 2020년 「BMC Genomics」에 발표한 연구에서 MCC가 불균형 데이터셋을 포함한 이진 분류 평가에서 F1 점수와 정확도보다 더 많은 정보를 준다는 것을 보였다.[2]

이 연구의 예시에서 양성 95개, 음성 5개로 이뤄진 불균형 데이터에 항상 양성으로 예측하는 분류기는 정확도 95%와 F1 점수 0.974를 얻었지만, MCC는 0.14에 그쳐 거의 쓸모없음을 올바르게 드러냈다.[2] 저자들은 MCC가 혼동 행렬의 네 범주 모두에서 좋은 결과를 낸 경우에만 높은 점수를 준다고 주장하며, 그래서 이진 평가의 기본값으로 권장한다.[2]

6.3. 지표 선택 요약

다음 표는 지표별로 언제 쓰는지 요약한다.[1]

지표별 계산식과 적합한 용도
지표계산식범위적합한 용도
정확도(TP+TN)/(TP+TN+FP+FN)0~1균형 잡힌 데이터셋, 빠른 개요[1]
정밀도TP/(TP+FP)0~1거짓양성 최소화[1]
재현율TP/(TP+FN)0~1거짓음성 최소화[1]
F1 점수정밀도와 재현율의 조화 평균0~1불균형 데이터셋, 정밀도와 재현율 사이의 절충[1]
특이도TN/(TN+FP)0~1음성 클래스 성능 평가[1]
MCC예측과 실제 사이의 상관-1~+1불균형 데이터셋, 포괄적 평가[1]

7. 정확도의 변형

특정 환경에서 표준 정확도가 갖는 한계를 보완하기 위해 정확도의 여러 변형이 개발되었다.[1]

균형 정확도(balanced accuracy)는 클래스별 재현율(민감도)의 평균을 계산해 클래스 불균형을 보정한다.[6]

\text{Balanced Accuracy} = \frac{\text{Sensitivity} + \text{Specificity}}{2}
이진 분류의 균형 정확도

다중 클래스 문제에서는 클래스별 재현율을 단순 평균하는 매크로 평균을 쓴다.[6]

\text{Balanced Accuracy} = \frac{1}{n_{\text{classes}}} \sum_i \text{recall}_i
다중 클래스의 균형 정확도

이진 분류기가 다수 클래스의 재현율은 100%, 소수 클래스의 재현율은 0%를 기록하면, 95 대 5로 나뉜 데이터에서 표준 정확도는 95%지만 균형 정확도는 50%가 된다. 이 값은 모델이 소수 클래스를 학습하지 못했다는 사실을 정확히 드러낸다.[6] 사이킷런은 sklearn.metrics 모듈에서 balanced_accuracy_score를 제공한다.[4] adjusted 매개변수는 점수를 재조정해 무작위 성능이 1/n_classes 대신 0이 되게 하므로, 우연 수준과 비교하기 쉬워진다.[4][6]

균형 정확도는 클래스 균형 샘플 가중치를 적용해 accuracy_score를 계산한 것과 같다.[4] 일부 클래스가 훨씬 드문 데이터셋에서 단일 수치를 보고할 때 특히 유용하다.[1]

상위 k 정확도(top-k accuracy)는 정답 레이블이 모델이 매긴 확률이나 점수 기준 상위 k개 클래스 안에 있으면 맞은 것으로 센다. 상위 1 정확도는 표준 정확도와 같다.[1]

상위 5 정확도는 ILSVRC(ImageNet 대규모 시각 인식 대회)에서 널리 알려졌다. 이 대회에서 모델은 이미지를 1,000개 범주 중 하나로 분류해야 했다. 많은 이미지에는 모호한 내용이나 여러 사물이 들어 있어, 상위 5 정확도는 가장 확신하는 예측 5개 안에 정답이 있으면 점수를 주었다. 딥러닝 모델인 AlexNet은 ILSVRC 2012에서 우승해 현대 딥러닝 시대를 열었으며, 상위 5 오류율 15.3%를 기록해 2위 참가작의 26.2%를 크게 앞섰다.[7] 2015년에는 ResNet이 상위 5 오류율을 3.57%까지 낮춰, 이 벤치마크에서 추정된 사람의 상위 5 오류율 약 5.1%를 넘어섰다.[7][1]

사이킷런은 top_k_accuracy_score 함수로 이 지표를 계산한다.[4] 상위 k 정확도는 추천 시스템과 정보 검색에서도 흔히 쓰인다.[1]

클래스별 정확도(per-class accuracy, class-wise accuracy라고도 함)는 클래스마다 따로 정확도를 계산한다. 이렇게 나누면 모델이 모든 클래스에서 고르게 성능을 내는지, 아니면 일부 클래스만 잘 맞히고 나머지는 못 맞히는지 드러난다. 어떤 클래스는 본질적으로 구별하기 어려운 다중 클래스 문제에서 특히 참고할 가치가 있다.[1]

8. ROC 곡선·AUC와 정확도 비교

정확도는 임계값에 따라 달라지는 지표(threshold-dependent)다. 확률 점수를 출력하는 이진 분류기에서는 임계값(보통 0.5)이 클래스 배정을 정하며, 임계값을 바꾸면 정확도도 바뀐다.[1]

ROC(수신자 조작 특성) 곡선은 임계값과 무관한 성능 관점을 제공한다. 가능한 모든 임계값에서 참양성률(재현율)을 거짓양성률(1 - 특이도)에 대해 그린다. ROC 곡선 아래 면적(AUC)은 이 곡선을 0과 1 사이의 하나의 수로 요약하며, 1.0은 완벽한 분류, 0.5는 무작위 추측을 뜻한다.[3]

정확도와 AUC-ROC의 차이
속성정확도AUC-ROC
임계값 의존성예(단일 임계값에 고정)아니요(모든 임계값을 평가)[1]
클래스 불균형 민감도높음(불균형 데이터에서 오해를 부름)보통(약한 불균형에서는 여전히 유익함)[1]
해석 용이성매우 직관적(X% 정답)덜 직관적(곡선 아래 면적)[1]
모델 비교한 운영점에서 비교모든 운영점에 걸쳐 비교[1]
필요한 출력예측 레이블만예측 확률 또는 점수[1]

데이터가 매우 불균형할 때는 ROC 곡선보다 정밀도-재현율 곡선과 그 아래 면적(AUC-PR)이 더 유익할 수 있다. 음성 클래스가 매우 크면 ROC 곡선이 지나치게 낙관적으로 보일 수 있기 때문이다.[1]

9. 정확도를 안정적으로 추정하는 방법

한 번의 테스트 세트에서 얻은 모델 정확도는 점 추정치일 뿐이라 일반화되지 않을 수 있다. 더 신뢰할 수 있는 정확도 추정을 얻기 위한 기법이 여러 개 있다.[8]

가장 단순한 방법은 데이터의 일부(보통 20~30%)를 테스트 세트로 떼어 두는 것이다. 나머지 데이터로 학습하고 떼어 둔 세트로 평가한다. 단순하지만 분산이 커서, 특히 데이터가 적을 때 무작위 분할을 다시 하면 정확도 추정치가 눈에 띄게 달라질 수 있다.[8]

k-겹 교차 검증은 더 견고한 정확도 추정을 준다. 데이터를 크기가 같은 k개 폴드로 나누고 모델을 k번 학습한다. 매번 k-1개 폴드로 학습하고 나머지 한 폴드로 테스트하며, 최종 정확도는 k개 폴드의 평균이다. k = 5와 k = 10이 흔히 쓰이며, 연구에 따르면 이 값들은 편향과 분산 사이에서 좋은 균형을 준다.[8] 이 방식은 모든 데이터 점이 학습과 테스트에 정확히 한 번씩 쓰이게 해 제한된 데이터를 효율적으로 쓴다.[8]

층화 분할(stratified split)은 각 폴드나 분할이 전체 데이터셋과 같은 클래스 비율을 유지하게 한다. 불균형 데이터셋에서 특히 중요한데, 무작위 분할은 소수 클래스 사례가 거의 없거나 전혀 없는 폴드를 만들 수 있고 그러면 정확도 추정이 불안정해지기 때문이다.[1]

정확도 숫자 하나만으로는 불확실성을 알 수 없어 오해를 부를 수 있다. 신뢰구간은 참 정확도가 놓일 법한 범위를 제시한다. 독립적인 n개 테스트 사례에서 정확도가 p인 분류기의 95% 신뢰구간은 이항분포의 정규 근사에 기반해 다음과 같이 계산한다.[8]

p \pm 1.96 \sqrt{\frac{p(1 - p)}{n}}
정규 근사 기반 95% 신뢰구간

예를 들어 테스트 샘플 200개에서 정확도 90%인 모델의 95% 신뢰구간은 약 85.8%~94.2%다. 이 구간은 테스트 세트가 커질수록 좁아진다. 모델 간 작은 정확도 차이에 과도하게 확신하지 않도록 신뢰구간을 함께 보고하는 것이 좋은 관행이다. 테스트 세트가 작거나 정확도가 0 또는 1에 가까우면 정규 근사보다 윌슨 점수 구간(Wilson score interval)이나 클로퍼-피어슨 정확 구간(Clopper-Pearson exact interval)이 더 나은 포함 확률(coverage)을 준다.[8]

두 분류기의 정확도가 비슷할 때는 차이가 통계적으로 유의한지, 아니면 우연인지 판단해야 한다. 널리 쓰이는 검정은 두 가지다.[1]

맥네마 검정(McNemar's test)은 두 모델 예측의 2×2 분할표에 기반한 대응표본 비모수 검정이다. 두 분류기가 체계적으로 엇갈리는지 살핀다. 두 모델을 같은 테스트 세트에서 평가할 때 적합하며, 관측값 사이의 독립을 가정하는 검정보다 권장된다.[8] 분할표의 어떤 칸이라도 빈도가 25 미만인 작은 표본에서는 카이제곱 근사 대신 정확 이항 버전을 써야 한다.[8]

5x2 교차 검증 대응 t검정(5x2 Cross-Validation Paired t-Test)은 Dietterich(1998)가 제안했다. 2겹 교차 검증을 5번 반복하고 얻은 정확도 차이에 수정된 대응 t검정을 적용한다. 분류기를 비교할 때 표준 대응 t검정보다 제1종 오류(거짓양성률) 통제가 더 낫다.[9]

10. 정확도에 영향을 주는 요인

분류 모델의 정확도에는 많은 요인이 영향을 준다.[1]

알고리즘 선택은 정확도에 크게 영향을 준다.[8] 일부 알고리즘은 특정 데이터 유형이나 문제 구조에 더 잘 맞는다. 예를 들어 결정 트리는 범주형 특징을 자연스럽게 다루고, 서포트 벡터 머신은 고차원 데이터에서 강하다. 심층 신경망은 이미지나 텍스트 같은 대규모 복잡 데이터에서 전통 방법을 앞서는 경향이 있지만, 그래디언트 부스팅 계열이 흔히 앞서는 소규모 정형 데이터에서는 성능이 낮을 수 있다.[1]

학습 데이터의 품질과 양 모두 정확도에 영향을 준다. 잡음이 많은 레이블, 결측값, 이상치는 정확도를 떨어뜨릴 수 있다. 동시에 학습 데이터를 늘리면 일정 지점까지는 대체로 정확도가 오르지만, 그 이후에는 효과가 줄어든다. 데이터 정제, 중복 제거, 신중한 레이블 검증은 정확도를 극대화하는 필수 단계다.[1]

특징 공학(feature engineering) 과정은 정확도에서 결정적 역할을 한다. 관련 특징을 고르면 정확도가 크게 오를 수 있고, 무관하거나 중복된 특징을 넣으면 잡음이 생겨 성능이 떨어진다. 주성분 분석(PCA), 상호 정보량, 재귀적 특징 제거 같은 기법은 가장 유익한 특징을 찾는 데 도움을 준다.[1]

하이퍼파라미터는 학습 과정 자체를 조절하며(예: 학습률, 규제 강도, 트리 깊이), 정확도에 큰 영향을 줄 수 있다. 격자 탐색, 무작위 탐색, 베이즈 최적화 같은 체계적 튜닝 방법은 검증 데이터에서 정확도를 최대화하는 설정을 찾는 데 도움을 준다.[1]

학습 데이터를 외워 버리는 모델(과적합)은 학습 정확도는 높지만 테스트 정확도는 낮다. 반대로 지나치게 단순한 모델(과소적합)은 학습과 테스트 모두에서 정확도가 낮다. 규제, 조기 종료, 교차 검증은 이 균형을 관리하는 표준 기법이다.[1]

11. 실전 구현

대부분의 머신러닝 프레임워크는 정확도를 계산하는 내장 함수를 제공한다.[1]

11.1. 주요 프레임워크별 구현

사이킷런은 sklearn.metrics에서 정확도 관련 함수를 여럿 제공한다.[4]

  • accuracy_score(y_true, y_pred)는 표준 정확도를 계산한다. normalize=False로 두면 비율 대신 정답 개수를 반환한다.[4]
  • balanced_accuracy_score(y_true, y_pred)는 클래스 불균형을 보정하는 매크로 평균 재현율을 계산한다.[4]
  • top_k_accuracy_score(y_true, y_score, k)는 확률 예측으로부터 상위 k 정확도를 계산한다.[4][1]

사용 예시는 다음과 같다.[1]

from sklearn.metrics import accuracy_score, balanced_accuracy_score

y_true = [0, 1, 1, 0, 1, 0, 0, 1]
y_pred = [0, 1, 0, 0, 1, 1, 0, 1]

# 표준 정확도
print(accuracy_score(y_true, y_pred))  # 0.75

# 정답 개수
print(accuracy_score(y_true, y_pred, normalize=False))  # 6

# 균형 정확도
print(balanced_accuracy_score(y_true, y_pred))  # 0.75
사이킷런 정확도 계산 예시

PyTorch 사용자는 TorchMetrics 라이브러리로 정확도를 계산할 수 있다. torchmetrics.Accuracy는 이진, 다중 클래스, 다중 레이블 설정을 지원한다. task 매개변수는 분류 유형을 지정하고, top_k는 상위 k 정확도를 가능하게 한다. TorchMetrics는 PyTorch Lightning과 연동되어 학습 중 로깅을 매끄럽게 한다.[1]

import torch
import torchmetrics

# 이진 정확도
metric = torchmetrics.Accuracy(task="binary")
preds = torch.tensor([0, 1, 1, 0, 1])
target = torch.tensor([0, 1, 0, 0, 1])
print(metric(preds, target))  # tensor(0.8000)

# 다중 클래스 상위 2 정확도
metric = torchmetrics.Accuracy(task="multiclass", num_classes=3, top_k=2)
preds = torch.tensor([[0.1, 0.6, 0.3], [0.7, 0.2, 0.1]])
target = torch.tensor([2, 0])
print(metric(preds, target))  # tensor(1.0)
TorchMetrics 정확도 계산 예시

TensorFlow와 Keras에서 정확도는 지표(metric)로 제공되며, 손실 함수와 가까운 성격의 측정치로도 쓰인다.[1]

  • tf.keras.metrics.Accuracy()는 정확한 레이블 일치를 본다.
  • tf.keras.metrics.SparseCategoricalAccuracy()는 정수 레이블 다중 클래스 문제에 쓴다.
  • tf.keras.metrics.TopKCategoricalAccuracy(k)는 상위 k 정확도를 계산한다.[1]

이 지표들은 model.compile(metrics=[...])에 바로 넘겨 학습과 평가 중 자동으로 추적할 수 있다. 다음은 예시다.[1]

import tensorflow as tf

model = tf.keras.Sequential([
    tf.keras.layers.Dense(64, activation="relu"),
    tf.keras.layers.Dense(10, activation="softmax")
])

model.compile(
    optimizer="adam",
    loss="sparse_categorical_crossentropy",
    metrics=[
        tf.keras.metrics.SparseCategoricalAccuracy(),
        tf.keras.metrics.TopKCategoricalAccuracy(k=5)
    ]
)
TensorFlow·Keras 지표 설정 예시

12. LLM 벤치마크에서의 정확도

대규모 언어 모델(LLM)이 등장하면서 정확도는 다양한 자연어 이해와 추론 벤치마크에서 핵심 보고 지표가 되었다.[1]

12.1. MMLU

MMLU는 수학, 철학, 법학, 의학 등 57개 학문 과목의 객관식 문항 약 16,000개로 구성된 벤치마크다.[10] 정확도는 맞힌 문항의 백분율로 보고되며, 무작위 기준선은 25%(선택지 4개)다.[10]

MMLU는 2021년 Hendrycks et al.이 소개했다. 당시 GPT-3는 퓨샷 정확도 43.9%를 기록해 무작위 기준선 25%보다 훨씬 높았지만, 추정된 전문가 수준에는 한참 못 미쳤다.[10]

2024년까지 GPT-4o, Claude 3.5 Sonnet, Gemini 1.5 Pro 같은 최전선 모델이 모두 88%를 넘었다. 그러나 MMLU는 최전선 모델 비교에서 사실상 포화되었다. 여러 모델이 88%에서 93% 사이 점수를 받으면 실제 차이를 해석하기 어렵고, 측정 잡음이 실제 성능 차이를 넘어설 수 있다.[1] 2024년 분석에서는 MMLU 문항의 약 6.5%가 정답 레이블에 오류를 포함한다는 결과도 나왔다. 이 때문에 작은 정확도 차이를 해석하기가 더 어려워진다.[11]

12.2. GSM8K

GSM8K(Grade School Math 8K)는 Cobbe et al.이 2021년에 소개한 벤치마크로, 다단계 산술 추론이 필요한 초등학교 수준 수학 문장제 약 8,500개를 담는다.[12] 정확도 지표는 정확히 일치(exact match)다. 모델의 최종 숫자 답이 정답과 정확히 같아야 한다.[12]

GPT-3는 약 35% 정도였지만, 2024년까지 최전선 모델이 사고의 연쇄 프롬프팅을 쓰면서 정확도는 95%를 넘었다.[1] 2023년 오염 연구는 GSM8K 테스트 세트에서 학습 세트와 겹칠 것으로 의심되는 예제를 제거하자 일부 모델의 정확도가 최대 13%p 떨어졌다고 밝혔다. 이는 벤치마크 평가에서 데이터 오염이 얼마나 어려운 문제인지 보여 준다.[13]

12.3. 그 밖의 정확도 기반 LLM 벤치마크

정확도를 쓰는 다른 LLM 벤치마크
벤치마크과제 유형정확도 지표비고
MMLU객관식 지식4지선다 정확도최전선 모델에서 포화[1]
GSM8K수학 추론정확히 일치오염 우려[1]
HellaSwag문장 완성4지선다 정확도상식 추론 평가[1]
ARC과학 문항객관식 정확도초등 수준과 도전 세트[1]
WinoGrande상호참조 해소이진 정확도상식 이해 평가[1]
TruthfulQA진실성객관식 정확도사실 정확성 측정[1]
GPQA대학원 수준 문항4지선다 정확도전문가 수준 난도[1]

반복되는 문제는 정확도 기반 벤치마크의 포화다. 최전선 모델이 사람 수준 정확도에 가까워지거나 넘어서면 벤치마크는 모델을 구별하는 능력을 잃는다. MMLU, GSM8K, HellaSwag 등에서 이런 일이 있었다.[10][12] 커뮤니티는 MMLU-Pro, GPQA Diamond, FrontierMath 같은 더 어려운 벤치마크를 만들어 모델 사이의 정확도 분산을 넓게 유지하려 한다.[11]

13. 정확도와 다른 평가 방식

분류 정확도는 평가 방식 가운데 하나일 뿐이다. 과제에 따라서는 다른 접근이 더 적절할 수 있다.[1]

퍼플렉시티는 언어 모델이 어떤 텍스트 시퀀스에 얼마나 "놀라는지"를 잰다. 값이 낮을수록 다음 토큰 예측이 잘 된다는 뜻이다. 정확도와 달리 분류용 정답 레이블이 필요 없고, 어휘 전체에 대한 모델의 확률 분포를 직접 잰다. 퍼플렉시티는 언어 모델링의 표준 내재적 평가 지표이지만, 과제별 성능을 분류 정확도처럼 직접 평가하지는 않는다.[1]

BLEU(Bilingual Evaluation Understudy) 점수는 기계가 만든 텍스트를 참조 번역과 n-gram이 얼마나 겹치는지로 평가한다. 기계 번역의 표준 지표이며 값은 0에서 1 사이다. 정확한 레이블 일치를 요구하는 정확도와 달리 부분적인 겹침을 재고, 출력이 지나치게 짧으면 짧음 페널티를 준다.[1]

ROUGE(Recall-Oriented Understudy for Gisting Evaluation)는 주로 텍스트 요약 평가에 쓰인다. 참조 요약의 n-gram이 생성된 요약에 얼마나 나타나는지를 재는 재현율 중심 지표다. BLEU처럼 부분 겹침을 재기 때문에 생성 과제에서는 정확도보다 섬세하다.[1]

13.1. 사람 평가

많은 생성형 AI 과제에서 자동 지표(정확도 포함)는 부족하다. 사람 평가는 사람들이 모델 출력을 유창성, 관련성, 사실 정확성, 도움이 되는 정도 등으로 평가하는 방식이다. 비용이 크고 느리지만, 정답이 하나로 정해지지 않는 열린 텍스트 생성, 대화, 창작 글쓰기에서는 여전히 최고 기준으로 남아 있다.[1]

평가 방식별 비교
방식주요 용도측정 대상핵심 한계
정확도분류정확한 정답 일치불균형 데이터에서 실패[1]
퍼플렉시티언어 모델링다음 토큰 예측 품질과제 성능을 직접 측정하지 않음[1]
BLEU기계 번역참조 번역과 n-gram 겹침의미를 잘 포착하지 못함[1]
ROUGE텍스트 요약참조 요약 n-gram의 재현의미적 유사성을 놓침[1]
사람 평가열린 생성품질, 관련성, 유창성비용이 크고 느리며 주관적[1]

14. 실무 지침

이 글에서 다룬 강점과 한계를 바탕으로, 정확도를 효과적으로 쓰기 위한 지침은 다음과 같다.[1]

  • 클래스 분포를 먼저 확인한다. 정확도를 보고하기 전에 클래스가 대체로 균형인지 검증한다. 균형이 아니면 F1 점수, MCC, AUC-ROC 같은 지표로 정확도를 보완한다.[2][3]
  • 신뢰구간을 보고한다. 불확실성 정보가 없는 정확도 숫자 하나는 과잉 해석을 부른다. 신뢰구간이나 교차 검증의 표준편차를 함께 보고한다.
  • 교차 검증을 쓴다. 단일 학습-테스트 분할은 특히 작은 데이터셋에서 신뢰하기 어려운 정확도 추정을 낳을 수 있다. k-겹 교차 검증이 더 안정적인 추정을 준다.[8]
  • 정확도를 혼동 행렬과 함께 본다. 혼동 행렬은 오류가 어디서 생기는지 보여 준다. 두 모델의 정확도가 같아도 오류 패턴은 아주 다를 수 있으며, 혼동 행렬이 그 차이를 드러낸다.
  • 오류 비용을 고려한다. 거짓양성과 거짓음성의 실제 결과가 다르면 정확도만으로는 부족하며, 정밀도, 재현율 또는 비용 민감 지표를 쓴다.
  • 과적합을 살핀다. 학습 정확도와 테스트 정확도의 큰 차이는 과적합 신호다. 모델 개발 중 두 값을 모두 모니터링한다.[1]
  • 벤치마크 정확도는 조심해서 해석한다. 표준 벤치마크에서 높은 정확도가 실제 환경의 성능으로 항상 이어지지는 않는다. 데이터 오염, 레이블 잡음, 분포 변화 모두 보고된 정확도를 부풀릴 수 있다.[13][14]

15. 쉬운 예로 보는 정확도

선생님이 10개 단어로 받아쓰기 시험을 낸다고 하자. 8개를 맞히면 정확도는 8/10, 즉 80%다. 정확도는 시도한 것 가운데 몇 개를 맞혔는지를 나타낼 뿐이다.[1]

정확도가 까다로울 때도 있다. 시험에 쉬운 단어 9개와 아주 어려운 단어 1개가 있다고 하자. 쉬운 단어를 모두 맞히고 어려운 단어를 놓쳐도 정확도는 여전히 90%다. 하지만 시험의 목적이 그 어려운 단어를 맞히는지 보는 것이었다면, 90%는 선생님이 알고 싶었던 것을 말해 주지 않는다. 그래서 머신러닝에서는 정확도 말고도 다른 점수를 함께 본다.[1]

각주·출처 14개
  1. ↩1 ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9 ↩10 ↩11 ↩12 ↩13 ↩14 ↩15 ↩16 ↩17 ↩18 ↩19 ↩20 ↩21 ↩22 ↩23 ↩24 ↩25 ↩26 ↩27 ↩28 ↩29 ↩30 ↩31 ↩32 ↩33 ↩34 ↩35 ↩36 ↩37 ↩38 ↩39 ↩40 ↩41 ↩42 ↩43 ↩44 ↩45 ↩46 ↩47 ↩48 ↩49 ↩50 ↩51 ↩52 ↩53 ↩54 ↩55 ↩56 ↩57 ↩58 ↩59 ↩60 ↩61 ↩62 ↩63 ↩64 ↩65 ↩66 ↩67 ↩68 ↩69 ↩70 ↩71 ↩72 ↩73 ↩74 ↩75 ↩76 ↩77 ↩78 ↩79 ↩80 ↩81 ↩82 ↩83 ↩84 ↩85 ↩86 ↩87 ↩88 ↩89 ↩90 ↩91 ↩92 ↩93 ↩94 ↩95 ↩96 ↩97 ↩98 ↩99 ↩100 ↩101 ↩102 ↩103 AI Wiki: Accuracy (2026-06-20 수정본) · CC BY 4.0 · 확인 2026-10-11
  2. ↩1 ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9 ↩10 The advantages of the Matthews correlation coefficient (MCC) over F1 score and accuracy in binary classification evaluation · 확인 2026-10-11
  3. ↩1 ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9 ↩10 ↩11 ↩12 ↩13 ↩14 ↩15 Sokolova, M., & Lapalme, G. (2009). "A systematic analysis of performance measures for classification tasks." Information Processing & Management, 45(4), 427-437. (AI Wiki 참고문헌) · 확인 2026-10-11
  4. ↩1 ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9 Pedregosa, F., et al. (2011). "Scikit-learn: Machine Learning in Python." Journal of Machine Learning Research, 12, 2825-2830. (AI Wiki 참고문헌) · 확인 2026-10-11
  5. ↩1 accuracyscore · 확인 2026-10-11
  6. ↩1 ↩2 ↩3 ↩4 Brodersen, K. H., et al. (2010). "The Balanced Accuracy and its Posterior Distribution." 20th International Conference on Pattern Recognition. (AI Wiki 참고문헌) · 확인 2026-10-11
  7. ↩1 ↩2 ImageNet Large Scale Visual Recognition Challenge · 확인 2026-10-11
  8. ↩1 ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9 ↩10 Model Evaluation, Model Selection, and Algorithm Selection in Machine Learning · 확인 2026-10-11
  9. ↩1 Dietterich, T. G. (1998). "Approximate Statistical Tests for Comparing Supervised Classification Learning Algorithms." Neural Computation, 10(7), 1895-1923. (AI Wiki 참고문헌) · 확인 2026-10-11
  10. ↩1 ↩2 ↩3 ↩4 Measuring Massive Multitask Language Understanding · 확인 2026-10-11
  11. ↩1 ↩2 Are We Done with MMLU? · 확인 2026-10-11
  12. ↩1 ↩2 ↩3 Training Verifiers to Solve Math Word Problems · 확인 2026-10-11
  13. ↩1 ↩2 A Careful Examination of Large Language Model Performance on Grade School Math · 확인 2026-10-11
  14. ↩1 Northcutt, C. G., Athalye, A., & Mueller, J. (2021). "Pervasive Label Errors in Test Sets Destabilize Machine Learning Benchmarks." NeurIPS 2021 Datasets and Benchmarks Track. (AI Wiki 참고문헌) · 확인 2026-10-11

함께 읽는 용어

신경망벤치마크데이터셋사고의 연쇄대규모 언어 모델토큰매개변수Gemini딥러닝생성형 AIClaude머신러닝

관련 AI 모델

GPT-3 175B (davinci)GPT-4o (May 2024)

이 용어를 다룬 글

인프라와 비용

GPU

그래픽 처리 장치(GPU)는 같은 종류의 연산을 여러 개 동시에 수행하도록 설계된 프로세서다. 그래픽 작업을 위해 개발되었으며, 프로그래밍 가능한 연산 자원은 범용 계산과 AI 학습·추론 실행에도 쓰인다. AI 추론 실행에서는 연산 능력보다 메모리 대역폭이 달성 가능한 속도를 정하는 경우가 많다.

안전·권리·사회

AI 정렬

AI 정렬(AI alignment)은 인공지능 시스템이 의도한 목표, 선호, 제약, 제도에 맞게 행동하도록 만드는 연구와 실천이다. 지시 따르기, 선호 학습, 형식적 명세, 교정 가능성, 정당한 사회적 가치 반영 등 여러 뜻으로 쓰이며, 하나로 합의된 정의나 정렬을 인증하는 일반적 시험은 아직 없다.

안전·권리·사회

AI 안전

AI 안전은 인공지능 시스템에서 받아들일 수 없는 피해를 예방하거나 줄이는 연구와 실천이다. 기술 연구, 시스템 공학, 평가, 운영 통제, 조직 절차, 공공 거버넌스를 포괄하며, 어떤 피해가 얼마나 자주, 어떤 심각도로 일어날 수 있는지와 그 추정을 뒷받침하는 증거를 따진다.

멀티모달·피지컬 AI

텍스트-이미지 생성

텍스트-이미지 모델은 자연어 설명(프롬프트)을 입력받아 그 내용을 묘사하는 새 이미지를 만드는 생성형 AI다. 텍스트를 조건으로 이미지 분포를 학습하며, 2021년 OpenAI의 DALL-E 이후 확산 모델과 트랜스포머 기반 구조로 발전했다. 2025년 이후에는 언어와 이미지를 함께 생성하는 네이티브 멀티모달 모델이 최전선으로 올라섰다.

AI 첫걸음

신경망

신경망은 동물 뇌의 신경세포 연결에서 느슨하게 영감을 받은 계산 모델이다. 명시적 규칙 대신 단순한 처리 단위 사이의 연결 강도(가중치)를 데이터로 조정해 과제를 학습하며, 인공 신경망(ANN)이라고도 부른다. 가중치를 조정하면 이미지 분류부터 텍스트 생성까지 거의 모든 함수를 근사할 수 있으며, 2010년대 초부터 깊은 신경망이 머신러닝과 딥러닝의 기반이 되었다.

성능과 평가

벤치마크

벤치마크는 공통 조건에서 AI 시스템을 비교하기 위해 과제, 데이터, 평가 절차, 채점 규칙을 미리 정해 둔 평가 명세다. 점수는 그 설계 안에서의 성능 근거일 뿐 지능 전체를 직접 재는 값이 아니므로, 구성 타당도와 데이터 오염 같은 한계를 함께 확인해야 한다.

학습과 데이터

강화 학습

강화 학습은 에이전트가 환경에서 행동을 취하고 그 결과로 받는 보상을 바탕으로, 누적 보상을 최대화하는 행동 방식을 시행착오로 찾아내는 머신러닝 분야다. 정답 예시 대신 보상 신호로 학습한다는 점에서 지도 학습과 구별된다. 게임 플레이와 대규모 언어 모델의 정렬에 쓰이며, 2024년 튜링상이 이 분야의 기초 연구에 수여되었다.

작동 원리

어텐션

어텐션은 데이터에 따라 달라지는 가중치를 여러 표현에 매기고, 그 가중 합으로 출력을 만드는 신경망 연산 계열이다. 기계 번역에서 고정 크기 벡터 병목을 없애려는 방법으로 처음 주목받았고, 이후 트랜스포머의 핵심 토큰 혼합 연산이 되었다.

에이전트와 개발

코딩 에이전트

코딩 에이전트는 대규모 언어 모델이 개발 환경에서 파일을 읽고 고치며 명령을 실행하고, 그 결과를 보고 작업을 반복하는 소프트웨어 시스템이다. 코드 조각을 텍스트로 제안하는 기존 도구와 달리 실행 결과를 다음 입력으로 받는 반복 고리가 핵심 특징이다. 2021년 GitHub Copilot 이후 여러 상용 제품으로 확산되었고, SWE-bench 같은 벤치마크로 성능을 비교한다.

학습과 데이터

데이터셋

데이터셋은 머신러닝에서 모델을 학습하고 조정하며 평가하는 데 쓰는 예제들의 구조화된 모음이다. 각 예제는 입력 데이터(특징)와 선택적 목표값(레이블)을 짝지어 담고, 보통 학습·검증·테스트 세 부분으로 나눠 쓴다. 데이터셋을 만들고 나누는 방식은 머신러닝 결과의 신뢰도를 좌우한다. 특징과 레이블 구조, 분할, 저장 형식, 대표 데이터셋과 공유 카탈로그를 다룬다.

학습과 데이터

데이터 라벨링

데이터 라벨링은 머신러닝 알고리즘이 학습할 수 있도록 원시 데이터에 의미 있는 태그, 레이블, 메타데이터를 붙이는 작업이다. 데이터 어노테이션이라고도 부른다. 지도 학습의 정답과 인간 피드백 강화 학습(RLHF)의 선호 신호로 쓰이며, 이미지·텍스트·오디오·영상 등 거의 모든 데이터 형식에 걸쳐 이뤄지는 대형 산업으로 성장했다.

학습과 데이터

합성 데이터

합성 데이터는 실제 세계에서 수집하지 않고 알고리즘, 시뮬레이션, 생성 모델로 인공적으로 만든 데이터다. AI 시스템을 학습, 검증, 시험할 때 실제 데이터를 대신하거나 보충하는 데 쓰이며, 2022년 이후 대규모 언어 모델 학습을 중심으로 사용이 크게 늘었다.

기업과 사람

Anthropic

앤트로픽은 2021년 전직 OpenAI 연구자들이 세운 미국의 AI 안전·연구 기업이다. 대표 모델 계열은 Claude이며, 델라웨어주 공익 기업(PBC) 형태로 운영되고 헌법적 AI(Constitutional AI) 학습 기법으로 알려져 있다.

기업과 사람

Google DeepMind

구글 딥마인드(Google DeepMind)는 구글의 인공지능 연구·모델 개발 조직이다. 2023년 4월 딥마인드와 구글 브레인이 합쳐져 출범했으며, Gemini 모델 계열, 공개 가중치 모델 Gemma, 알파폴드 같은 과학 AI 시스템을 개발한다. 2026년 8월부터 Koray Kavukcuoglu가 일상 운영을 맡고 있다.

기업과 사람

NVIDIA

엔비디아(NVIDIA)는 그래픽 처리 장치(GPU)를 설계하는 미국 반도체·AI 컴퓨팅 기업이다. 2026년 기준 AI 가속기 시장의 80~90%를 차지한다고 추산되며, 게임용 그래픽 칩 회사에서 AI 학습과 추론 실행의 핵심 하드웨어 공급자로 성장했다. 대표 제품으로 데이터센터 GPU, GeForce, DGX 시스템, CUDA 플랫폼이 있다.

에이전트와 개발

AI 에이전트

AI 에이전트는 목표를 향해 환경을 관찰하고 행동을 선택해 실행하는 소프트웨어 시스템이다. 대개 대규모 언어 모델을 핵심으로 삼지만, 관찰·행동 인터페이스, 상태, 제어 로직, 중단 규칙이 함께 있어야 완성된다.

에이전트와 개발

에이전트 워크플로

에이전트 워크플로는 하나 이상의 AI 에이전트가 행동 순서를 스스로 계획하고, 도구를 골라 쓰고, 중간 결과를 평가하며, 목표에 이를 때까지 반복하는 다단계 작업 방식이다. 2024년 앤드루 응이 알리면서 확산되었고, 반성·도구 사용·계획·다중 에이전트 협업이 대표 설계 패턴으로 꼽힌다.

에이전트와 개발

하네스

하네스(Harness)는 대규모 언어 모델 같은 AI 모델을 감싸 단일 프롬프트 응답을 넘어 실제 작업이나 측정에 쓰이게 하는 소프트웨어 틀이다. 모델을 에이전트로 만드는 에이전트 하네스와 벤치마크를 모델에 돌려 점수를 내는 평가 하네스로 나뉜다. 두 용어 모두 전통 소프트웨어 공학의 테스트 하네스에서 이름과 개념을 빌렸다.

에이전트와 개발

모델 컨텍스트 프로토콜

모델 컨텍스트 프로토콜(MCP)은 대규모 언어 모델을 쓰는 애플리케이션이 외부 프로그램이나 데이터 소스와 맥락을 주고받고 기능을 호출하기 위한 개방형 프로토콜이다. Anthropic이 2024년 11월 25일 발표했으며, 2026-07-28 개정판이 현재 안정 버전이다.

프롬프트와 활용

프롬프트

프롬프트는 생성형 AI 모델, 특히 대규모 언어 모델이 원하는 응답을 내도록 주는 입력 전체다. 가장 단순한 경우에는 한 문장이지만, 실제 서비스에서는 지시문, 맥락, 예시, 대화 기록, 도구 설명, 출력 제약을 묶은 구조화된 메시지 목록이다. 모델이 사용자의 의도를 파악하는 거의 유일한 신호라는 점에서 중요하다.