AI데이터엔지니어 부트캠프 <핀테커스> 11주차 - (3) 딥러닝 기초 - Loss Function, Differentiation

Lidit·2023년 11월 10일

Loss Function

Loss = 모델의 예측 y^\hat{y} 실제 정답 yy의 차이

Loss Function = loss를 계산하는 함수

Binary Cross Entropy

J(y,y^)=[ylog(y^)+(1y)log(1y^)],0<y^<1\displaystyle J(y,\hat{y}) = -[ylog(\hat{y}) + (1-y)log(1-\hat{y})], 0< \hat{y} < 1

파이썬으로 표현하기

import numpy as np

class BCELoss:
    def forward(self, y, pred):
        j = -(y * np.log(pred) + ((1 - y) * np.log(1 - pred)))

        return j

Differentiation

평균변화율(ARC, Average Rate of Change)

  • 평균 변화율: Secanct line의 기울기
  • Secant line: 주어진 두 점을 지나는 직선

    ΔyΔx=y1y0x1x0\displaystyle\frac{\Delta y}{\Delta x} = \frac{y_1-y_0}{x_1-x_0}

순간변화율(IRC, Instantaneous Rate of Change)

  • tangent line : 주어진 점을 지나며 함수에 접하는 직선
  • 특정 점의 순간변화율이 해당 점을 지나는 tangent line의 기울기다
  • x=x0x = x_0 일때 tangent line의 기울기를 f(x0)f'(x_0) 로 나타낸다
  • 이를 다른 이름으로 접선의 기울기 , 미분계수 라고도 한다

limΔx0ΔyΔx=f(x0)\displaystyle\lim_{\Delta x\rightarrow 0}\frac{\Delta y}{\Delta x} = f'(x_0)

f(x0)=limΔx0f(x0+Δx)f(x0)Δx\displaystyle f'(x_0) = \lim_{\Delta x \rightarrow 0}\frac{f(x_0+\Delta x) - f(x_0)}{\Delta x}

여기서 특정 x0x_0가 아닌 일반적 xx에 대한 미분계수를 구하기 위해 고안된것이 있다.

도함수

f(x)=limΔx0f(x+Δx)f(x)Δx\displaystyle f'(x) = \lim_{\Delta x \rightarrow 0}\frac{f(x+\Delta x) - f(x)}{\Delta x}

위 함수는 미분계수를 구하고자 하는 xxf(x)f'(x)에 입력하면 해당 xx에 대한 미분계수를 출력해준다.

편미분

  • 다변수 함수의 특정 변수를 제외한 나머지 변수를 상수로 간주하여 미분하는 것

Affine function의 편미분

z=w1x1+w2x2+...+wnxn+bz = w_1x_1 + w_2x_2 + ... + w_nx_n + b

zw1=x1\displaystyle\frac{\partial{z}}{\partial{w_1}} =x_1

zw2=x2\displaystyle\frac{\partial{z}}{\partial{w_2}} =x_2

zb=b\displaystyle\frac{\partial{z}}{\partial{b}} =b

Sigmoid의 편미분

σ(z)=11+ez=(1+ez)1\displaystyle \sigma(z)= \frac{1}{1+e^{-z}}=(1+e^{-z})^{-1}

σz=σ(1σ)\displaystyle \frac{\partial{\sigma}}{\partial{z}} = \sigma(1-\sigma)

BCE(Binary Cross Entropy) Loss function의 편미분

J=[ylog(y^)+(1y)log(1y^)]\displaystyle J = -[ylog(\hat{y}) + (1-y)log(1-\hat{y})]

Jy^=y^yy^(1y^)\displaystyle\frac{\partial{J}}{\partial{\hat{y}}} = \frac{\hat{y}-y}{\hat{y}(1-\hat{y})}

0개의 댓글