머신러닝을 공부하다 보면, "consistent model"이라는 표현이 자주 등장합니다.
하지만 실제로는 단순히 주어진 데이터에 잘 맞는, 즉 일관된 모델만으로는 부족합니다. 그 이유는 머신러닝이 다루는 문제 자체가 ill-posed problem, 즉 해가 유일하지 않은 문제이기 때문입니다.
머신러닝의 목표는 '일반화'
가치 있는 머신러닝 모델은 단순히 학습 데이터에 잘 맞는 것에 그치지 않고,
보지 못한 데이터에 대해서도 잘 작동하는 모델이어야 합니다. 이를 generalization이라고 하며, 노이즈에 강하고 다양한 입력에 대해 일관된 출력을 내는 것이 핵심입니다.
모델 선택 기준과 Inductive Bias
모델을 선택할 때 우리는 단순히 정확도가 높은 모델을 고르는 것이 아니라,
일반화 성능을 고려한 선택 기준을 적용합니다. 이를 가능하게 해주는 것이 바로 Inductive Bias입니다.
Inductive Bias란, 알고리즘이 어떤 모델이 더 옳다고 선호하거나 제한하는 경향을 의미합니다.
Inductive Bias의 두 가지 종류
- Restriction Bias
모델 클래스 자체를 제한함으로써 가능한 가설의 범위를 줄입니다.
예: 선형 모델만 고려한다면, 복잡한 곡선 형태의 모델은 자동적으로 배제됩니다. - Preference Bias
여러 후보 모델 중에서 어떤 것을 선호하도록 설정합니다.
예: 간단한 모델을 더 우선시하는 경향 (Occam's Razor)
머신러닝의 정의를 다시 정리해보면
머신러닝은 다음과 같이 설명할 수 있습니다.
주어진 후보 모델들 중에서, 학습 데이터셋을 넘어서 가장 일반화를 잘하는 예측 모델을 찾는 것
즉, 단순히 데이터를 설명하는 것을 넘어, 타깃 특성과의 관계를 효과적으로 학습하는 것이 목적입니다.
머신러닝의 구성 요소
머신러닝 모델은 다음 두 가지를 바탕으로 만들어집니다.
- Training DataSet
- Inductive Bias (알고리즘이 전제하는 가정)
이 두 요소는 모델이 어떤 방향으로 학습하고 어떤 종류의 일반화를 수행할지를 결정합니다.
잘못된 머신러닝의 원인: 부적절한 Inductive Bias
Inductive Bias가 적절하지 않으면 다음과 같은 문제가 발생합니다.
Underfitting
- 모델이 지나치게 단순하여 데이터셋에 담긴 기본적인 관계조차 표현하지 못합니다.
- 일반화 이전에 학습 자체가 부족한 경우입니다.
Overfitting
- 모델이 지나치게 복잡하여, 데이터셋의 노이즈까지 학습해버립니다.
- 학습 데이터에는 잘 맞지만, 새로운 데이터에는 취약합니다.
마무리
좋은 머신러닝 모델이란 단순히 학습 데이터를 설명하는 모델이 아니라,
적절한 Inductive Bias를 바탕으로 보편적인 패턴을 잘 학습한 모델입니다.
다시 말해, 학습을 넘어 일반화(generalization)까지 고려해야 진짜 의미 있는 모델이라고 할 수 있습니다.
'development > 머신러닝 운영' 카테고리의 다른 글
| PyTorch 모델 저장 시 ModuleNotFoundError 오류 해결기: pickle과 버전 호환의 함정 (2) | 2025.08.08 |
|---|---|
| from_pretrained 없이 로컬 구성요소만으로 Stable Diffusion 파이프라인 조립하기 (4) | 2025.08.07 |
| 🤯 [Error 분석]Stable Diffusion 모델을 Git에서 받다가 생긴 시행착오 (4) | 2025.08.06 |
| Stable Diffusion 이미지 생성 API 만들기 (2) | 2025.08.06 |
| Ubuntu에서 AI 개발 환경 세팅한 기록 (1) | 2025.08.06 |