STEP 08 · PREDICTION METRICS

AI 예측 정확도 90%,
잘한 걸까요?

혼동행렬로 살펴보는 우리 업무의 평가 기준

상품 추천은 얼마나 잘 맞혀야 할까요?

아모레퍼시픽 전략기획팀에서 전사 실적과 KPI 지표를 담당하던 때입니다.

온라인몰의 영업 담당자와 상품 추천 방법에 대해서 이야기 나눌 기회가 있었는데, “상품 추천 어떻게 해요?”라는 질문에 우스갯소리로 이런 이야기를 나눈 적이 있습니다.

“KPI를 높이려면! 설화수 윤조에센스만 추천하면 돼요!!”

들어오는 사람의 대부분이 윤조에센스를 구매하는 상황이었습니다.

농담으로 한 말이긴 했지만, ‘이렇게 상품 추천하면 매출에 도움이 되나?’라는 생각을 했던 기억이 납니다.

그때 KPI를 보면서도 같은 질문을 하게 됐습니다. 지표를 왜 설정하는지, 그 숫자가 무엇을 뜻하는지 다시 생각하게 됐습니다. 지표의 이름만큼이나 누구를 대상으로 무엇을 세고 어떻게 계산하는지가 중요하다는 생각이 들었습니다.

AI 예측 결과를 볼 때도 비슷합니다. 정확도가 90%라는 말을 들으면 꽤 잘 맞힌 것 같습니다. 하지만 우리 업무에 쓸 만한지는 그 숫자만으로 알기 어렵습니다.

상품 추천에는 여러 평가 방법이 있습니다. 여기서는 이야기를 조금 단순하게 바꿔 보겠습니다. 지난 구매 기록을 바탕으로 고객이 다음 달에 구매할지 O/X로 예측하는 상황입니다.

100명 중 90명을 맞혔는데, 구매자는 아무도 못 찾았다면

고객 100명 가운데 다음 달 실제로 구매한 사람은 10명, 구매하지 않은 사람은 90명이라고 해 보겠습니다. 아래의 고객 수와 예측 결과는 모두 설명을 위한 가상 숫자입니다.

모든 고객이 구매하지 않을 거라고 예측하면 어떻게 될까요?

구매하지 않은 90명은 맞히고, 구매한 10명은 틀립니다. 전체 100명 중 90명을 맞혔으니 정확도(Accuracy)는 90%입니다.

그런데 구매할 고객을 미리 찾아 상담하려던 담당자에게 이 결과가 도움이 될까요? 정작 찾아야 할 구매자는 한 명도 찾지 못했습니다.

고객 100명 중 비구매자 90명은 맞혔지만 구매자 10명은 모두 놓친 예측
점 하나는 고객 한 명입니다. 모두 비구매로 예측하면 회색 점 90명은 맞히지만 주황색 점 10명은 놓칩니다.

정확도를 볼 때는 실제 구매자가 얼마나 있는지, 모두 같은 답을 해도 이 정도 점수가 나오는지 함께 확인해 보세요.

맞힌 것과 틀린 것을 네 칸으로 나눠 봅니다

이번에는 AI가 구매할 것 같은 고객을 골랐다고 해 보겠습니다. 고객 100명과 실제 구매자 10명은 그대로 두고, 예측 결과만 달라진 경우입니다.

AI는 20명이 구매할 것이라고 예측했습니다. 그중 실제 구매자는 8명이었고, 나머지 12명은 구매하지 않았습니다. 실제 구매자 10명 가운데 2명은 놓쳤습니다.

실제 결과 예측: 구매 O 예측: 구매 X 합계
실제 구매 O 구매자를 찾아냄 8명 구매자를 놓침 2명 10명
실제 구매 X 구매할 줄 알았지만 구매하지 않음 12명 비구매자를 구분함 78명 90명
합계 20명 80명 100명

실제 결과와 예측을 비교해 고객 수를 네 칸에 나눈 표가 혼동행렬(Confusion Matrix)입니다. 이 글에서는 O가 구매, X가 비구매를 뜻합니다. 이탈 여부를 예측한다면 O를 이탈로 정할 수도 있으니, 표를 읽기 전에 O의 뜻부터 확인하세요.

다른 자료에서는 네 칸을 TP, FN, FP, TN이라고 적기도 합니다. 위 표에서는 순서대로 8명이 TP, 2명이 FN, 12명이 FP, 78명이 TN입니다. 처음에는 약자보다 각 칸에 어떤 고객이 들어가는지 이해하면 충분합니다.

