Yolo 비전 선전
선전
지금 참여하기
용어집

Sequence-to-Sequence 모델

Sequence-to-sequence 모델이 입력 시퀀스를 출력 시퀀스로 변환하여 번역, 챗봇, 음성 인식과 같은 AI 작업을 지원하는 방법을 알아보세요.

시퀀스-투-시퀀스(Seq2Seq) 모델은 딥 러닝 아키텍처의 기본 클래스입니다. 딥 러닝 아키텍처의 기본 클래스입니다. 고정 길이의 입력 시퀀스를 고정 길이의 출력 시퀀스로 변환하는 데 맞춤화된 기본적인 딥 러닝 아키텍처로, 입력과 출력의 길이가 독립적으로 독립적으로. 이 기능은 입력과 출력의 관계가 순차적이고 비순차적인 복잡한 문제를 해결하는 데 필수적입니다. 입력과 출력의 관계가 순차적이고 비선형적인 복잡한 문제를 해결하는 데 필수적입니다. 단일 입력을 단일 레이블에 매핑하는 표준 모델과 달리, Seq2Seq 모델은 시간 경과에 따른 컨텍스트 이해에 탁월하여 많은 자연어 처리(NLP) 번역 서비스 및 음성 어시스턴트 등 매일 사용되는 많은 애플리케이션을 지원합니다.

인코더-디코더 아키텍처

Seq2Seq 모델의 핵심 프레임워크는 인코더-디코더 구조에 의존하며, 이는 다음과 같은 기초 연구 연구와 같은 신경망을 사용한 시퀀스 대 시퀀스 학습 논문과 같은 기초 연구에 소개된 개념입니다. 이 아키텍처는 작업을 컨텍스트 인코딩과 결과 디코딩이라는 두 가지 단계로 나눕니다.

  • 인코더: 이 컴포넌트는 입력 시퀀스를 항목별로 처리합니다(예: 문장의 단어 또는 비디오의 비디오의 프레임). 정보를 고정 길이의 내부 표현인 컨텍스트 벡터로 압축합니다. 벡터로 압축합니다. 전통적으로 인코더는 다음을 사용하여 구축됩니다. 순환 신경망(RNN) 또는 같은 특수한 변형 장단기 메모리(LSTM) 네트워크와 같이 데이터의 장기적인 종속성을 포착할 수 있는 특수한 변형으로 구축됩니다.
  • 디코더: 입력이 인코딩되면 디코더는 컨텍스트 벡터를 가져와서 출력 시퀀스를 한 번에 한 단계씩 생성합니다. 디코더는 이전 예측을 기반으로 시퀀스의 다음 항목을 예측하고 컨텍스트 벡터를 기반으로 다음 항목을 예측합니다. 고급 구현에서는 종종 특정 부분에 집중하는 주의 메커니즘 입력 시퀀스의 특정 부분에 동적으로 집중하여 기본 인코더-디코더 쌍에서 발견되는 정보 병목 현상을 완화합니다.

실제 애플리케이션

Seq2Seq 모델의 유연성 덕분에 단순한 텍스트 분석을 넘어 다양한 영역에 적용할 수 있습니다.

  • 기계 번역: 아마도 가장 유명한 애플리케이션인 Seq2Seq은 다음과 같은 전동 공구를 모델링합니다. Google 번역. 이 모델은 소스 언어(예: 영어)로 된 문장을 받아들여 (예: English)로 된 문장을 받아 대상 언어(예: 스페인어)로 된 문장을 출력하여 문법과 문장 구조의 차이를 유창하게 처리합니다. 문장 구조를 유창하게 처리합니다.
  • 텍스트 요약: 이 모델은 긴 문서나 기사를 수집하여 간결한 요약을 생성할 수 있습니다. 입력 텍스트의 핵심 의미를 이해함으로써 입력 텍스트의 핵심 의미를 이해함으로써, 디코더는 핵심 정보를 유지하는 짧은 시퀀스를 생성하며, 이는 자동화된 뉴스 수집에 필수적인 기술입니다. 핵심 정보를 유지하는 짧은 시퀀스를 생성합니다.
  • 이미지 캡션: 컴퓨터 비전과 NLP를 연결함으로써 컴퓨터 비전과 NLP를 연결하여 Seq2Seq 모델은 이미지의 내용을 설명할 수 있습니다. 컨볼루션 신경망(CNN)은 시각적 특징을 추출하는 인코더 역할을 하고 특징을 추출하는 인코더 역할을 하고, RNN 또는 Transformer는 설명 문장을 생성하는 디코더 역할을 합니다. 이것은 멀티 모달 모델의 대표적인 멀티 모달 모델의 대표적인 예입니다.
  • 음성 인식: 이러한 시스템에서 입력은 일련의 오디오 신호 프레임이고 출력은 텍스트 문자 또는 단어의 시퀀스입니다. 이 기술은 Siri와 Alexa 같은 가상 비서를 뒷받침합니다.

