- 모델 = 데이터로 학습된 규칙 덩어리. 학습(Training) = 모델을 만드는 과정, 추론(Inference) = 만든 모델로 예측하는 과정.
- 특성(Feature) = 입력 정보, 레이블(Label) = 맞혀야 할 정답. 학습엔 둘 다, 추론엔 특성만 필요하다.
- 데이터는 학습·검증·테스트로 나누고, 테스트 데이터는 학습에 절대 쓰지 않는다.
- 과적합 = 학습 데이터만 외워 새 데이터에 약한 상태. 과소적합 = 학습이 부족해 둘 다 못하는 상태.
- 최종 목표는 새 데이터에서도 잘 작동하는 일반화 성능이다.
머신러닝 용어는 영어와 한국어가 섞여 쓰이고 비슷해 보이는 단어가 많다. 아래 표만 외워도 절반은 끝난다.
| 용어 | 영어 | 한 줄 정의 |
|---|
| 모델 | Model | 데이터로부터 학습된 "규칙 덩어리" |
| 학습/훈련 | Training | 데이터로 모델을 만드는 과정 |
| 추론 | Inference | 학습된 모델로 새 데이터의 답을 예측하는 과정 |
| 특성 | Feature | 예측에 사용하는 입력 정보(변수) |
| 레이블 | Label | 모델이 맞혀야 할 정답 |
| 과적합 | Overfitting | 학습 데이터만 외워 새 데이터에 약한 상태 |
| 과소적합 | Underfitting | 학습이 부족해 패턴조차 못 잡은 상태 |
- 데이터로부터 학습된 결과물. 입력을 받아 출력을 내놓는 "학습된 규칙 덩어리".
- 예: 집의 면적을 입력하면 예상 가격을 출력하는 함수가 하나의 모델이다.
- 처음에는 아무것도 모르는 빈 상태이며, 학습을 통해 점점 똑똑해진다.
머신러닝의 작업은 크게 두 단계로 나뉜다.
- 학습(훈련, Training): 데이터를 보여주며 모델을 만드는 과정. 시간이 오래 걸리고 자원이 많이 든다.
- 추론(Inference): 완성된 모델에 새로운 입력을 넣어 답을 얻는 과정. 실제 서비스에서 사용자가 만나는 단계다.
- 비유: 학습은 "공부하는 과정", 추론은 "배운 것으로 시험 문제를 푸는 과정".
💡 관련 이론: 학습은 보통 한 번(또는 가끔) 무겁게 수행하고, 추론은 서비스 중 수없이 반복됩니다. 그래서 학습과 추론의 비용·속도 요구사항은 서로 다릅니다.
- 특성(Feature): 예측에 사용하는 입력 정보. 변수 또는 속성이라고도 한다.
- 레이블(Label): 모델이 맞혀야 할 정답. (Day 2의 지도학습에서 쓰인다.)
| 항목 | 역할 | 예시 |
|---|
| 면적, 방 개수, 위치 | 특성(입력) | 84㎡, 3개, 강남 |
| 실제 거래 가격 | 레이블(정답) | 9억 원 |
- 학습할 때는 특성과 레이블이 모두 필요하고, 추론할 때는 특성만 넣어 레이블을 예측한다.
| 데이터셋 | 영어 | 용도 |
|---|
| 학습 데이터 | Training set | 모델을 학습시키는 데 사용 |
| 검증 데이터 | Validation set | 학습 중 모델을 점검·조정하는 데 사용 |
| 테스트 데이터 | Test set | 최종 성능을 객관적으로 평가하는 데 사용 |
- 핵심은 테스트 데이터는 학습에 절대 쓰지 않는다는 점이다.
- 학습에 쓴 데이터로 평가하면 "이미 본 문제로 시험 보는" 셈이라 성능이 부풀려진다.
💡 관련 이론: 데이터를 학습/검증/테스트로 나누는 이유는 모델이 "새로운 데이터에서도 잘 작동하는지(일반화, generalization)"를 정직하게 측정하기 위해서입니다.
머신러닝에서 가장 자주 등장하는 문제 개념이다.
- 학습 데이터를 너무 잘 외워서 새로운 데이터에서는 성능이 나쁜 상태.
- 비유: "기출문제만 통째로 외워 변형 문제를 못 푸는 학생".
- 학습 데이터 정확도: 매우 높음 / 새(테스트) 데이터 정확도: 낮음
- 학습이 부족해 패턴조차 제대로 잡지 못한 상태.
- 비유: "공부를 너무 안 해서 기본 문제도 틀리는 학생".
- 학습 데이터 정확도: 낮음 / 새 데이터 정확도: 낮음
| 상태 | 학습 데이터 성능 | 새 데이터 성능 | 비유 |
|---|
| 과소적합 | 낮음 | 낮음 | 공부 부족 |
| 적절함 | 높음 | 높음 | 이해하고 응용 가능 |
| 과적합 | 매우 높음 | 낮음 | 암기만 함 |
💡 관련 이론: 좋은 모델은 학습 데이터와 새 데이터 모두에서 고르게 잘 작동합니다. 과적합과 과소적합 사이의 균형을 맞추는 것이 머신러닝의 핵심 과제이며, 이를 "일반화 성능을 높인다"고 표현합니다.
오늘 배운 용어들은 하나의 흐름으로 이어진다.
특성 + 레이블이 담긴 [학습 데이터]
↓ (학습 / Training)
[모델] 완성
↓ (추론 / Inference)
새 입력(특성) → 예측된 레이블
↓
[테스트 데이터]로 성능 평가 → 과적합/과소적합 여부 확인
- 이 흐름을 머릿속에 그릴 수 있으면 이후 주차의 더 복잡한 내용도 훨씬 쉽게 이해된다.
- 모델 : 학습이 끝난 "규칙 덩어리". 입력을 넣으면 답을 내놓는다.
- 학습(훈련, Training) : 데이터를 보여주며 모델을 만드는 과정. 무겁고 오래 걸린다.
- 추론(Inference) : 완성된 모델에 새 입력을 넣어 답을 얻는 과정. 서비스에서 계속 반복된다.
- 특성(Feature) : 예측에 쓰는 입력 정보. 집값 예측이라면 면적·방 개수·위치.
- 레이블(Label) : 모델이 맞혀야 할 정답. 집값 예측이라면 실제 거래 가격.
- 검증 데이터 : 학습 도중 모델을 점검하고 설정을 조정할 때 쓰는 데이터.
- 테스트 데이터 : 최종 성적을 매기는 데이터. 학습에는 절대 쓰지 않는다.
- 과적합(Overfitting) : 기출문제만 통째로 외워 변형 문제를 못 푸는 상태.
- 과소적합(Underfitting) : 공부가 부족해 기본 문제조차 못 맞히는 상태.
- 일반화(Generalization) : 학습 때 못 본 새 데이터에서도 잘 맞히는 성질. 좋은 모델의 목표.
📝 연습 문제
선택지를 클릭하면 정답·해설이 펼쳐집니다.
완성된 모델에 새로운 입력 데이터를 넣어 예측 결과를 얻는 과정을 무엇이라 하는가?
집값 예측에서 "면적, 방 개수, 위치"는 입력으로 쓰이고 "실제 거래 가격"은 맞혀야 할 정답이다. 각각을 가리키는 용어로 옳은 것은?
어떤 모델이 학습 데이터에서는 정확도가 매우 높지만 새로운 테스트 데이터에서는 성능이 크게 떨어진다. 이 상태를 가장 잘 나타내는 용어는?
머신러닝에서 데이터를 학습·검증·테스트로 나누는 주된 이유는?
학습이 부족해 학습 데이터에서도 패턴을 제대로 잡지 못하고 새 데이터에서도 성능이 낮은 상태는?