본문 바로가기

Studying/Deep Learning

[모두를 위한 딥러닝] 6일차

forward는 W,b 값을 미리 정해서 대입


backpropagation 은 편미분을 해서 뒤에서 부터 앞의 값을 알아냄


sigmoid 함수 (S 모양) 을 사용하면 정확도가 0.5 에서 멈춘다.


그 이유는 layer가 많아질수록 input쪽에 가까운 것은 영향력이 적어진다. (Vanishing gradient)


0~1 의 값임으로 0.001 같은 값들이 반복해서 곱해지기 때문에


그래서 이것을 보완하기 위해 ReLu 라는 것을 사용한다.


ReLu는 0이하는 0, 0이상은 linear한 것이다.


그리고 마지막에는 sigmoid를 사용한다. 왜냐하면 결과를 0~1 값으로 표현하기 위해서 이다.


maxout eLu tanh 등 다른 함수도 있다.


초기값 잘 설정하는 법


모두 0은 안 된다.


forward bachward 를 해서


두 개의 차이가 적어질 때까지 W와 b를 조절한다.


정규화 Dropout : 랜덤하게 몇몇의 뉴런들을 0으로 만든다.(끊어버린다.)

앙상블(ensemble) : 트레이닝 셋은 상관없이 러닝 모델을 여러개 만든 후 그 결과들을 합치는 방식


fast forward: 중간 중간 layer를 뛰어넘어가는 것

split & merge: layer들을 나누었다가 합치는 방식

recurrent network: 다른 모델에서 같은 layer 층에서 교환