본문 바로가기

ComputerScience/Machine Learning

Deep Learning 1-2-1

728x90
강의를 듣고 정리한 내용입니다.

사진을 입력값으로 받고 고양이인지 강아지인지 판별해야 한다. 컴퓨터는 사진을 색 정보를 지닌 세 matrices로 이해한다. 이 세 matrices를 하나의 input feature vector, x로 만든다. 

(x,y) : (input, output)

x(i), y(i) : training example

m_train : train example 수

m_test : test example 수

X : x(i)들을 column으로 나열, m개의 columns로 구성

Y : y(i)들을 column으로 나열, m개의 columns로 구성

 

(파랑) binary classification 문제에서 사용하는 learning 방법이다. X가 주어졌을 때 w, b parameter를 함께 넘겨서 y^을 찾는다. 하지만 이 방식에서는 y^이 0, 1사이로 결정 되지 않는다.

(초록) 따라서 sigmoid function을 적용해서 y가 확률이 되도록 한다.

 알고리즘이 잘 예측을 하는지 실제 값과 예측값을 비교하는 loss function을 정의해보자. loss function은 하나의 training example에 대해서 loss를 계산한다. cost function은 전체 training set에 대해서 loss의 평균을 구한다. 

cost function J(w,b)를 통해 cost를 구했다. training을 통해 이 cost를 최소화 하기위한 w, b를 찾아야 한다. 그래프는 w, b에 따른 cost를 나타낸다.

gradient descent는 initial point에서 시작해서 점차 minimum hull을 찾아가는 알고리즘이다.

(초록) a를 조정해서 learning rate를 올릴 수 있다.

forward propagation : NN model의 입력층부터 출력층까지 순서대로 변수들을 계산하고 저장하는 것. 최종적으로 cost를 구한다.

backward propagation : cost로 부터 파라미터들에 대한 그래디언트(gradient)를 계산. 각 gradient들의 평균을 가지고 순서대로 각 layer의 weight, bias를 갱신해 나간다.

red 화살표는 backward propagation으로 gradient를 계산한다. 이를 사용하여 최적화를 위해 w,b를 재갱신한다.1. dj/dv를 구한다. 2. dj/da를 구한다.3. dj/da = dj/dv * dj/da (chain rule)이렇게 우측에서 좌측으로 이동하며 계산을 마친다.

loss를 구하고 backward propagation으로 gradient를 구한다.  구한 gradient(dz)로 w1, w2, b를 갱신한다.

m examples에서 gradient를 구하고  w와 b를 갱신하는 과정을 살펴본다.

728x90
반응형

'ComputerScience > Machine Learning' 카테고리의 다른 글

AI - 2. Search  (0) 2021.09.09
Deep Learning 1-2-2  (0) 2021.09.07
Deep Learning 1-1  (0) 2021.09.07
AI - 1. Artificial Intelligence  (0) 2021.09.02
Hands-On-Machine Learning : 67p ~ 98p  (0) 2021.08.14