AI Math 9강) CNN

한량·2021년 8월 6일
0

CNN 연산의 이해

  • Fully connected 구조: i가 바뀌면 사용되는 weight도 바뀜. 따라서 W의 크기와 parameter의 수도 커지게 된다.
  • Convolution 연산: 모든 i에 적용되는 커널(filter)은 V로 같고, 커널의 사이즈만큼 입력벡터 x 상에서 이동하면서 적용됨.


Convolution의 핵심은 i,j,k가 변해도 커널은 위치에 따라 움직이지 않는다(translation invariant)는 것.


2차원 Convolution 연산


2-D Conv의 예시. 커널의 값은 바뀌지 않고 입력에서 사용되는 값만 바뀌는 것을 볼 수 있다.


Image processing 같은 경우 2차원 행렬의 채널이 RGB, 3개 존재하게 된다 -> 커널, 입력이 텐서(3차원 이상)가 됨.
하지만 출력은 1차원.

출력도 텐서로 만들어주기 위해서는 커널을 Oc개 사용하면 됨.


Backpropagation(역전파)

  • i: output의 채널
  • j: kernel(filter)의 채널

  • σ: 미분값
    backpropagation에서 output을 출력했던 경로로 다시 gradient가 전달된다.
    커널에는 output의 미분값과 입력이 곱해져 전달됨.


w1이 X1-->O1, X2-->O2, X3-->O3으로 전달됐기 때문에 gradient도 똑같이 역으로 전달된다.
각 커널에 들어오는 모든 gradient들을 더하면 결국 convolution 연산과 같다.


backpropagetion에 대한 공부 추가하기!!

profile
놀고 먹으면서 개발하기

0개의 댓글