머신러닝은 경험을 통해 성능이 향상되는 시스템을 설계하는 방법론이라 할 수 있다. 이 개념은 Tom Mitchell에 의해 다음과 같이 정식화되었다.
컴퓨터 프로그램이 어떤 과제 T를 수행하고, 성능 척도 P로 평가될 때,
경험 E가 증가함에 따라 과제 T에 대한 성능 P가 향상된다면
해당 프로그램은 경험으로부터 학습한다고 말할 수 있다.
이 정의는 머신러닝의 본질이 경험(E), 과제(T), 성능(P) 의 관계에 있음을 명확히 보여준다. 즉, 학습이란 단순한 암기가 아니라, 경험의 축적을 통해 일반화 능력이 향상되는 과정을 의미한다.
머신러닝은 학습 과정에서 제공되는 정보의 형태에 따라 여러 유형으로 구분된다.
지도학습은 입력 데이터와 정답(label)이 함께 주어진 상태에서 학습을 수행하는 방식이다. 모델은 입력과 정답 사이의 관계를 학습하여, 새로운 입력에 대해서도 올바른 출력을 예측하도록 훈련된다.
지도학습은 다시 두 가지 대표적인 문제 형태로 나뉜다.
비지도학습은 정답(label)이 존재하지 않는 데이터로부터 구조나 패턴을 스스로 발견하는 학습 방식이다. 데이터의 분포, 군집 구조, 잠재 표현 등을 파악하는 데 목적이 있으며, 대표적으로 clustering이나 dimensionality reduction 문제가 이에 해당한다.
강화학습은 에이전트(agent)가 환경과 상호작용하며 행동(action)의 결과로 보상(reward)을 받는 구조를 기반으로 한다. 모델은 즉각적인 정답이 아닌 누적 보상을 최대화하는 방향으로 정책(policy)을 학습한다는 점에서 다른 학습 방식과 구별된다.
자기지도학습은 명시적인 라벨은 존재하지 않지만, 데이터 내부의 구조를 이용해 pseudo-label을 생성하여 학습하는 방식이다. 학습 형태는 지도학습과 유사하지만, 정답이 외부에서 주어지지 않는다는 점에서 차별화된다. 최근 대규모 언어 모델과 비전 모델에서 핵심적인 역할을 수행하고 있다.
준지도학습은 소량의 라벨 데이터와 다량의 비라벨 데이터를 함께 활용하는 방식이다. 라벨 수집 비용이 높은 현실적인 문제를 해결하기 위한 접근으로, 실제 산업 환경에서 자주 사용된다.
머신러닝을 이해하기 위해서는 몇 가지 기본 단위를 명확히 구분할 필요가 있다.
이러한 구성 요소를 바탕으로 모델은 입력 공간에서 출력 공간으로의 함수(mapping function)를 학습하게 된다.
머신러닝 모델의 성능을 올바르게 평가하기 위해 데이터는 일반적으로 다음과 같이 분리된다.
특히 test set의 결과를 확인한 이후에는 모델을 절대 수정해서는 안 되며, 이는 Data Leakage를 방지하기 위한 중요한 원칙이다.
k-fold cross validation은 하나의 데이터 분할 결과에 의존하지 않고 모델의 성능을 보다 안정적으로 판단하기 위해 사용되는 검증 방법이다. 일반적인 train–validation 분할 방식은 구현이 간단하다는 장점이 있지만, 어떤 데이터가 우연히 검증 데이터에 포함되었는지에 따라 성능이 크게 달라질 수 있다는 한계를 지닌다. 이러한 문제를 보완하기 위해, 데이터 전체를 여러 개의 부분집합으로 나누어 반복적으로 평가하는 방식이 사용된다.
즉,
Loss ⊂ Cost ⊂ Objective
의 관계를 가진다.
실제 딥러닝 구현과 많은 논문에서는 loss와 cost를 엄밀히 구분하지 않고 혼용하는 경우가 많지만, 이론적으로는 위와 같은 구분을 이해하는 것이 바람직하다.
| [Foundation of Deep Learning] 1. Artificial intelligence (0) | 2026.01.17 |
|---|