틀린 예측 두 가지를 눈여겨보세요. 구매할 줄 알고 골랐지만 구매하지 않은 12명, 그리고 구매할 사람인데 놓친 2명입니다. 담당자가 어떤 일을 하려는지에 따라 두 실수의 부담은 달라집니다.

같은 표에서도 분모에 따라 답이 달라집니다

정확도(Accuracy): 전체 중 몇 명을 맞혔나요?

구매자를 맞힌 8명과 비구매자를 맞힌 78명을 더합니다.

빨간 테두리 = 분모초록 배경 = 분자
가로의 열: AI 예측 → · 세로의 행: 실제 결과 ↓
실제 결과 ↓
AI 예측 →
예측: 구매 O예측: 구매 X
실제: 구매 O구매자를
찾아냄
구매자를
놓침
실제: 구매 X구매할 줄 알았지만
구매하지 않음
비구매자를
구분함
분모는 네 칸 전체, 분자는 구매와 비구매를 맞힌 두 칸입니다.

정확도(Accuracy) = (8명 + 78명) ÷ 전체 100명 = 86%

앞서 모두 비구매로 예측했을 때의 90%보다 낮습니다. 하지만 이번에는 구매자 8명을 찾아냈습니다. 어느 예측이 나은지 결정하려면 우리 업무에 필요한 고객을 얼마나 찾았는지도 살펴봐야 합니다.

정밀도(Precision): 구매한다고 예측한 사람 중 실제 구매자는 몇 명인가요?

이번에는 AI가 구매한다고 예측한 20명만 봅니다. 그중 실제 구매자는 8명입니다.

빨간 테두리 = 분모초록 배경 = 분자
가로의 열: AI 예측 → · 세로의 행: 실제 결과 ↓
실제 결과 ↓
AI 예측 →
예측: 구매 O예측: 구매 X
실제: 구매 O구매자를
찾아냄
구매자를
놓침
실제: 구매 X구매할 줄 알았지만
구매하지 않음
비구매자를
구분함
분모는 구매 O로 예측한 세로 두 칸, 분자는 그중 실제 구매자를 찾아낸 한 칸입니다.

정밀도(Precision) = 찾아낸 구매자 8명 ÷ 구매한다고 예측한 20명 = 40%

예측한 고객에게 연락한다면, 연락 대상 20명 중 실제 구매자가 8명인 셈입니다. 상담 시간이 부족하거나 한 명에게 연락하는 비용이 크다면 이 숫자를 눈여겨보세요.

재현율(Recall): 실제 구매자 중 몇 명을 찾아냈나요?

이번에는 실제 구매자 10명을 봅니다. AI가 그중 8명을 구매한다고 예측했습니다.

빨간 테두리 = 분모초록 배경 = 분자
가로의 열: AI 예측 → · 세로의 행: 실제 결과 ↓
실제 결과 ↓
AI 예측 →
예측: 구매 O예측: 구매 X
실제: 구매 O구매자를
찾아냄
구매자를
놓침
실제: 구매 X구매할 줄 알았지만
구매하지 않음
비구매자를
구분함
분모는 실제 구매 O인 가로 두 칸, 분자는 그중 구매자를 찾아낸 한 칸입니다.

재현율(Recall) = 찾아낸 구매자 8명 ÷ 실제 구매자 10명 = 80%

구매자 열 명 중 여덟 명을 찾고 두 명을 놓쳤습니다. 구매 가능성이 있는 고객을 폭넓게 살펴보려는 담당자에게는 놓친 고객의 비율도 중요합니다.

같은 예측 결과에서 정확도는 86명 나누기 100명, 정밀도는 8명 나누기 20명, 재현율은 8명 나누기 10명으로 계산
세 지표는 같은 예측 결과로 계산합니다. 각 그림의 전체 길이는 해당 지표의 분모를 뜻하며, 분모의 고객 수가 서로 다릅니다.

우리 업무에서는 어떤 실수가 더 부담스러울까요?

상담할 수 있는 고객이 하루에 몇 명 되지 않는다면, 골라낸 고객 가운데 실제 구매자가 얼마나 있는지 궁금할 겁니다. 이때는 정밀도를 살펴보고 연락할 수 있는 인원도 함께 확인합니다.

반대로 안내 비용이 적고 구매할 고객을 빠뜨리지 않는 일이 중요하다면 재현율을 더 신경 쓸 수 있습니다. 다만 대상을 넓힐수록 구매하지 않을 고객도 포함될 수 있으니, 발송비와 고객의 피로도를 같이 생각해야 합니다.

이탈 고객을 찾는 일도 마찬가지입니다. 실제 이탈 고객을 놓치는 부담이 큰지, 이탈하지 않을 고객에게 불필요한 연락이나 혜택을 제공하는 부담이 큰지 따져 봅니다. 이탈 예측에서는 O를 이탈로 정한 뒤 지표를 읽습니다.

