지도학습 — 정답을 보여주며 가르친다
Article
2강에서 학습을 이렇게 그렸다 — 예측하고, 채점하고, 손잡이를 조금 돌린다. 그 고리를 수만 번 돌면 손잡이가 정답을 잘 맞히는 자리에 선다고 했다.
그런데 방금 그 문장에 이미 전제가 하나 숨어 있었다. 채점하려면 정답이 있어야 한다. 머신러닝의 모든 문제에 정답이 딸려 있는 건 아니다. 정답이 있느냐 없느냐로 머신러닝은 크게 두 갈래로 갈리고, 이번 강은 정답이 있는 쪽 — 지도학습(supervised learning) 이다.
'지도'는 지도(地圖)가 아니다
먼저 이름부터 오해가 잦다. 여기 쓰는 "지도"는 1강의 지도(map)와 한자가 다르다.
정답과 함께 데이터를 준다
지도학습은 2강의 고리에 딱 한 가지를 더한다. 입력마다 정답(라벨)을 함께 붙여서 준다.
- 정답이 붙은 데이터를 준다이메일 한 통 + "스팸"이라는 라벨
- 모델이 예측한다지금 손잡이 상태로 답을 내본다
- 정답과 비교해 채점하고 손잡이를 돌린다2강의 그 고리 그대로
이 라벨을 누가 붙이나. 사람이다. 이메일을 열어보고 "이건 스팸"이라 표시하고, 사진을 보고 "이건 고양이"라 적어두는 일을 누군가 미리 해둬야 한다. 이 작업을 라벨링(labeling) 이라 부른다. 지도학습이 잘 되려면 좋은 라벨이 많아야 하는데, 그 라벨을 붙이는 일 자체가 만만치 않은 비용이다. 데이터를 어떻게 준비하는지는 22강(데이터 파이프라인)에서 더 본다.
정답의 생김새로 다시 갈린다 — 분류 vs 회귀
지도학습 안에서도 한 번 더 갈린다. 기준은 정답이 어떻게 생겼느냐다.
분류 (classification)
정답이 선택지 중 하나다
- 이 이메일은 스팸이다 / 아니다
- 이 사진은 고양이 / 개 / 새 중 하나다
- 정해진 선택지 중 하나를 고르는 일
회귀 (regression)
정답이 숫자 하나다
- 이 집은 내일 얼마에 팔릴까
- 이 지역은 내일 몇 도일까
- 선택지가 아니라 연속된 숫자를 맞히는 일
| 문제 | 정답의 형태 | 갈래 |
|---|---|---|
| 이메일이 스팸인지 판별 | 스팸 / 정상 중 하나 | 분류 |
| 손글씨 숫자 인식 | 0~9 중 하나 | 분류 |
| 집값 예측 | 숫자 (원) | 회귀 |
| 내일 기온 예측 | 숫자 (도) | 회귀 |
1강의 스팸 필터, 2강의 손글씨 7 인식 — 전부 분류였다. 정답이 정해진 선택지 중 하나였기 때문이다. 반대로 숫자 하나를 맞혀야 하면 회귀다. 채용공고에 "분류 모델", "회귀 모델"이라는 말이 따로 나오는 건, 애초에 풀려는 문제의 정답 생김새가 다르기 때문이다.
정리하면
지도학습은 입력마다 정답(라벨)을 붙여 주고, 그 정답을 기준으로 손잡이를 돌리는 방식이다. 정답이 선택지면 분류, 숫자면 회귀다.
- 01
'지도'는 지도(地圖)가 아니라 감독한다는 뜻이다
정답을 아는 감독자가 옆에서 알려주며 가르친다는 그림에서 온 이름이다.
- 02
지도학습은 2강의 고리에 정답을 더한 것이다
예측하고, 사람이 붙인 라벨과 비교해 채점하고, 손잡이를 돌린다.
- 03
정답이 선택지면 분류, 숫자면 회귀다
둘 다 지도학습이지만 정답의 생김새로 갈린다.
- 04
라벨을 붙이는 일 자체가 비용이다
사람이 미리 정답을 달아야 하고, 그 데이터 준비 이야기는 22강에서 이어붙인다.
다음 강의에서는 반대쪽을 본다. 정답 없이 데이터만 던져주면 기계가 뭘 할 수 있을까. 비지도학습이다.