[Deep Learning] 경사하강법과 역전파 알고리즘

박민예·2021년 8월 10일
0

🏆 학습목표

  • 경사하강법과 역전파 알고리즘에 대해 이해하고 설명할 수 있다.
  • 경사하강법과 역전파 알고리즘을 사용하여 신경망을 구현할 수 있다.
  • 케라스 프레임워크를 이용하여 모델을 구축할 수 있다.

📚 손실함수(loss function)

손실함수란?

  • 실제값과 예측값의 차이(loss, cost)를 수치화 해주는 함수.
  • 손실함수의 값을 최소화하는 w, b를 찾는 것이 목표.
  • 딥러닝 모델은 실제 라벨과 가장 가까운 값이 예측되도록 훈련되어진다. 이때 그 가까운 정도를 측정하기 위해 사용되는 것이 손실함수(loss function)이다.

손실함수 종류

  1. MSE(mean squared error)
    : 회귀(regression)용도의 딥러닝 모델을 훈련시킬 때 많이 사용되는 손실 함수이다.

  2. MAE(mean absolute error)
    : 에러 제곱의 평균이 아니라 에러 절대값의 평균을 구한다. MAE도 회귀 용도의 딥러닝 모델을 훈려시킬 때 많이 사용된다.

  3. binary crossentropy
    : 이진분류기 훈련때 사용. 이진 분류기라는 것은 True 또는 False, 양성 또는 음성 등 2개의 클래스를 분류할 수 있는 분류기를 의미한다.

  4. categorical crossentropy
    : 분류해야할 클래스가 3개 이상인 경우 사용(멀티 클래스 분류). 라벨이 [0,0,1,0,0], [1,0,0,0,0], [0,0,0,1,0]과 같이 one-hot 형태로 제공될 때 사용된다.

  5. sparse categorical crossentropy
    : 분류해야할 클래스가 3개 이상인 경우 사용(멀티 클래스 분류). 라벨이 0, 1, 2, 3, 4와 같이 정수의 형태로 제공될 때 사용한다.

참고_https://bskyvision.com/822

📕 신경망 구조

  • 입력층(Input layer), 은닉층(Hidden layer), 출력층(Output layer)이 존재
  • 각 층은 n개의 뉴런(노드, activation units)으로 구성되어 있고, 각각 가중치(weight)와 편향(bias)를 가지고 있다.
  • 입력층에서 은닉층, 출력층으로 데이터 전달(순전파)
    - 훈련데이터를 입력층(이전층)으로부터 받는다.
    - 입력데이터는 가중치와 가중합(weight sum)을 한다.
    - 편향(bias)이 더해진다.
    - 편향이 더해진 가중합은 활성화 함수(activation funcion)을 통해 다음층으로 전달된다. 입력의 특성이 n개인 경우 전달되는 값은 다음과 같다.
y=sigmoid((w1x1+w2x2+...+wnxn)+bias)y = sigmoid(\sum(w_{1}x_{1} + w_{2}x_{2} + ... + w_{n}x_{n}) + bias)

📗 Backpropagation(BP) 역전파

profile
🔥오늘도 노력하고 있지요😁

0개의 댓글