Convolution Neural Network & Recurrent Neural Network
지금까지 배운 다층신경망은 각 뉴런들이 선형모델과 활성함수로 모두 연결된 구조였다
이와 다르게, convolution 연산은 커널(kernel)(고정된 가중치 행렬)을 입력벡터 상에서 움직여가면서 선형모델과 합성함수가 적용되는 구조이다.
👉 의 개수의 상관 없이 공통된 사이즈의 커널을 사용하여 연산에 활용하기 때문에 parameter 사이즈를 많이 줄일 수 있다.
2차원 Convolution 연산
입력 크기를 , 커널 크기를 , 출력 크기를 라 할 때 출력크기는 다음과 같다.
- 채널이 여러개인 2차원 입력의 경우는 각각의 2차원 convolution을 채널의 개수만큼 적용하여 더함
- 커널의 채널 수와 입력의 채널 수가 같아야 함
: 채널이 여러개인 커널과 3차원 입력 텐서를 convolution 연산을 수행하면 채널이 1개인 출력이 나옴 -> 커널과 입력의 채널이 같아서 각각 연산 후 더해지기 때문
- 출력을 여러 채널로 나오게 하려면 커널의 개수를 여러개 만들면 됨
RNN의 역전파는 잠재변수의 연결그래프에 따라 순차적으로 계산
이를 Backpropagation Through TIme(BPTT)라 하며 RNN의 역전파 방법임
시퀀스 길이가 길어지는 경우엔 BPTT를 통한 역전파 계산이 불안정해지므로 길이를 끊는 것이 필요(truncated BPTT)
출처 - 부스트캠프 AI tech 교육자료
[부스트캠프 AI Tech] Week 1 - Day 5