1.머신러닝의 네 단계
1강에서 머신러닝은 기계가 예시 데이터에서 규칙성을 찾는 방식이라고 했습니다. 이 과정을 조금 더 나누어 보면 거의 모든 머신러닝 프로젝트가 같은 네 단계를 거칩니다. 데이터를 모으고, 어떤 모양의 규칙을 찾을지(모델) 정하고, 데이터에 맞게 모델을 조정하고(학습), 처음 보는 데이터로 얼마나 잘 맞히는지 확인합니다(평가).
예를 들어 아파트의 넓이로 가격을 예측하는 문제를 생각해 봅시다. 이미 거래된 아파트의 넓이와 가격을 모은 표가 데이터입니다. '가격은 넓이에 어떤 수를 곱하고 어떤 수를 더한 값'이라는 직선 모양의 규칙이 모델입니다. 곱할 수와 더할 수를 이리저리 바꿔 가며 실제 가격과의 차이가 가장 작아지는 값을 찾는 것이 학습입니다. 마지막으로 학습에 쓰지 않은 거래 기록으로 예측이 얼마나 맞는지 재는 것이 평가입니다.
| 단계 | 하는 일 | 집값 예측에서는 |
|---|---|---|
| 데이터 | 입력과 정답을 짝지어 모은다 | 넓이(입력)와 실제 거래 가격(정답) |
| 모델 | 찾을 규칙의 모양을 정한다 | 가격 = a × 넓이 + b 꼴의 직선 |
| 학습 | 오차가 작아지게 모델의 숫자를 조정한다 | a와 b를 바꿔 가며 예측과 실제의 차이를 줄임 |
| 평가 | 처음 보는 데이터로 성능을 잰다 | 학습에 안 쓴 거래로 예측이 얼마나 맞는지 확인 |
2.데이터: 정답이 붙은 예시와 붙지 않은 예시
입력마다 정답(레이블)이 붙은 데이터로 배우는 것을 지도학습이라고 합니다. '이 메일은 스팸', '이 사진은 고양이', '이 집은 5억 원'처럼 사람이 답을 달아 둔 예시로 배우는 방식입니다. 분류(스팸인가 아닌가)와 수치 예측(얼마일까, 회귀라고도 합니다)이 대표적인 지도학습 문제입니다.
정답 없이 데이터만 주고 비슷한 것끼리 묶거나 구조를 찾게 하는 것은 비지도학습입니다. 쇼핑몰이 고객의 구매 기록만 보고 비슷한 취향의 손님끼리 묶는 일이 그 예입니다. 무엇이 정답인지 아무도 정해 주지 않았으므로, 기계가 찾아낸 묶음이 의미 있는지는 결국 사람이 판단해야 합니다.
어느 방식이든 데이터의 질이 결과의 질을 정합니다. 정답이 잘못 달린 예시, 한쪽으로 치우친 예시, 너무 적은 예시는 모두 모델을 그만큼 나쁘게 만듭니다. 흔히 '쓰레기를 넣으면 쓰레기가 나온다'고 말하는 이유입니다.
- 지도학습: 정답이 붙은 예시로 배운다 — 스팸 분류, 집값 예측, 사진 분류
- 비지도학습: 정답 없이 구조를 찾는다 — 고객 묶기, 비슷한 문서 모으기
- 강화학습: 행동의 결과로 받는 보상을 늘리도록 배운다 — 게임, 로봇 제어
3.학습: 오차를 조금씩 줄여 가는 과정
학습은 '틀린 정도'를 숫자로 재고, 그 숫자가 작아지는 방향으로 모델 안의 숫자를 조금씩 고치는 일의 반복입니다. 틀린 정도를 재는 기준을 손실(오차)이라고 부릅니다. 예측이 정답에서 멀수록 손실이 커집니다.
기계는 처음에 아무렇게나 정한 숫자로 시작합니다. 예측해 보고, 손실을 재고, 손실이 줄어드는 쪽으로 숫자를 살짝 옮기고, 다시 예측합니다. 이 과정을 수천에서 수백만 번 되풀이하면 손실이 더 줄지 않는 지점에 가까워집니다. 숫자를 어느 방향으로 옮겨야 손실이 줄어드는지 계산하는 방법이 수학 기초 10강에서 다루는 기울기(경사 하강법)입니다.
- 현재 예측: 0.1 × 30 = 3억 원
- 실제 가격 6억 원보다 3억 원 낮게 예측했으므로 손실이 큽니다.
- 예측을 올려야 하므로 a를 키우는 방향으로 조금 움직입니다. 예를 들어 a = 0.15이면 예측은 4.5억 원으로 실제에 가까워집니다.
- 이 한 건만 보면 a = 0.2일 때 예측이 정확히 6억 원이 됩니다(0.2 × 30 = 6). 실제 학습은 수많은 거래를 동시에 보며 전체 손실이 가장 작은 a를 찾습니다.
4.평가: 처음 보는 문제로 시험을 본다
학습에 쓴 데이터로 성능을 재면 안 됩니다. 이미 답을 본 문제로 시험을 보는 셈이라 점수가 실제보다 높게 나옵니다. 그래서 데이터를 처음부터 나눕니다. 대부분을 학습용으로 쓰고, 일부는 따로 떼어 두었다가 학습이 끝난 뒤 평가에만 씁니다.
평가 기준은 문제에 따라 다릅니다. 분류 문제는 몇 개를 맞혔는지(정확도)를 보는데, 정확도만 보면 속기 쉽습니다. 메일 100통 중 스팸이 5통뿐이라면 '모두 정상'이라고 답하는 엉터리 모델도 정확도가 95%입니다. 그래서 '스팸 중 몇 통을 잡아냈나', '스팸이라고 한 것 중 진짜 스팸은 몇 통인가'를 함께 봅니다.
- 정상 메일 95통은 모두 맞혔고, 스팸 5통은 모두 틀렸습니다.
- 정확도 = 맞힌 수 ÷ 전체 = 95 ÷ 100 = 95%
- 스팸을 잡아낸 비율 = 잡아낸 스팸 ÷ 전체 스팸 = 0 ÷ 5 = 0%
- 정확도는 높지만 스팸 필터로서는 전혀 쓸모가 없습니다.
5.과적합: 기출문제만 외운 학생
학습 데이터에서는 거의 완벽한데 처음 보는 데이터에서는 형편없는 모델이 있습니다. 이것을 과적합이라고 합니다. 기출문제의 답만 통째로 외운 학생이 숫자만 바뀐 새 문제를 못 푸는 것과 같습니다. 모델이 규칙성뿐 아니라 우연한 잡음까지 외워 버린 상태입니다.
반대로 모델이 너무 단순해서 학습 데이터조차 잘 못 맞히는 상태는 과소적합이라고 합니다. 좋은 모델은 그 중간, 즉 학습 데이터도 꽤 맞히고 처음 보는 데이터도 비슷하게 맞히는 모델입니다. 학습 점수와 평가 점수의 차이가 크게 벌어지면 과적합을 의심합니다.
이 원리는 AI를 쓰는 사람에게도 의미가 있습니다. AI가 어떤 예시에서 훌륭했다고 해서 모든 비슷한 일에서 훌륭하리라는 보장은 없습니다. 내 일에 맞는 새 예시로 직접 시험해 보는 것이 가장 정확한 평가입니다.
📌 핵심 정리
- 머신러닝은 데이터 → 모델 → 학습 → 평가의 네 단계로 이루어진다
- 지도학습은 정답이 붙은 예시로, 비지도학습은 정답 없이 구조를 찾는다
- 학습은 손실(틀린 정도)을 재고 그것이 줄어드는 방향으로 숫자를 고치는 반복이다
- 평가는 반드시 학습에 쓰지 않은 데이터로 한다 — 정확도 하나만 보면 속을 수 있다
- 과적합은 학습 데이터를 외워 버려 새 데이터에 약해진 상태다
🤖 AI에게 이렇게 물어보세요
복사해서 [ ] 부분을 내 상황으로 바꿔 쓰세요. 답을 그대로 믿지 말고 본문과 비교해 확인하세요.
내 일에 머신러닝을 쓸 수 있을지 감을 잡고 싶을 때
나는 [업무나 문제 설명]을 하고 있어. 이 문제를 머신러닝으로 푼다면 입력 데이터, 정답(레이블), 평가 기준을 각각 무엇으로 정해야 할지 제안해 줘. 데이터를 모을 때 생길 수 있는 치우침도 함께 알려 줘.
개념을 제대로 이해했는지 확인하고 싶을 때
과적합을 시험공부에 비유해서 설명해 줘. 그다음 과적합과 과소적합을 구별하는 문제를 세 개 내고, 내가 답하면 채점해 줘.
- 고등학교 「인공지능 기초」 교과 내용(교육부 고시 교육과정)
- 머신러닝 입문 교재의 일반적 설명(지도학습·비지도학습·과적합)
학습 목표를 모두 이뤘다면 완료를 눌러 진도에 기록하세요.
이 브라우저에서는 저장할 수 없어 이 화면에서만 표시됩니다.