좋은 모델이라는 말은 아직 비어 있다
앞 장까지 우리는 여러 모델을 만났다. 선형회귀는 직선으로 숫자를 예측했고, 로지스틱 회귀는 확률을 계산해 분류를 했으며, 결정트리와 랜덤포레스트는 질문을 나누고 여러 판단을 모아 예측했다. 그래디언트 부스팅은 앞선 모델의 실수를 다음 모델이 고쳐 가며 성능을 높였다.
그런데 여기서 아주 중요한 질문이 남는다.
좋은 모델이란 무엇일까?
처음에는 답이 쉬워 보인다. 많이 맞히면 좋은 모델 아닌가? 오차가 작으면 좋은 모델 아닌가? 물론 틀린 말은 아니다. 하지만 실제 머신러닝에서는 이 대답만으로 부족하다. 집값을 예측하는 모델과 스팸 메일을 분류하는 모델은 잘한다는 기준이 다르다. 암 환자를 놓치지 않는 모델과 광고를 클릭할 사람을 찾는 모델도 서로 다른 기준으로 평가해야 한다.
모델 평가지표는 모델에게 주는 성적표다. 그런데 모든 시험에 같은 성적표를 쓸 수는 없다. 수영 선수에게 100미터 달리기 기록만 보고 좋은 선수인지 판단할 수 없고, 요리사에게 칼질 속도만 보고 훌륭한 셰프인지 말할 수 없다. 모델도 마찬가지다. 무엇을 잘해야 하는지 먼저 정해야 제대로 평가할 수 있다.
이 장의 핵심은 단순하다. 좋은 모델을 만들려면 먼저 무엇을 잘했다고 볼지 정확히 정해야 한다.

