반응형

 

수학이나 기계학습등에서 cost function 또는 loss function은 최소화 해야하는 함수를 의미하며,

보통 다변수 함수이다. (인풋은 다변수(다차원)이며, 아웃풋은 함수이므로 하나이며 실수이다.)

예를들어 숫자 인식이라고 하면 실제 정답과의 차이를 합산해서 표현한다.

In classification, it is the penalty for an incorrect classification of an example

의문: 그냥 가장 심플하게 $C = t-x$ 로 정의하면 뭐가 문제일까..비대칭인게 문제라면 $C = |t-x|$는 어떨까..

또는 $C = \sqrt {(t-x)^2}$

• 절대값의 경우는 absolute-difference loss function이라고 부른다.

• However the absolute loss has the disadvantage that it is not differentiable at a=0

필요 property

1. 음수가 나오지 않아야 한다. (loss term이므로 최적의 결과는 0이어야 함)

2. a가 y와 같을 경우(즉 정답을 제대로 맞추었을때는) 0으로 수렴해야한다.

quadratic cost function

$\lambda(x) = C_x = K (y-a)^2 \; $

K:상수, y는 정답, x는 input(보통 다변수), a는 x에 대한 output.

위 식은 특정 인풋 x 하나에 대한 cost이며, 보통은 전체 인풋을 합산한 것을 (또는 합산후 n으로 나누어 평균을 구한것을) C라고 한다.

특징

- x가 t에 대해 위로 차이나나 아래로 차이나나 동일한 symetric이다.

- 최소제곱법에서도 쓰인다.

quadratic cost function은 거리의 제곱(분산?)을 사용해서 직관적인 대신에, 정답과 인풋의 차이가 큰 경우 학습곡선이 느리다는 단점이 있다. 이점에 대해서는 여기링크 확인. 여기도 확인.

단, 학습이 느려지는 것은 activation함수가 sigmoid 형태($a = \sigma(z) \equiv \frac{1}{1+e^{-z}}$)일때만 그렇다.

만약 activation함수를 linear하게 잡으면 ($a = z$) 느려지지 않음에 주의

cross-entropy cost function

\[ \begin{eqnarray} C = -\frac{1}{n} \sum_x \left[y \ln a + (1-y ) \ln (1-a) \right], \tag{57}\end{eqnarray} \]

반응형

+ Recent posts