수달이네 기술 블로그

9. Seq2Seq(Sequence-to-Sequence) 본문

AI공부/자연어처리

9. Seq2Seq(Sequence-to-Sequence)

슬픈 수달이 2026. 3. 2. 20:03

자연어 이해(NLU, Natural Language Understanding)

기계가 인간의 언어를 의미적으로 해석, 이해하는 기술

  • 단어, 문맥 분석
  • 개체 인식(NER, Named Entity Recognition): 특정 의미를 가진 단어(개체)를 찾고 분류
  • 감정 분석
  • 의미적 유사성 판단
  • 문장 의도 분류 등에 사용

챗봇, 음성 비서, 기계 번역 자동 요약 등의 분야에서 중요한 기술

자연어 생성(NLG, Natural Language Genaration)

기계가 인간의 언어를 자연스럽게 생성하는 기술(데이터를 분석하고 문맥을 반영하여 문장을 구성)

  • 글 작성, 요약, 대화형 응답 생성 등의 분야

데이터 해석 > 문장 계획 > 언어 실현의 단계를 거침.

Seq2Seq(Sequence-to-Sequence)

입력 시퀀스(encoder)를 받아 출력 시퀀스(decoder)를 생성하는 신경망 아키텍처

  • 번역, 요약, 질의 응답에 사용된다.

인코더

입력 시퀀스를 읽고 중요한 정보를 하나의 고정된 크기의 벡터(Context Vector)로 변환

즉, 압축된 의미로 바꿔준다.

  1. 입력 시퀀스 처리: 인코더가 문장을 단어, 문자 단위로 받아들임.
  2. 순환 신경망(RNN, LSTM, GRU) 처리: 처리한 단위를 하나씩 처리하며 Hidden state를 업데이트
  3. 최종 상태 저장: 단위를 모두 처리한 후 마지막 숨겨진 상태(Context Vector)를 만든다.
    • 여기에 입력 시퀀스의 중요 정보가 압축되어있음.

디코더

인코더가 생성한 Context Vector를 받아 원하는 출력 시퀀스를 생성한다.

즉, 압축된 의미를 새로운 문장으로 생성함.

  1. Context Vector 처리: 인코더에서 생성된 Context Vector를 첫 번째 입력으로 받는다.
  2. 출력 시퀀스 생성: 한 단어씩 출력을 예측하며 이전에 생성된 단어를 다음 입력으로 사용한다.
  3. LSTM, GRU등 모델을 이용해 문장 생성
  4. 종료 토큰(EOS, End of Sequence): 문장이 끝났음을 알리는 토큰을 생성하면 출력 완료.

단점

  1. 인코더가 입력을 하나의 고정된 Context Vector로 변환하여 정보손실.
  2. RNN기반의 구조로 인해 장기 의존성 문제 존재(초반 단어와 후반 단어 간의 관계 학습의 한계)
  3. 병렬 처리가 불가해 생성 속도가 느림
  4. 오토리그레시브(예측 오류가 이후 결과에 영향을 미침) 문제
  5. 훈련 데이터에 의존적(새로운 도메인, 문장에서 일반화 난항)

해당 문제들은 Attention, Transformer등의 모델이 등장하여 발전 중이다.

'AI공부 > 자연어처리' 카테고리의 다른 글

11. Attention  (0) 2026.03.04
10. Seq2Seq구현  (0) 2026.03.03
8. GRU(Gated Recurrent Unit)  (0) 2026.02.28
7. LSTM(Long Short Term Memory)  (0) 2026.02.27
6. RNN활용 KOSPI예측(시퀀스데이터)  (0) 2026.02.23