📌 Time Delay Neural Network (TDNN)
유한한 시간 입력 시퀀스를 고려할 수 있는 피드포워드 신경망
[ 🚨 ]
Window의 크기가 하이퍼파라미터임
고려하고 기억해야 할 데이터가 많을 때 상당한 어려움
많은 양의 데이터를 고려하기 위해 Widow 크기를 늘릴 때 높은 복잡성
예측에 이전 결과를 활용할 수 없는 단방향 네트워크
➡️ Memory 기능을 가진 순환연결로써 이를 해결하자
📌 Recurrent Neural Network (RNN)
텍스트, 비디오 등 시간적, 순차적 데이터에 적합한 양방향 신경망
순환 연결 구조
모든 노드의 출력이 모든 노드의 입력으로 공급됨
즉, 과거의 이벤트가 미래의 결과에 영향을 줄 수 있는 구조
현재 입력과 이전 숨겨진 노드를 기억하는 히든 노드 또는 메모리 셀이 특징
노드의 구성으로 보면 왼쪽 그림과 같고,
시간적 흐름으로 보면 오른쪽 그림과 같이 결과를 계속하여 다음 시간대의 입력으로 사용함
이때, 모든 시간축에서 파라미터를 공유함
(특정 순간에 일어난 일은 중요하지 않음)
위의 그림에서 선 하나하나가 파라미터라고 보면 됨
📌 RNN의 작동 방식
위 그림과 같이 직전의 파라미터가 직후의 입력으로 들어가며, 이때의 파라미터는 공유됨
(왼쪽과 오른쪽의 입력은 다른 값이며, whh는 동일한 파라미터)
➡️ Memory 기능을 가진 순환연결을 활용하여 이전의 결과를 활용할 수 있게 됨
『
이때, Hidden State로
- 현재 시간 단계까지의 기록 정보
- 현재 입력과 이전 시간 단계의 숨겨진 상태로부터 계산된 결과
- 기록 정보를 전달하는 작업 메모리
가 기억되어야 함
Backpropagation은 RNN을 펼친 후 backpropagation through time (BPTT) 수행
』
'[AI] > 인공지능 이론 및 실습' 카테고리의 다른 글
[인공지능] BiLSTM이란? BiLSTM의 구조 (2) | 2024.03.05 |
---|---|
[인공지능] LSTM이란? LSTM의 구조 및 작동 방식 (0) | 2024.03.04 |
[인공지능] LeNet, VGG, LesNet이란? CNN 아키텍처의 간단한 역사 (0) | 2024.03.04 |
[인공지능] Convolutional layer 종류 : Dilated Convolution, Pointwise Convolution, Group Convolution, Depthwise Separable Convolution (2) | 2024.02.14 |
[인공지능] CNN 기초 : Convolutional Layer(Conv), Pooling layer(Pool), CNN 용어 정리 (4) | 2024.02.14 |