Empirical Risk Minimization
1 minute read

Risk

Supervised Learning의 목표는 input $X$를 output $Y$로 매핑하는 모델 $f$를 잘 학습시키는 것이다.

다음과 같은 $N$쌍의 training data set이 있다고 해보자.

\[(x_1, y_1), (x_2, y_2), \cdots , (x_N, y_N)\]

여기서 $L(\hat{y}, y)$ 라는 loss function을 가정해보자.

여기서 모델 $f(x)$의 Risk는 loss function의 기댓값으로 정의된다. 통계적 학습(Statistical Learning)의 목표 또한 함수 공간 $\mathcal{F}$에서 이 loss의 기댓값을 최소화하는 $f$를 찾는 것이다.

\[R(f) = \mathbb{E}[L(f(x), y)]\]

여기서 $X$와 $Y$의 결합확률분포함수를 알면, 다음의 식을 통해 $R(f)$를 구할 수 있다.

\[\begin{align} \ R(f) &= \mathbb{E}[L(f(x), y)] \\ \\ \ &= \int{L(f(x), y)}\mathrm{d}P(x, y) \end{align}\]

그리고 최종적으로 함수 공간 $\mathcal{F}$에서 risk($R(f)$)를 최소화하는 $f^*$를 찾을 수 있게 된다.

\[f^* = \underset{f\in \mathcal{F}}{\operatorname{argmin}} R(f)\]

그런데 여기서 $R(f)$는 계산이 불가능하다. 우리는 $P(x, y)$를 알 수 없기 때문이다.

하지만 risk를 근사할 수는 있다. 그 값이 곧 Empirical Risk이다.

Empirical Risk

정의

Average loss of an estimator for a finite set of data drawn from $P(x, y)$.

\[R_{emp}(f) = \dfrac{1}{N}\sum_{i = 1}^N{L(f(x_i), y)}\]

즉, empirical risk는 training set에서 loss의 평균을 구해 risk를 근사한 것이다. (식을 보면 알겠지만, Empirical Risk는 흔히 machine learning, deep learning에서 칭하는 ‘cost’와도 같다.)

그리고 risk를 최소화하는 $f^*$ 대신, empirical risk를 최소화하는 $\hat{f}$을 찾는다.

\[\hat{f} = \underset{f \in \mathcal{F}}{\operatorname{argmin}}R_{emp}(f)\]

Recent Posts

Lazy learning vs Eager learning
BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
Perplexity of Language Models
Matrix Calculus
Inverted Indexing