회귀 모델은 얼마나 빗나갔는지를 본다
회귀는 숫자를 예측하는 문제다. 집값, 매출, 배송 시간, 온도, 고객의 다음 달 사용 금액처럼 정답이 숫자인 경우가 회귀다. 회귀 모델을 평가할 때 가장 먼저 보는 것은 예측값과 실제값의 차이다.
예를 들어 어떤 집의 실제 가격이 5억 원인데 모델이 4억 8천만 원이라고 예측했다면 오차는 2천만 원이다. 다른 집은 실제 가격이 3억 원인데 3억 5천만 원이라고 예측했다면 오차는 5천만 원이다. 회귀 평가지표는 이런 오차들을 모아 한 숫자로 요약한다.
문제는 오차를 요약하는 방식이 하나가 아니라는 점이다. 같은 예측 결과를 두고도 어떤 지표를 쓰느냐에 따라 모델을 바라보는 느낌이 달라진다.
MAE: 평균적으로 얼마나 틀렸는가
MAE는 Mean Absolute Error의 줄임말로, 평균 절대 오차라고 부른다. 이름은 조금 딱딱하지만 생각은 간단하다. 각 데이터마다 예측이 얼마나 빗나갔는지 절댓값으로 계산한 뒤 평균을 낸다.
절댓값은 방향을 없애는 방법이다. 실제보다 1천만 원 높게 예측했든, 1천만 원 낮게 예측했든 둘 다 1천만 원만큼 틀린 것이다. 그래서 MAE는 모델이 평균적으로 얼마나 틀리는지를 직관적으로 보여 준다.
집값 예측 모델의 MAE가 2천만 원이라면 이렇게 이해할 수 있다.
이 모델은 집값을 예측할 때 평균적으로 약 2천만 원 정도 빗나간다.
이 문장은 누구에게나 이해하기 쉽다. 그래서 MAE는 비즈니스 담당자나 현업 사용자에게 설명하기 좋다. 단위도 원래 예측하려던 값과 같다. 집값이면 원, 배송 시간이면 분, 매출이면 원이다.
다만 MAE는 큰 실수를 특별히 더 강하게 혼내지는 않는다. 1천만 원짜리 실수 열 번과 1억 원짜리 실수 한 번은 평균 계산에서 비교적 담담하게 섞인다. 어떤 서비스에서는 이게 장점이지만, 어떤 상황에서는 단점이 된다.
MSE: 큰 실수를 더 크게 벌준다
MSE는 Mean Squared Error의 줄임말로, 평균 제곱 오차라고 부른다. 오차를 그대로 평균 내지 않고, 오차를 제곱한 뒤 평균을 낸다.
제곱한다는 것은 큰 숫자를 훨씬 더 크게 만든다는 뜻이다. 오차가 2라면 제곱은 4지만, 오차가 10이라면 제곱은 100이 된다. 그래서 MSE는 작은 실수보다 큰 실수에 훨씬 민감하다.
이 성격은 꽤 중요하다. 예를 들어 배송 시간 예측 모델을 만든다고 해 보자. 대부분의 주문에서 5분 정도 틀리는 것은 괜찮을 수 있다. 하지만 어떤 주문에서 2시간을 틀리면 문제가 커진다. 고객은 화가 나고, 고객센터는 바빠지고, 운영팀은 난리가 난다. 이런 상황에서는 큰 오차를 강하게 벌주는 지표가 유용하다.
MSE는 모델에게 이렇게 말하는 성적표다.
작게 틀리는 것은 어느 정도 봐줄 수 있지만, 크게 틀리는 것은 절대 가볍게 넘기지 않겠다.
다만 MSE는 단위가 직관적이지 않다. 집값을 원 단위로 예측했다면 MSE는 원의 제곱 단위가 된다. 원의 제곱이라는 말은 현실에서 감이 잘 오지 않는다. 그래서 MSE는 모델 학습 과정이나 알고리즘 내부에서 자주 쓰이지만, 사람에게 설명할 때는 조금 불친절할 수 있다.
RMSE: 큰 실수를 벌주되 단위는 되돌린다
RMSE는 Root Mean Squared Error의 줄임말로, 평균 제곱근 오차라고 부른다. MSE에 루트를 씌운 값이다. 루트는 제곱의 반대 방향으로 값을 되돌리는 계산이라고 생각하면 된다.
RMSE는 MSE처럼 큰 오차에 민감하다. 동시에 단위는 원래 예측값의 단위로 돌아온다. 집값 예측이면 원, 온도 예측이면 도, 시간 예측이면 분으로 해석할 수 있다.
그래서 RMSE는 MAE와 MSE 사이에서 균형 잡힌 지표처럼 자주 사용된다. 큰 실수를 더 신경 쓰고 싶지만, 결과를 사람이 이해할 수 있는 단위로 보고 싶을 때 좋다.
세 지표의 느낌을 정리하면 다음과 같다.
| 지표 | 한국어 이름 | 핵심 느낌 | 해석하기 쉬운가 | 큰 오차에 민감한가 |
|---|---|---|---|---|
| MAE | 평균 절대 오차 | 평균적으로 얼마나 틀렸는가 | 쉽다 | 상대적으로 덜 민감하다 |
| MSE | 평균 제곱 오차 | 큰 실수를 강하게 벌준다 | 어렵다 | 매우 민감하다 |
| RMSE | 평균 제곱근 오차 | 큰 실수를 반영하면서 단위를 되돌린다 | 비교적 쉽다 | 민감하다 |
회귀 모델을 평가할 때는 이 세 지표 중 하나만 무조건 정답이라고 생각하면 안 된다. 중요한 것은 문제의 성격이다. 평균적인 오차를 쉽게 설명하고 싶다면 MAE가 좋다. 큰 실수가 특히 위험하다면 RMSE나 MSE가 더 어울린다.
분류 모델은 맞혔는지만 보면 충분할까
분류는 정답의 종류를 고르는 문제다. 스팸인지 정상 메일인지, 생존했는지 사망했는지, 이탈할 고객인지 아닌지, 결제 사기인지 정상 거래인지 판단한다.
분류 모델에서 가장 먼저 떠올리는 지표는 정확도다. 전체 데이터 중 모델이 맞힌 비율이다.
예를 들어 100개의 메일 중 90개를 올바르게 스팸 또는 정상으로 분류했다면 정확도는 90퍼센트다. 말 그대로 얼마나 자주 맞혔는지를 보여 주기 때문에 이해하기 쉽다.
하지만 정확도에는 함정이 있다. 모든 틀림이 같은 무게를 갖는다고 가정하기 때문이다.
스팸 메일 분류기를 생각해 보자. 정상 메일을 스팸으로 잘못 분류하면 중요한 업무 메일이 스팸함으로 들어갈 수 있다. 반대로 스팸 메일을 정상 메일로 잘못 분류하면 사용자가 광고 메일 하나를 보게 될 수 있다. 둘 다 틀린 예측이지만 피해의 종류가 다르다.
의료 진단 모델에서는 차이가 더 커진다. 실제 환자를 건강하다고 잘못 판단하는 것과, 건강한 사람을 환자일 수 있다고 잘못 판단하는 것은 모두 문제지만 위험도는 같지 않다. 실제 환자를 놓치는 쪽이 훨씬 더 치명적일 수 있다.
그래서 분류 문제에서는 정확도 외에도 정밀도, 재현율, F1 점수 같은 지표가 필요하다.
먼저 네 가지 결과를 구분하자
분류 지표를 이해하려면 모델의 예측 결과를 네 가지로 나누어야 한다. 처음에는 이름이 낯설지만, 상황극으로 생각하면 어렵지 않다.
스팸 메일 분류기를 예로 들어 보자. 여기서 관심 있는 대상, 즉 잡아내고 싶은 것은 스팸 메일이라고 하자.
| 실제 | 예측 | 의미 |
|---|---|---|
| 스팸 | 스팸 | 스팸을 스팸이라고 맞혔다 |
| 정상 | 정상 | 정상 메일을 정상이라고 맞혔다 |
| 정상 | 스팸 | 정상 메일을 스팸이라고 잘못 판단했다 |
| 스팸 | 정상 | 스팸 메일을 정상이라고 잘못 판단했다 |
머신러닝에서는 이 네 경우에 각각 이름을 붙인다.
True Positive는 관심 대상을 맞게 잡아낸 경우다.
True Negative는 관심 대상이 아닌 것을 맞게 제외한 경우다.
False Positive는 아닌데 맞다고 잘못 잡은 경우다.
False Negative는 맞는데 아니라고 놓친 경우다.
Positive는 좋다는 뜻이 아니라 모델이 관심 대상으로 예측했다는 뜻이다. Negative도 나쁘다는 뜻이 아니라 관심 대상이 아니라고 예측했다는 뜻이다. 스팸 탐지에서는 스팸이 Positive일 수 있고, 질병 진단에서는 환자가 Positive일 수 있으며, 고객 이탈 예측에서는 이탈 고객이 Positive일 수 있다.
이 네 칸을 이해하면 분류 지표가 훨씬 쉬워진다.
정확도: 전체적으로 얼마나 맞혔는가
정확도는 전체 예측 중 맞힌 비율이다. True Positive와 True Negative를 합쳐 전체 데이터 수로 나눈 값이다.
정확도는 데이터가 비교적 균형 잡혀 있을 때 유용하다. 예를 들어 고양이 사진 500장, 강아지 사진 500장을 분류하는 모델이라면 정확도는 꽤 좋은 출발점이 될 수 있다. 1000장 중 920장을 맞혔다면 정확도 92퍼센트라고 말해도 큰 오해가 없다.
문제는 현실의 데이터가 그렇게 착하지 않다는 데 있다. 특히 사기 거래, 희귀 질병, 고객 이탈, 설비 고장처럼 관심 있는 사건이 드물게 발생하는 문제에서는 정확도가 사람을 속일 수 있다.
정확도 99퍼센트인데 쓸모없는 모델
신용카드 사기 탐지 모델을 만든다고 해 보자. 전체 거래 10,000건 중 사기 거래는 100건뿐이고, 나머지 9,900건은 정상 거래다. 이때 아주 게으른 모델 하나가 등장한다.
이 모델은 모든 거래를 정상이라고 예측한다.
놀랍게도 이 모델의 정확도는 99퍼센트다. 정상 거래 9,900건을 모두 맞혔기 때문이다. 하지만 사기 거래 100건은 하나도 잡지 못했다. 사기 탐지라는 목적에서는 완전히 실패한 모델이다.
이런 데이터를 불균형 데이터라고 한다. 한쪽 클래스가 다른 쪽보다 훨씬 많은 데이터다. 불균형 데이터에서는 정확도만 보면 위험하다. 모델이 다수 쪽만 찍어도 높은 점수를 받을 수 있기 때문이다.
이 상황은 마치 시험에서 100문제 중 99문제가 O이고 1문제가 X인데, 모든 답을 O로 찍고 99점을 받은 것과 비슷하다. 점수는 높지만 실력 있다고 말하기 어렵다. 우리가 정말 알고 싶은 것은 그 어려운 X 문제를 맞힐 수 있느냐다.
정밀도: 잡아낸 것 중 진짜는 얼마나 되는가
정밀도는 모델이 Positive라고 예측한 것들 중 실제로 Positive인 비율이다. 쉽게 말해 잡아낸 것 중 진짜가 얼마나 되는지를 본다.
스팸 메일 분류기를 다시 보자. 모델이 메일 100개를 스팸이라고 표시했는데, 그중 실제 스팸이 80개라면 정밀도는 80퍼센트다. 나머지 20개는 정상 메일인데 스팸으로 잘못 잡은 것이다.
정밀도가 중요해지는 상황은 잘못 잡는 비용이 클 때다. 예를 들어 정상 메일을 스팸으로 보내 버리면 사용자가 중요한 계약 메일을 놓칠 수 있다. 온라인 쇼핑몰에서 정상 주문을 사기 주문이라고 막아 버리면 고객이 불쾌해하고 매출도 잃는다.
정밀도가 높은 모델은 이렇게 말할 수 있다.
내가 잡았다고 말한 것은 꽤 믿을 만하다.
하지만 정밀도만 높다고 항상 좋은 것은 아니다. 모델이 아주 확실한 몇 개만 잡고 나머지를 전부 놓쳐도 정밀도는 높게 나올 수 있다. 예를 들어 사기 거래 100건 중 3건만 잡았는데 그 3건이 모두 진짜 사기라면 정밀도는 100퍼센트다. 그러나 97건을 놓쳤으니 실제 서비스에서는 부족할 수 있다.
재현율: 진짜 중에서 얼마나 찾아냈는가
재현율은 실제 Positive 중 모델이 찾아낸 비율이다. 쉽게 말해 진짜를 얼마나 놓치지 않고 잡았는지를 본다.
질병 진단 모델을 생각해 보자. 실제 환자가 100명 있는데 모델이 그중 95명을 위험군으로 찾아냈다면 재현율은 95퍼센트다. 5명은 놓쳤다. 이때 재현율은 환자를 놓치지 않는 능력을 보여 준다.
재현율이 중요해지는 상황은 놓치는 비용이 클 때다. 암 검진, 사기 탐지, 보안 침입 탐지, 기계 고장 예측처럼 실제 문제를 놓치면 큰 피해가 나는 경우다.
재현율이 높은 모델은 이렇게 말할 수 있다.
진짜 중요한 대상을 최대한 놓치지 않겠다.
물론 재현율도 혼자서는 완벽하지 않다. 모든 사람을 환자라고 예측하면 실제 환자를 하나도 놓치지 않으므로 재현율은 100퍼센트가 된다. 하지만 건강한 사람까지 모두 환자로 분류하니 병원은 마비되고 사람들은 불안해진다. 그래서 정밀도와 재현율은 함께 봐야 한다.
정밀도와 재현율은 줄다리기를 한다
정밀도와 재현율은 종종 서로 줄다리기를 한다. 하나를 높이면 다른 하나가 낮아질 수 있다.
로지스틱 회귀에서 우리는 확률과 임계값을 이야기했다. 모델이 어떤 메일을 스팸일 확률 0.7이라고 예측했을 때, 임계값이 0.5라면 스팸으로 분류하고, 임계값이 0.8이라면 정상으로 남겨 둘 수 있다.
임계값을 높이면 모델은 아주 확신이 드는 경우에만 Positive라고 말한다. 그러면 잘못 잡는 경우가 줄어 정밀도는 올라갈 수 있다. 대신 애매하지만 실제로는 Positive인 대상을 놓칠 가능성이 커져 재현율은 내려갈 수 있다.
반대로 임계값을 낮추면 모델은 더 많은 대상을 Positive라고 잡는다. 그러면 실제 Positive를 더 많이 찾아 재현율은 올라갈 수 있다. 대신 아닌 것까지 잡을 가능성이 커져 정밀도는 내려갈 수 있다.
스팸 메일함을 엄격하게 운영할지, 느슨하게 운영할지는 서비스 철학에 따라 달라진다. 중요한 메일을 절대 잃지 않는 것이 우선이라면 정밀도를 신경 써야 한다. 스팸이 받은편지함에 들어오지 않게 막는 것이 우선이라면 재현율을 더 신경 쓸 수 있다.
F1 점수: 정밀도와 재현율의 균형
F1 점수는 정밀도와 재현율을 함께 고려한 지표다. 둘 중 하나만 높고 다른 하나가 낮으면 F1 점수는 높게 나오기 어렵다. 그래서 정밀도와 재현율 사이의 균형을 보고 싶을 때 사용한다.
F1 점수를 아주 직관적으로 말하면 이렇다.
잡은 것도 믿을 만하고, 놓친 것도 적은가?
정밀도가 100퍼센트인데 재현율이 5퍼센트라면 모델은 너무 소심하다. 확실한 것만 조금 잡고 대부분을 놓친다. 반대로 재현율이 100퍼센트인데 정밀도가 5퍼센트라면 모델은 너무 호들갑스럽다. 거의 모든 것을 문제라고 외친다. F1 점수는 이런 극단적인 모델에 높은 점수를 주지 않는다.
특히 불균형 데이터에서는 F1 점수가 정확도보다 더 유용할 때가 많다. 관심 있는 대상이 적고, 그 대상을 잘 찾는지가 중요하다면 정확도만으로는 부족하다. 정밀도, 재현율, F1 점수를 함께 보아야 모델의 실제 성격이 드러난다.
같은 모델도 목표가 바뀌면 좋은 모델이 아닐 수 있다
이제 중요한 결론으로 가 보자. 평가 지표는 기술적인 선택처럼 보이지만, 사실 비즈니스 목표의 선택이다.
고객 이탈 예측 모델을 만든다고 해 보자. 모델의 목적은 다음 달에 서비스를 떠날 가능성이 높은 고객을 미리 찾아 혜택이나 상담을 제공하는 것이다. 이때 어떤 지표를 봐야 할까?
만약 혜택 비용이 매우 비싸다면, 이탈할 것 같다고 예측한 고객이 실제로 이탈 위험이 높은지가 중요하다. 아무 고객에게나 할인 쿠폰을 뿌리면 비용만 커진다. 이 경우 정밀도가 중요해진다.
반대로 고객 한 명을 잃는 손실이 매우 크고, 혜택 비용은 상대적으로 작다면 실제 이탈 고객을 최대한 놓치지 않는 것이 중요하다. 이 경우 재현율이 중요해진다.
같은 고객 이탈 모델이라도 회사의 상황에 따라 좋은 모델의 기준은 달라진다. 예산이 부족한 팀은 정밀도를 더 볼 수 있고, 시장 점유율 방어가 중요한 팀은 재현율을 더 볼 수 있다.
사기 탐지에서도 마찬가지다. 모든 의심 거래를 막으면 사기는 줄겠지만 정상 고객의 결제가 막혀 불편이 커진다. 너무 느슨하게 두면 고객 경험은 좋아 보이지만 사기 피해가 늘어난다. 좋은 모델은 숫자 하나로 결정되지 않는다. 모델의 예측이 현실에서 어떤 행동으로 이어지는지까지 생각해야 한다.
평가지표는 모델의 행동을 바꾼다
평가지표를 정하는 일은 단순히 성적표를 고르는 일이 아니다. 모델 개발의 방향을 정하는 일이다.
개발자가 정확도만 보고 모델을 개선하면, 모델은 전체적으로 많이 맞히는 방향으로 바뀐다. 정밀도를 중시하면 모델은 더 조심스럽게 Positive를 예측하는 방향으로 조정될 수 있다. 재현율을 중시하면 모델은 더 적극적으로 Positive를 잡아내는 방향으로 바뀔 수 있다. RMSE를 중시하면 회귀 모델은 큰 오차를 줄이는 데 더 민감해진다.
결국 지표는 모델에게 주는 신호다. 무엇을 잘했다고 칭찬할지 정하면, 모델 개발자는 그 방향으로 데이터를 손보고, 특징을 만들고, 모델을 고르고, 임계값을 조정한다.
그래서 머신러닝 프로젝트 초기에 반드시 물어야 하는 질문이 있다.
이 모델이 틀렸을 때, 어떤 틀림이 더 위험한가?
이 질문에 답하지 않고 모델을 만들면, 기술적으로는 그럴듯하지만 실제로는 쓸모없는 모델이 나올 수 있다. 정확도는 높지만 사기를 하나도 못 잡는 모델, 평균 오차는 낮지만 특정 지역의 집값을 크게 틀리는 모델, 전체 고객에게는 잘 맞지만 VIP 고객을 자주 놓치는 모델이 생길 수 있다.
지표 하나보다 지표의 조합이 중요하다
실전에서는 하나의 지표만 보지 않는 경우가 많다. 회귀에서는 MAE와 RMSE를 함께 보며 평균적인 오차와 큰 오차를 동시에 확인한다. 분류에서는 정확도와 함께 정밀도, 재현율, F1 점수를 본다. 불균형 데이터라면 특히 정확도만으로 판단하지 않는다.
예를 들어 집값 예측 모델 A와 B가 있다고 해 보자. 두 모델의 MAE는 비슷한데 B의 RMSE가 훨씬 크다면, B는 대체로 잘 맞히지만 가끔 크게 틀리는 모델일 수 있다. 부동산 서비스에서 이런 큰 실수가 사용자 신뢰를 떨어뜨린다면 B는 위험하다.
스팸 분류 모델에서도 마찬가지다. 정확도 97퍼센트인 모델보다 정확도 95퍼센트인 모델이 더 나을 수 있다. 후자가 중요한 정상 메일을 덜 차단하거나, 악성 스팸을 더 잘 잡는다면 실제 사용자 경험은 더 좋을 수 있다.
평가지표를 볼 때는 숫자만 보지 말고 숫자가 말하는 행동을 상상해야 한다. 이 모델은 무엇을 자주 맞히는가? 무엇을 자주 놓치는가? 어떤 종류의 실수가 비싼가? 어느 정도의 오차까지는 받아들일 수 있는가? 이런 질문을 함께 던져야 한다.
평가 지표를 고르는 간단한 기준
평가지표 선택이 막막하다면 문제의 형태와 실수의 비용에서 출발하면 된다.
숫자를 예측하는 회귀 문제라면 MAE, MSE, RMSE로 오차를 본다.
종류를 고르는 분류 문제라면 정확도, 정밀도, 재현율, F1 점수를 함께 본다.
관심 있는 사건이 드문 불균형 데이터라면 정확도만 믿지 않는다.
큰 오차가 특히 위험한 회귀 문제라면 RMSE나 MSE를 더 주의 깊게 본다.
잘못 잡는 비용이 크면 정밀도를, 놓치는 비용이 크면 재현율을 더 중시한다.
정밀도와 재현율의 균형이 필요하면 F1 점수를 확인한다.
이 기준은 완벽한 공식이 아니라 출발점이다. 실제 프로젝트에서는 데이터의 성격, 서비스의 목적, 사용자의 피해, 운영 비용을 함께 고려해야 한다.
성능은 테스트가 아니라 대화다
많은 사람이 모델 평가를 마지막 시험처럼 생각한다. 모델을 다 만들고 나서 점수를 확인하는 절차라고 여긴다. 하지만 실제로 평가는 프로젝트 전체를 이끄는 대화에 가깝다.
처음 만든 모델의 점수를 본다. 어떤 종류의 오차가 큰지 살펴본다. 왜 그런 오차가 생겼는지 데이터로 돌아가 확인한다. 필요한 특징을 추가하고, 모델을 바꾸고, 임계값을 조정한다. 다시 평가한다. 이 과정을 반복하면서 모델은 조금씩 현실에 가까워진다.
머신러닝의 기본 구조를 다시 떠올려 보자.
데이터를 준비한다. 특징을 만든다. 모델이 예측한다. 실제값과 비교한다. 오차를 줄인다. 새로운 데이터에 적용한다.
평가지표는 이 구조에서 실제값과 비교한다를 구체적인 숫자로 바꾸는 장치다. 무엇을 오차로 볼 것인지, 어떤 실수를 더 크게 볼 것인지, 어떤 성공을 더 높게 평가할 것인지 정해 준다.
그래서 평가지표를 이해하면 모델을 보는 눈이 달라진다. 이제 우리는 단순히 이 모델은 정확도가 높다는 말에 바로 고개를 끄덕이지 않는다. 어떤 데이터에서? 어떤 클래스가 중요한데? 놓친 것은 얼마나 되는데? 큰 실수는 없었나? 비즈니스 목표와 맞나? 이런 질문을 던질 수 있게 된다.
그 질문들이 좋은 모델을 만든다.
다음 단계로 가기 전에
이번 장까지 우리는 지도학습의 중요한 모델들과 평가 방법을 살펴보았다. 회귀에서는 숫자 예측의 오차를 어떻게 요약할지 배웠고, 분류에서는 맞혔는지뿐 아니라 무엇을 잘못 잡고 무엇을 놓쳤는지까지 살펴보았다.
이제부터는 조금 다른 세계로 들어간다. 지금까지는 정답이 있는 데이터를 중심으로 배웠다. 집값이라는 정답, 생존 여부라는 정답, 스팸 여부라는 정답이 있었다. 하지만 현실의 데이터에는 정답표가 없는 경우도 많다. 고객 목록은 있는데 누가 어떤 그룹인지 모를 수 있고, 수많은 문서가 있는데 어떤 주제로 나뉘는지 모를 수 있다.
다음 장에서는 정답 없이 패턴을 찾는 비지도학습으로 넘어간다. 모델은 이제 맞히기 시험을 보는 대신, 데이터 속에 숨어 있는 구조를 찾아야 한다.
이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.