ROC·AUCROC & AUC

문턱을 옮겨 가며 잰 성적을 한 곡선과 한 숫자로

핵심 정리
  • 갈라내는 모델은 답을 곧바로 내지 않아요. "이 정도면 이쪽"이라고 정하는 문턱을 사람이 따로 정해야 해요.
  • ROC (Receiver Operating Characteristic, 수신자 조작 특성) 곡선은 문턱을 끝에서 끝까지 옮겨 가며 잰 성적을 한 장에 이어 그린 것이에요.
  • 곡선이 왼쪽 위로 바짝 붙을수록 좋은 모델이에요. 대각선에 눕는 곡선은 아무 도움이 안 된다는 뜻이에요.
  • AUC (Area Under the Curve, 곡선 아래 넓이)는 그 곡선을 숫자 하나로 줄인 값이에요. 1에 가까울수록 좋고 0.5면 찍는 것과 같아요.
  • 문턱과 무관한 값이라 모델끼리 견주기에 좋지만, 한쪽이 아주 드문 자료에서는 실제보다 후하게 나와요.
목차

1비유로 이해하기

냉장고에 우유가 여러 통 있어요. 겉에 적힌 날짜가 지난 지 며칠씩 된 것들이에요. 어떤 통은 아직 멀쩡하고 어떤 통은 상했는데, 열어 보기 전에는 모르니까 날짜만 보고 정해야 해요.

"날짜가 지나면 바로 버린다"로 정하면 상한 우유를 마실 일이 없어요. 대신 멀쩡한 우유를 잔뜩 버리게 되죠. "일주일까지는 둔다"로 정하면 버리는 통은 거의 없지만 상한 걸 마시게 돼요. 어느 쪽도 정답이 아니고, 기준을 며칠에 두느냐에 따라 얻는 것과 잃는 것이 맞바뀔 뿐이에요.

그래서 기준 하나만 시험하지 않아요. 지난 날이 없을 때부터 열흘 뒤까지 하루씩 옮겨 가며, 날짜마다 "상한 통을 얼마나 걸러 냈나"와 "멀쩡한 통을 얼마나 버렸나"를 적어 두면 이 판단의 성질 전체가 한 장에 담겨요.

2자세히 알아보기

문턱은 모델이 아니라 사람이 정해요

갈라내는 모델이 내놓는 것은 "이쪽"이나 "저쪽"이 아니라 얼마나 그럴듯한지를 나타내는 점수예요. 그 점수가 어디를 넘으면 이쪽이라고 부를지는 사람이 정해요. 이 선이 문턱이에요.

문턱을 낮추면 조금만 수상해도 이쪽이라고 부르니까 찾아내는 양이 늘어요. 대신 아닌 것까지 붙잡아요. 문턱을 올리면 확실한 것만 부르니까 헛집는 일이 줄지만 놓치는 것이 늘어요. 기준 날짜를 앞뒤로 옮기는 것과 똑같아요.

그래서 문턱 하나를 정해 놓고 잰 점수는 그 문턱에서의 성적일 뿐이에요. 문턱을 옮기면 같은 모델의 점수가 달라져요. 모델 자체가 얼마나 잘 가르는지 알고 싶다면 문턱을 고정한 채로 볼 게 아니라 전부 훑어봐야 해요.

문턱마다 점 하나, 이어 붙이면 곡선

문턱을 가장 낮은 자리에 두고 두 가지를 재요. 하나는 진짜 이쪽인 것들 가운데 몇을 찾아냈는지, 다른 하나는 저쪽인 것들 가운데 몇을 잘못 붙잡았는지예요. 이 두 값을 좌표 삼아 점을 하나 찍어요.

문턱을 조금 올리고 다시 재서 점을 찍고, 또 올려서 찍고, 이렇게 끝까지 가면 점들이 줄지어 늘어서요. 그 점들을 이은 선이 ROC 곡선이에요. 왼쪽 아래 구석은 아무것도 안 붙잡는 상태, 오른쪽 위 구석은 전부 붙잡는 상태예요.

좋은 모델의 곡선은 왼쪽 위로 바짝 붙어요. 헛집는 일을 거의 안 하면서도 찾아낼 것은 다 찾아내는 문턱이 있다는 뜻이거든요. 반대로 곡선이 대각선을 따라 눕는다면, 어떤 문턱을 골라도 얻는 만큼 잃는다는 뜻이라 도움이 되지 않아요.

곡선을 숫자 하나로 줄이면

곡선은 정보가 많은 대신 여러 모델을 나란히 견주기에는 불편해요. 그래서 곡선 아래쪽 넓이를 재서 숫자 하나로 줄여요. 이 값이 AUC예요. 곡선이 왼쪽 위로 붙을수록 아래 넓이가 커지니까, 값이 클수록 잘 가르는 모델이에요.

