순환 신경망 (Recurrent Neural Network)

컴퓨터과학·AI
한 줄 정의: 이전 시점의 정보를 은닉 상태로 기억하며 순서가 있는 데이터를 순차적으로 처리하는 신경망입니다.
순환 신경망순환 신경망 진행 순서: 입력 xₜ → 은닉상태 hₜ, 은닉상태 hₜ → 출력 yₜ.입력 xₜ시점 t은닉상태 hₜhₜ₋₁과 xₜ 결합출력 yₜhₜ가 다음 시점 t+1의 입력과 함께 다시 쓰임(순환)한계긴 시퀀스에서 장기 의존성 문제 → LSTM·GRU, 이후트랜스포머순환 신경망순환 신경망 진행 순서: 입력 xₜ → 은닉상태 hₜ, 은닉상태 hₜ → 출력 yₜ.입력 xₜ시점 t은닉상태 hₜhₜ₋₁과 xₜ 결합출력 yₜhₜ가 다음 시점 t+1의 입력과 함께 다시 쓰임(순환)한계긴 시퀀스에서 장기 의존성 문제 → LSTM·GRU,이후 트랜스포머

쉽게 풀면

소설을 읽을 때 우리는 지금 이 문장만 보는 게 아니라, 앞서 읽은 내용을 계속 머릿속에 기억하면서 이해합니다. RNN(순환 신경망)도 이와 비슷하게 작동합니다. 문장이나 시계열 데이터처럼 순서가 중요한 데이터를 한 시점씩 읽어 나가면서, 그때까지 처리한 내용을 "은닉 상태"라는 요약 메모 형태로 계속 들고 다닙니다.

다음 단어(혹은 다음 시점 값)를 처리할 때는 이 메모와 새 입력을 함께 참고해서 판단합니다. 그래서 문장의 앞부분과 뒷부분이 서로 연결된 의미를 가질 때 특히 유용합니다.

왜 중요한가

RNN은 순서가 의미를 가지는 데이터, 즉 시계열이나 문장, 음성 신호 등을 다루는 연구에서 오랫동안 표준적인 도구로 쓰여 왔습니다. 이전 시점의 정보를 요약해 다음 시점 처리에 반영한다는 아이디어 자체가 이후 등장한 어텐션 메커니즘, 트랜스포머 같은 시퀀스 모델링 기법들의 개념적 출발점이 되었기 때문에, 최신 논문에서도 비교 대상이나 배경 설명으로 자주 언급됩니다.

핵심 정리

예시로 보기

가상의 예(코드로 계산) 1: 입력 10차원, 은닉 32차원인 가장 단순한 RNN의 모수는 Wx 32×10 = 320, Wh 32×32 = 1,024, 편향 32로 합계 1,376개입니다. 시퀀스가 길어져도 모수 수는 그대로입니다.

예 2: 기울기가 시간을 거슬러 갈 때 같은 계수가 반복해서 곱해지는 상황을 스칼라로 단순화해 봅시다. 계수 0.5를 20번 곱하면 약 9.5 × 10−7로 거의 사라지고, 1.5를 20번 곱하면 약 3,325로 커집니다. 이것이 기울기 소실·폭주의 직관이며, 긴 의존성을 학습하기 어려운 이유로 설명됩니다(Bengio 등, 1994). 실제 RNN은 행렬과 활성함수의 도함수가 곱해지므로 이 스칼라 모형은 단지 직관입니다.

자주 하는 오해

논문에서는 이렇게 쓰입니다

실제 논문에서

이 용어를 직접 쓴 국내 논문 문장을 아직 수집하지 못했습니다. 수집되는 대로 출처와 함께 싣겠습니다.

예시 문장

아래는 용어의 쓰임을 보여 주려고 만든 예시로, 실제 논문에서 가져온 문장이 아닙니다.

"본 연구에서는 순차적으로 수집된 센서 데이터를 처리하기 위해 RNN 기반 모델을 사용하였다."

이 문장은 "데이터가 시간 순서를 가지고 있어서, 이전 시점의 정보를 기억하며 처리하는 RNN 구조를 모델로 채택했다"는 뜻입니다.

"환자의 시계열 생체 신호를 입력으로 받는 RNN 모델을 학습하여, 다음 시점의 이상 징후 발생 가능성을 예측하였다."

의료 데이터 분석에서는 혈압이나 심박수처럼 시간에 따라 변하는 생체 신호를 RNN으로 처리해, 과거 흐름을 반영한 예측을 시도하는 경우가 많습니다.

"기존 통계 기반 언어모델과 비교하기 위해 RNN 기반 언어모델을 베이스라인으로 함께 평가하였다."

자연어처리 논문에서는 트랜스포머 계열 모델의 성능을 강조하기 위한 비교 기준(베이스라인)으로 RNN 계열 모델을 함께 제시하는 경우가 흔합니다.

조금 더 깊게 보면

기본 RNN은 시퀀스가 길어질수록 앞부분의 정보가 점점 옅어지는 문제를 겪는데, 이를 완화하기 위해 LSTM(장단기 메모리)이나 GRU 같은 변형 구조가 게이트라는 메커니즘을 도입해 기억할 정보와 잊을 정보를 선택적으로 조절합니다. 또한 RNN은 학습 과정에서 시간 축을 따라 오차를 역전파하는 BPTT(시간 역전파) 방식을 사용하는데, 이 과정에서 기울기가 지나치게 작아지거나 커지는 현상이 장기 의존성 문제의 근본 원인 중 하나로 꼽힙니다.

주의할 점

RNN은 문장이 길어질수록 앞부분의 정보가 점점 흐려져서 잊혀지는 "장기 의존성" 문제를 겪습니다. 이 한계를 극복하기 위해 등장한 것이 어텐션 메커니즘이며, 이를 전면적으로 활용한 트랜스포머 구조는 오늘날 대부분의 언어 모델에서 RNN을 대체하고 있습니다.

헷갈리기 쉬운 용어

순서가 있는 데이터를 다루는 신경망 구조들입니다.

구조시점 간 정보 전달특징
RNN은닉 상태를 한 시점씩 넘김구조가 단순하고 긴 의존성 학습이 어려움
LSTM게이트가 있는 셀 상태긴 의존성에 상대적으로 강함
트랜스포머어텐션으로 모든 위치를 직접 참조병렬 학습이 쉬움

참고 문헌

  1. Elman, J. L. (1990). Finding structure in time. Cognitive Science, 14(2), 179–211.
  2. Bengio, Y., Simard, P., & Frasconi, P. (1994). Learning long-term dependencies with gradient descent is difficult. IEEE Transactions on Neural Networks, 5(2), 157–166.
  3. Hochreiter, S., & Schmidhuber, J. (1997). Long short-term memory. Neural Computation, 9(8), 1735–1780.
  4. Rumelhart, D. E., Hinton, G. E., & Williams, R. J. (1986). Learning representations by back-propagating errors. Nature, 323, 533–536.

표의 기준값은 위 문헌에 근거한 관례이며, 분야·학술지마다 다른 기준을 쓸 수 있습니다.

개념 계통

상위 개념

분야 전체 개념 지도 보기 →

관련 용어