관련 개념과의 비교

특정 유용성을 이해하려면 Seq2Seq 모델을 다른 아키텍처와 구별하는 것이 중요합니다.

  • Vs. 표준 분류: 기본 이미지 분류에 사용되는 것과 같은 표준 분류기는 이미지 분류에 사용되는 것과 같은 표준 분류기는 단일 입력 (예: 이미지)을 단일 클래스 레이블에 매핑합니다. 이와 대조적으로 Seq2Seq 모델은 시퀀스를 시퀀스에 매핑하여 다음과 같이 가변 출력 길이를 허용합니다.
  • Vs. 물체 감지: 다음과 같은 모델 Ultralytics YOLO11 과 같은 모델은 단일 프레임 내에서 공간 감지에 중점을 두고 단일 프레임 내에서 객체와 그 위치를 식별하는 데 중점을 둡니다. YOLO 이미지를 구조적으로 처리하는 반면, Seq2Seq 모델은 은 데이터를 시간적으로 처리합니다. 그러나 다음과 같은 작업에서 영역이 겹칩니다. 비디오 프레임에서 물체의 궤적을 식별하는 물체 추적 순차적인 데이터 분석이 필요합니다.
  • Vs. 트랜스포머: 트랜스포머 트랜스포머 아키텍처는 현대적으로 진화한 Seq2Seq. 기존 Seq2Seq 모델은 RNN과 게이트 리커런트 유닛(GRU)에 의존했습니다, 트랜스포머는 자체 주의력을 활용하여 시퀀스를 병렬로 처리하므로 속도와 정확도가 크게 개선되었습니다.

구현 예시

번역을 위한 전체 Seq2Seq 모델은 복잡하지만, 다음과 같은 라이브러리를 통해 빌딩 블록에 액세스할 수 있습니다. PyTorch. 다음 예제는 다음과 같은 방법을 보여줍니다. Seq2Seq 모델의 전반부 역할을 할 수 있는 간단한 LSTM 기반 인코더를 초기화하는 방법을 보여줍니다.

import torch
import torch.nn as nn

# Initialize an LSTM layer (The Encoder)
# input_size=10 (feature dimension), hidden_size=20 (context vector size)
encoder = nn.LSTM(input_size=10, hidden_size=20, batch_first=True)

# Create a dummy input sequence: Batch size 1, Sequence length 5, Features 10
input_seq = torch.randn(1, 5, 10)

# Forward pass processing the sequence
output, (hidden_state, cell_state) = encoder(input_seq)

# The hidden_state represents the 'context vector' for the sequence
print(f"Context Vector shape: {hidden_state.shape}")
# Output: torch.Size([1, 1, 20])

비디오 프레임을 통한 객체 추적과 같이 컴퓨터 비전 내에서 시퀀스 작업을 탐색하는 데 관심이 있는 분들을 위해 프레임을 통한 객체 추적과 같은 컴퓨터 비전 내에서 시퀀스 작업을 탐색하는 데 관심이 있는 경우, Ultralytics 추적 모드를 살펴보는 것은 실용적인 진입점을 제공합니다. 기본 메커니즘에 대한 이해를 깊게 하기 위해 스탠포드 CS224n NLP 과정은 다음에 대한 포괄적인 자료를 제공합니다. 시퀀스 모델링 및 딥 러닝에 대한 포괄적인 자료를 제공합니다.

Ultralytics 커뮤니티 가입

AI의 미래에 동참하세요. 글로벌 혁신가들과 연결하고, 협력하고, 성장하세요.

지금 참여하기