업무 상황 먼저 살펴볼 지표 함께 확인할 것
한 명씩 시간을 들여 상담해야 합니다 정밀도(Precision) 상담할 수 있는 인원, 상담 비용
구매할 고객을 넓게 찾아 안내하려고 합니다 재현율(Recall) 발송비, 연락 대상 수, 고객 피로도
전체 예측이 얼마나 맞았는지 확인하려고 합니다 정확도(Accuracy) 실제 구매자 비율, 모두 같은 답을 한 경우의 점수

이 표를 보면서 우리 업무에 맞는 지표를 생각해 보세요. 예산이나 고객을 놓쳤을 때의 손실에 따라 함께 볼 지표가 달라집니다. 실제로 캠페인을 진행한다면 비용과 이익까지 계산해 판단합니다.

여기서 한 가지를 구분해야 합니다. 구매할 고객을 잘 찾아냈다고 해서 쿠폰이나 상담 덕분에 구매가 늘었다고 말할 수는 없습니다. 원래 구매할 사람이었을 수도 있습니다. 캠페인의 효과를 확인하려면 캠페인 대상 고객과 대상이 아닌 고객을 공정하게 비교해야 합니다.

구매한다고 판단하는 기준도 바꿀 수 있습니다

AI가 고객별로 구매 가능성을 점수로 알려준다고 해 보겠습니다. 구매 가능성 점수는 모델이 예상한 값이라 실제 구매 비율과 꼭 같지는 않습니다.

이 점수를 바탕으로 구매 O와 구매 X를 나눌 기준을 정할 수 있습니다. 예를 들어 50% 이상이면 구매 O로 판단하는 방식입니다. 이 글에서는 이 선을 구매한다고 판단하는 기준이라고 부르겠습니다.

같은 고객의 점수를 그대로 두고 기준을 50%에서 30%로 낮추면 구매 O로 분류되는 고객 수는 늘거나 그대로 유지됩니다. 실제 구매자를 더 찾을 수 있고, 구매하지 않을 고객도 추가로 포함될 수 있습니다.

기준을 70%로 높이면 구매 O로 분류되는 고객 수는 줄거나 그대로 유지됩니다. 연락 대상은 줄어들지만 실제 구매자를 더 놓칠 수도 있습니다.

정밀도가 얼마나 달라지는지는 결과를 계산해 봐야 압니다. 기준을 높였다고 정밀도가 반드시 올라가는 것은 아닙니다. 너무 높게 잡아 아무도 구매 O로 분류하지 않으면 정밀도는 계산할 수 없습니다.

기준을 바꿀 때는 다음 내용을 나란히 비교해 보세요.

고객 수와 실제 구매 결과는 그대로 두고 판단 기준만 바꿔 보는 것입니다. 실제 업무에서는 과거의 검증 자료로 판단 기준을 정해 보고, 나중에 새 자료가 쌓이면 결과를 다시 확인합니다.

정확도를 올리고 싶다면, 어떤 성과를 원하는지부터

처음의 KPI 이야기로 돌아가 보겠습니다.

같은 구매율이라도 전체 방문 고객 중 구매한 비율인지, 연락한 고객 중 구매한 비율인지에 따라 의미가 달라집니다. 당일 구매만 셀지 한 달 안의 구매까지 셀지, 취소한 주문도 포함할지에 따라서도 숫자가 바뀝니다.

AI 예측을 평가할 때도 대상과 기간, 구매로 인정할 조건을 먼저 정합니다. 그런 다음 틀린 예측 두 종류가 우리 업무에 어떤 영향을 주는지 살펴봅니다. 혼동행렬을 펼쳐 놓으면 두 종류의 틀린 예측이 각각 몇 명인지 확인하며 이야기할 수 있습니다.

우리 업무에 적용하기 전에 아래 질문에 답해 보세요.

  1. 무엇을 O로 정했나요? 구매인가요, 이탈인가요?
  2. 어떤 고객의 어느 기간 결과를 평가하나요?
  3. 잘못 골라내는 것과 놓치는 것 중 어느 쪽의 부담이 큰가요?
  4. 그 부담을 확인하려면 어떤 지표와 비용을 함께 봐야 하나요?

정확도를 높이기 전에, 우리 업무에서 무엇을 성공으로 셀지 먼저 정해 보세요. 어떤 지표를 중요하게 볼지 판단할 근거가 생깁니다.

그림과 표가 작게 보이면 좌우로 움직여 확인하세요.

다른 실무 가이드 보기 →