7.7.1 양방향 RNN 구조
양방향 RNN은 하나의 출력 값을 예측하는 데 메모리 셀 두 개를 사용합니다. 첫 번째 메모리 셀은 이전 시점의 은닉 상태(forward states)를 전달받아 현재의 은닉 상태를 계산합니다. 다음 그림에서는 초록색 메모리 셀에 해당됩니다. 두 번째 메모리 셀은 다음 시점의 은닉 상태(backward states)를 전달받아 현재의 은닉 상태를 계산합니다. 다음 그림의 노란색 메모리 셀에 해당됩니다. 그리고 이 값 두 개를 모두 출력층에서 출력 값을 예측하는 데 사용합니다.
▲ 7-30 양방향 RNN
양방향 RNN에 대한 개념은 RNN뿐만 아니라 LSTM이나 GRU에도 적용됩니다. 예제는 양방향 LSTM으로 구현해 보겠습니다.