[Home] AI로 돌아가기
시퀀스Sequence
01. 시퀀스의 정의
시퀀스(Sequence)란 순서가 있는 데이터의 나열을 의미한다. 단순히 데이터가 모여 있는 것이 아니라, 데이터가 나타나는 '순서' 자체가 중요한 의미를 가지는 데이터 구조이다.
AI 분야에서 시퀀스는 시계열 데이터(Time-series Data), 텍스트(Text), 오디오(Audio) 등 연속적인 흐름을 가진 정보를 다룰 때 핵심적인 개념으로 사용된다.
시퀀스 데이터의 예시:
* 문장: "나는 학교에 간다" (단어의 나열)
* 주가 차트: 시간대별 가격의 변화
* 센서 데이터: 시간에 따른 온도나 습도의 변화
인공지능 모델, 특히 자연어 처리(NLP) 모델은 입력 시퀀스(Input Sequence)를 받아 해석하고, 그에 적합한 출력 시퀀(Output Sequence)를 생성하는 과정을 거친다.
- 입력 시퀀스 (Input Sequence): 모델에 들어가는 일련의 데이터이다. 예를 들어 번역기에서 "How are you?"라는 문장은 세 개의 토큰으로 구성된 입력 시퀀스가 된다.
- 출력 시퀀스 (Output Sequence): 모델이 연산 결과로 내놓는 데이터의 나열이다. 위의 입력을 받은 AI가 "어떻게 지내세요?"라고 답한다면, 이것이 모델의 출력 시퀀스가 된다.
03. 시퀀스 데이터 처리를 위한 모델
전통적인 인공신경망과 달리, 시퀀스 데이터는 데이터 간의 전후 관계를 파악하는 것이 필수적이다. 이를 위해 다음과 같은 알고리즘들이 발전해 왔다.
- RNN (Recurrent Neural Network): 이전 단계의 정보를 현재 단계로 전달하여 순차적인 데이터를 처리하는 기본 모델이다.
- LSTM (Long Short-term Memory): RNN의 단점인 장기 의존성 문제를 해결하여 긴 시퀀스에서도 정보를 잘 기억하도록 설계되었다.
- Transformer: 현재 LLM(거대언어모델)의 핵심 기술로, 시퀀스 내의 모든 요소 간의 관계를 동시에 파악하는 어텐션(Attention) 메커니즘을 사용한다.
04. 시퀀스 데이터의 중요성
현대 AI 기술의 정점인 생성형 AI는 결국 다음에 올 가장 확률 높은 시퀀스를 예측하는 기술이다.
문맥(Context)을 이해한다는 것은 입력 시퀀스 내에 포함된 정보의 선후 관계와 상관관계를 정확히 파악하는 것을 의미하며, 이를 통해 인간과 유사한 자연스러운 문장 생성이나 복잡한 데이터 분석이 가능해진다.
시퀀스 데이터를 처리하기 위해 순환하는 RNN의 구조
출처: 길벗