RNN(순환 신경망)은 순차적인 데이터를 처리할 수 있도록 고안된 신경망 구조로, 입력 순서를 고려하여 시간적 흐름이나 문맥을 반영할 수 있다.
RNN은 일반적인 신경망과 달리 내부 상태(state)를 유지하여 입력 간의 순서를 고려한다. 이 특성 덕분에 자연어, 음성, 시계열 등 시간 종속성이 있는 데이터 처리에 유용하다.
RNN은 각 시점의 입력과 이전 시점의 은닉 상태(hidden state)를 이용해 현재 상태를 계산하며, 이를 다음 시점으로 넘긴다. 이처럼 은닉 상태가 순환 구조를 형성함으로써 과거 정보를 기억하게 된다.
트랜스포머(Transformer)와 RNN은 모두 순차 데이터를 처리하기 위한 구조지만, 처리 방식과 성능 면에서 큰 차이가 있다.
항목 | RNN | Transformer |
---|---|---|
입력 처리 방식 | 순차적 처리 | 전체 입력 병렬 처리 |
문맥 인식 | 단기 의존성에 강함 | 장기 의존성에 강함 (Self-Attention) |
장기 의존성 문제 | 기울기 소실 가능성 있음 | 우수한 정보 보존 |
병렬 처리 | 불가능 (시간 의존) | 가능 (학습 속도 빠름) |
대표 모델 | LSTM, GRU | GPT, BERT, T5 |
이처럼 트랜스포머는 병렬성과 문맥 처리 능력에서 RNN을 능가하며, 최근 대부분의 NLP 모델은 트랜스포머 구조를 채택하고 있다.