close_btn
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print Files
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print Files


슬라이드1.PNG

오차역전파와 매개변수갱신법, 배치정규화에 대해 배워보도록 하겠습니다.슬라이드2.PNG목차입니다.

슬라이드3.PNG시작하기전 개괄적인 설명을 먼저하도록 하겠습니다.슬라이드4.PNG많이들 알고있는 다층신경망의 학습구조입니다. 슬라이드5.PNG인풋이 들어가서 weight와 곱해진 다음 활성화함수로 계산되면서 output이 나오게됩니다.슬라이드6.PNGoutput과 실제값의 차이인 Loss를 줄이는 것이 우리가 해야하는 것인데

인풋값은 이미 정해져있기 때문에 input에 곱해지는 weight값에 변화를 주는 것이 우리가 할 수 있는 것입니다.

슬라이드7.PNGweight값을 갱신시키는 방법 중 세가지를 설명해드릴 것 입니다.

weight가 향하는 방향을 알기 위해서 손실함수의 미분이 필요합니다.

미분값은 체인룰을 통해서 알 수 있습니다.

슬라이드8.PNG미분값을 구하고 최적화 방법들을 이용해 적절한 weight로 갱신시켜나가는 전반적인 과정이

오차역전파가 됩니다.

슬라이드9.PNG

오차역전파 수빈 수정.png아까 앞서서 미분값을 알기위해 체인룰이 필요하다고 말씀드렸는데요

위 슬라이드에서 볼 수 있듯이 가장 마지막 미분값은 1이라는 것에서부터 시작하여 계산할 수 있습니다.

늘 마지막 값은 1이기 때문에 뒤에서부터 체인룰을 이용할 수 있게 되는 것입니다.슬라이드11.PNG체인룰의 과정을 자세히 봅시다

좌측 상단의 L/x 을 구하기 위해 이미 뒤에서 부터 구해져서 알고 있는 L/z 과 ∂z/x를 곱해줍니다.

L/z 은 체인룰을 통해서 알고 있는 값이고, z식은 x로 이루어져있기 때문에 쉽게 z/x를 구할 수 있습니다.


슬라이드12.PNG

https://www.youtube.com/watch?v=fhrORKjjU7w 이 유튜브영상을 참고한 풀이입니다.KakaoTalk_20170521_225655482.jpg활성화함수와 cost함수를 위와같이 두고 한 개의 은닉층이 있는 신경망이 있다고 설정하고

직접 체인룰을 계산해보겠습니다.

KakaoTalk_20170521_225646929.jpg이렇게 weight2와 weight1에 대한 기울기를 구해보면 마지막에 식이 중복되는 모습을 볼 수 있습니다.

그 식을 델타로 두면 델타*input 이 우리가 구하고자 하는 기울기 값이 됩니다.

따라서 미분값을 구하려면 델타를 구하는게 우선이 됩니다.KakaoTalk_20170521_225704414.jpg

이 풀이에서 볼 수 있듯이 델타도 뒤에서부터 구해나갈 수 있습니다.

δ^(3)을 알면 δ^(2)값을 알 수 있습니다. 그 델타값에 input을 곱하면 우리가 처음 구하고자 하였던 미분값이 됩니다.

이렇게 뒤쪽에서 부터 우리가 알고있는 값들을 곱해가며 미분값을 알아가는 것이 오차역전파 과정 중 일부에 해당됩니다.

알아낸 미분값을 이용해 weight값을 조절해야합니다. 이제 어떤 방법으로 weight를 갱신해가는지 알아보겠습니다.

슬라이드13.PNG 슬라이드14.PNG모멘텀은 흔히 사용하는 SGD방법에 말그대로 관성을 넣어주는 방법입니다.

따라서 SGD보다 양옆으로 삐져나가는 경향이 줄어들게 되고 우측의 그림처럼 가려는 방향(중심)으로는 더 빠르게

위아래로는 좌측SGD보다는 덜한 정도로 움직이게 됩니다.

슬라이드15.PNGAdaGrad는 학습률에 영향을 주는 방법입니다. 학습률은 작아도 커도 문제이기 때문에 적절하게 조절해야할 필요가있습니다.

작을 경우는 더 섬세할 수 있겠지만 local minimum에 빠질 위험도 있고 시간도 오래걸립니다. 큰 경우는 발산해 버릴 수 있습니다.

AdaGrad방법은 처음에는 학습률을 크게 그리고 점점 작게 하는 방법입니다.

기울기를 곱한 값으로 계속 학습률을 나눠주기 때문에 점점 작아집니다.슬라이드16.PNGAdam은 AdaGrad와 모멘텀을 합친 방법입니다.

https://arxiv.org/abs/1412.6980

이 곳에서 관련 논문을 볼 수 있습니다.

슬라이드18.PNG슬라이드19.PNG

배치정규화는 미니배치를 이용하는 경우의 문제점을 해결하기 위해 나온 방법입니다.

하나의 data에서 나눠친 배치이지만 각각의 분산이 같을 수는 없기 때문에 문제가 발생합니다.

따라서 정규화를 통해 분산을 같게 해줍니다.

슬라이드20.PNG

이렇게 활성화함수 전에 정규화를 시켜줍니다.

활성화함수 뒤 쪽에도 해줄 수 있지만 보통은 전에 정규화를 해준다고 합니다. 슬라이드21.PNG배치 정규화를 했을 때와 하지 않았을 때의 속도차이입니다.슬라이드22.PNG




나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5