Part4-25. 쉽게 배우는 역전파 학습법 - 06. (STEP 2) 역전파 학습법의 수식적 이해 - 1
역전파학습법
feed_forward로 계산하고 연쇄법칙을 이용해서 미분값을들 저장하고
동적계획법으로 참조해서 미분값을 계산해나가는 방법
하나의 trainable parameter에 대해서 각각의 수식을 알아야 각각에 대한 미분을 하고
미분을 모아서 연쇄법칙으로 계산해서 역전파할 수 있다는 것이 중요
하나하나을 미분하는 방법을 자세히 살펴볼것
합성함수로서의 심층신경망

fn(hn-1) = a(Wn hn-1 +bn)
각 레이어를 하나의 함수로 본다면 신경망을 합성함수로 표현할 수 있다
학습관점에서 본 심층 신경망

변할 수 있는 것은 trainable parameter와 손실뿐
weight와 bias가 조건부로 들어가됨
손실을 최소화하는 파라메터만 찾으면 됨
심층신경망의 연쇄법칙

입력과 출력을 제외하면 n번째 레이어들(전결합계층)과 loss fuction만 있음
loss를 hn으로 미분하고 hn을 세타n으로 미분한 값을 곱해주고 이를 반복하여 제일 앞까지 진행
세타는 weight와 bias를 벡터화
미분하고자하는 경로사이에 있는 모든 미분값을 곱하면 원하는 미분을 구할 수 있다
반대로 원하는 미분을 구하려면 모든 경로의 미분을 알아야 한다.
세타1으로 L을 미분한 값을 알려면 세타n으로 L을 미분한 값들을 알아야 한다.
Part4-26. 쉽게 배우는 역전파 학습법 - 07. (STEP 2) 역전파 학습법의 수식적 이해 - 2
중간의 모든 미분값을 알아야만 원하는 미분을 할수 있다는 것이 중요 포인트
전결합계층의 미분

출력 hn이 있을때 이전출력 hn-1 가중치 wn, 바이어스 bn
activation function을 떼놓고 계산
임의의 출력 j번째를 떼서 확인
hn-1에 대한 미분
임의의 하나에 출력(i)에 대한 미분
특정 (i)에 관련되지 않은 항들은 없어짐 k=i인 항만 살아남게 됨
weight에 관한 스칼라값만 남게됨
wn-1에 대한 미분
특정(i)에 대해서 미분하게되면 관련되지 않은 값들이 사라지게되고
i번째 입력만 살아남음
bn-1에 대한 미분
바이어스에 대한 미분을 하게되면 1이 됨
y=ax+b와 다를바 없는 수식임
actvation function 추가
a(f(x)의 형태임
단순히 activation function을 곱해주면 됨
연쇄법칙으로 쉽게 풀이 가능
fully connect layer와 actvation function의 연쇄법칙
sigmoid 함수의 미분
최종적으로 정리되면 sigmoid(x)(1-sigmoid(x))형태로 됨
순방향으로 계산할때 sigmoid에 입력이 들어와 계산
sigmoid(x)값을 저장해둠
역방향 연산할때 y(1-y) 저장해둔 값을 불러와 연산에 유리함
역전파 알고리즘

학습데이터로 정방향 연산으로 loss를 구함
정방향 연산시 BP(back_propagation)에 필요한 중간 결과를 저장
연쇄법칙을 이용해서 연산
수식적 미분을 이용하면 단한번의 손실함수 평가로 미분을 구할 수 있음
중간결과를 저장해야하므로 메모리르 추가로 사용함
메모리추가연산에 비해 연산이 이득이 크기때문에 역전파 알고리즘에 이점을 갖음
후기
와.. 어렵... 한번더 들어서 일단 머리에 주입해놓기 해야겠음
'책&강의 학습 > 올인원 패키지 :딥러닝&인공지능' 카테고리의 다른 글
| [패스트캠퍼스 수강 후기] 인공지능강의 100% 환급 챌린지 34회차 미션 (0) | 2020.08.01 |
|---|---|
| [패스트캠퍼스 수강 후기] 인공지능강의 100% 환급 챌린지 33회차 미션 (0) | 2020.07.31 |
| [패스트캠퍼스 수강 후기] 인공지능강의 100% 환급 챌린지 31회차 미션 (0) | 2020.07.29 |
| [패스트캠퍼스 수강 후기] 인공지능강의 100% 환급 챌린지 30회차 미션 (0) | 2020.07.28 |
| [패스트캠퍼스 수강 후기] 인공지능강의 100% 환급 챌린지 29회차 미션 (0) | 2020.07.27 |
댓글