이 숫자에는 알기 쉬운 뜻이 하나 붙어 있어요. 이쪽에 속한 것 하나와 저쪽에 속한 것 하나를 아무렇게나 집었을 때, 모델이 이쪽에 더 높은 점수를 줄 확률이 바로 AUC예요. 0.9라면 열 번 가운데 아홉 번쯤 순서를 바로 맞힌다는 뜻이에요.

0.5는 동전 던지기와 같아요. 순서를 맞힐 확률이 반이라는 뜻이니까 아무 정보가 없는 거예요. 값이 0.5보다 아래로 내려가면 뒤집어 읽어야 해요. 반대로 답하면 잘 맞힌다는 뜻이라 대개 어딘가 잘못된 신호예요.

후하게 나오는 자리를 조심해요

AUC가 편한 이유는 문턱을 고르지 않아도 되고 비율이 달라져도 값이 잘 흔들리지 않는다는 점이에요. 그런데 이 장점이 그대로 함정이 되는 경우가 있어요. 찾아야 할 쪽이 아주 드문 문제예요.

만 건 가운데 열 건을 찾는 문제라면, 저쪽 구천구백구십 건 가운데 백 건을 헛집어도 헛집는 비율은 아주 작게 보여요. 곡선은 여전히 왼쪽 위에 붙고 AUC도 높게 나와요. 하지만 현장에서는 열 건을 찾으려고 백 건을 헛되이 확인해야 하니 쓸 만한 도구가 아니에요.

이럴 때는 찾아야 할 쪽만 놓고 그린 다른 곡선을 함께 봐요. 지목한 것 가운데 맞은 비율과 실제로 찾아낸 비율을 두 축으로 삼는 곡선인데, 드문 쪽이 주인공인 문제에서는 이쪽이 훨씬 정직하게 움직여요.

3조금 더 정확하게

ROC 곡선의 두 축에는 정해진 이름이 있어요. 세로축은 실제로 이쪽인 것들 가운데 찾아낸 비율이고 재현율이라고 불러요. 가로축은 실제로 저쪽인 것들 가운데 잘못 붙잡은 비율이에요. 두 축 모두 각자의 무리 안에서 계산하기 때문에, 두 무리의 개수 비율이 달라져도 곡선의 모양은 크게 흔들리지 않아요.

비유가 어긋나는 지점도 있어요. 우유는 날짜라는 값 하나로 판단하지만 모델은 여러 정보를 한꺼번에 보고 점수를 매겨요. 다만 어긋나 보이는 이 점이 오히려 중요한 자리이기도 해요. 날짜는 상함 그 자체가 아니라 상함을 대신 재는 값이고, 모델이 내놓는 점수도 정답 그 자체가 아니라 정답을 대신 재는 값이거든요. 곡선이 왼쪽 위에 붙는다는 말은 그 대신 재는 값이 쓸 만하다는 뜻이에요. 실제 곡선은 문턱을 아주 잘게 옮길 수 있어서 자료에 있는 점의 개수만큼 촘촘한 계단 모양이에요.

AUC 하나만 보고 모델을 고르는 것도 조심할 일이에요. AUC는 순서를 얼마나 잘 매기는지만 말해 줄 뿐, 그 점수를 그대로 확률처럼 믿어도 되는지는 말해 주지 않아요. 실제로 쓰려면 문턱을 정해야 하고, 그 문턱은 놓쳤을 때의 손해와 헛집었을 때의 손해를 견줘서 골라야 해요.

4직접 해보기

5흔한 오해

  • AUC가 높으면 그대로 잘 맞히는 모델이다라고 생각하기 쉽지만, 실제로는 순서를 잘 매긴다는 뜻일 뿐이고 문턱을 잘못 잡으면 맞히는 개수는 형편없을 수 있어요.

  • AUC 0.5는 성능이 절반이라는 뜻이다라고 여기기 쉽지만, 실제로는 아무 정보도 없는 상태, 찍는 것과 같은 상태를 뜻해요.

  • ROC 곡선은 어떤 문제에서나 믿을 수 있다고 생각하기 쉽지만, 실제로는 찾아야 할 쪽이 아주 드문 문제에서는 실제보다 후한 그림을 보여 줘요.

7한 줄 요약

그러니까ROC 곡선은 문턱을 끝에서 끝까지 옮겨 가며 잰 성적을 한 장에 이어 그린 것이고, AUC는 그 곡선을 숫자 하나로 줄여 모델끼리 견주게 해 주는 값이에요.

잘못된 내용이나 더 좋은 비유가 있나요? 수정 제안 보내기 · 마지막 수정2026-09-02