---
title: "Architektura encoder–decoder"
source: "https://systems-analysis.info/int/Architektura_encoder%E2%80%93decoder"
wiki: "systems-analysis.info/int"
article: "Architektura_encoder–decoder"
language: "pl"
categories:
  - "Category:Large language models"
  - "Category:Machine learning"
  - "Category:Polish"
revision_id: 434
wiki_created_at: 2026-09-06T22:33:41Z
wiki_modified_at: 2026-09-06T22:33:41Z
downloaded_at: 2026-09-07T22:39:59Z
---

# Architektura encoder–decoder

**Modele koder-dekoder** (ang. Encoder-Decoder Models) — to klasa architektur sieci neuronowych przeznaczonych do rozwiązywania zadań **przekształcania sekwencji w sekwencję (sequence-to-sequence, seq2seq)**. Architektura ta składa się z dwóch głównych komponentów:

- **Koder (enkoder):** Przetwarza sekwencję wejściową i kompresuje ją do zwartej reprezentacji numerycznej (wektor kontekstowy lub sekwencja ukrytych stanów).
- **Dekoder:** Pobiera tę reprezentację i na jej podstawie generuje sekwencję wyjściową.

Architektura ta stanowi podstawę wielu zadań z zakresu przetwarzania języka naturalnego (NLP) i widzenia komputerowego, takich jak tłumaczenie maszynowe, streszczanie tekstu oraz generowanie podpisów do obrazów.

## Koncepcja

Podstawowa idea architektury koder-dekoder polega na rozdzieleniu zadań **rozumienia** i **generowania**. Koder odpowiada za rozumienie sekwencji wejściowej, wydobywając z niej wszelkie niezbędne informacje semantyczne. Dekoder odpowiada za generowanie nowej sekwencji, wykorzystując informacje dostarczone przez koder.

Pozwala to modelowi pracować z sekwencjami o różnej długości na wejściu i wyjściu, co było trudne do osiągnięcia we wcześniejszych architekturach.

## Ewolucja architektury

### Wczesne modele oparte na RNN/LSTM

Pierwotnie architektura koder-dekoder była implementowana z wykorzystaniem rekurencyjnych sieci neuronowych (RNN) lub ich udoskonalonego wariantu LSTM.

- **Koder:** Koder RNN przetwarzał sekwencję wejściową token po tokenie i na wyjściu produkował jeden **wektor kontekstowy** — ukryty stan po przetworzeniu ostatniego tokenu, który miał zawierać informacje o całej sekwencji.
- **Dekoder:** Dekoder RNN był inicjalizowany tym wektorem kontekstowym i autoregresyjnie generował sekwencję wyjściową.

Główną wadą tego podejścia był problem \\wąskiego gardła\\: wszystkie informacje z sekwencji wejściowej musiały być skompresowane do jednego wektora o stałej długości, co prowadziło do utraty informacji, szczególnie w przypadku długich sekwencji.

### Wprowadzenie mechanizmu uwagi

Przełom nastąpił wraz z wprowadzeniem **mechanizmu uwagi (attention mechanism)** (Bahdanau et al., 2014).

- **Zasada działania:** Zamiast polegać na jednym wektorze kontekstowym, dekoder na każdym kroku generowania \\zwraca uwagę\\ na **wszystkie** ukryte stany kodera. Oblicza wagi uwagi, które wskazują, które części sekwencji wejściowej są najbardziej istotne dla wygenerowania bieżącego tokenu wyjściowego.
- **Zalety:** Rozwiązało to problem \\wąskiego gardła\\ i pozwoliło modelowi efektywnie pracować z długimi sekwencjami, znacząco poprawiając jakość, zwłaszcza w tłumaczeniu maszynowym.

### Architektura Transformer

W 2017 roku w artykule „Attention Is All You Need" przedstawiono architekturę **Transformer**, która całkowicie zrezygnowała z rekurencyjności na rzecz mechanizmu uwagi.

- **Koder Transformera:** Składa się ze stosu warstw, z których każda wykorzystuje **samouwagę (self-attention)** do tworzenia skontekstualizowanych reprezentacji dla każdego tokenu wejściowego.
- **Dekoder Transformera:** Składa się ze stosu warstw, z których każda posiada dwa typy mechanizmów uwagi:
  - **Maskowana samouwaga:** Do przetwarzania już wygenerowanej części sekwencji wyjściowej.
  - **Uwaga krzyżowa (Cross-Attention):** Do \\zwracania uwagi\\ na reprezentacje wyjściowe kodera.

Architektura ta stała się standardem dla zadań seq2seq dzięki wysokiej wydajności i możliwości zrównoleglenia obliczeń.

## Zastosowania

Architektura koder-dekoder jest standardem dla szerokiego zakresu zadań:

- **Tłumaczenie maszynowe:** Przekształcanie zdania z jednego języka na inny.
- **Automatyczne streszczanie tekstu:** Tworzenie skróconej wersji długiego dokumentu.
- **Systemy dialogowe:** Generowanie odpowiedzi na wypowiedź użytkownika.
- **Podpisy do obrazów (Image Captioning):** Koder (często oparty na splotowej sieci neuronowej) przetwarza obraz, a dekoder (często RNN lub Transformer) generuje jego tekstowy opis.
- **Rozpoznawanie mowy:** Przekształcanie sygnału audio na transkrypcję tekstową.

## Główne modele

- **Oryginalny Transformer** (Vaswani et al., 2017): Model, który zapoczątkował tę architekturę.
- **BART** (Bidirectional and Auto-Regressive Transformers): Model firmy Facebook, wstępnie trenowany na zadaniu odtwarzania \\uszkodzonego\\ tekstu. Koder jest dwukierunkowy (jak w BERT), a dekoder — autoregresyjny (jak w GPT).
- **T5** (Text-to-Text Transfer Transformer): Model firmy Google, który ujednolica wszystkie zadania NLP, przedstawiając je jako problem przekształcania tekstu w tekst. T5 osiągnął wybitne wyniki na wielu benchmarkach.

## Porównanie z innymi architekturami

| Architektura      | Główne zadanie                        | Komponenty      | Typowe modele                    |
|-------------------|---------------------------------------|-----------------|----------------------------------|
| **Koder-dekoder** | Przekształcanie sekwencji w sekwencję | Koder + Dekoder | T5, BART, oryginalny Transformer |
| **Tylko-koder**   | Rozumienie tekstu                     | Tylko koder     | BERT, RoBERTa                    |
| **Tylko-dekoder** | Generowanie tekstu                    | Tylko dekoder   |                                  |

Porównanie kluczowych architektur opartych na Transformerze

- 

## Literatura

- Bahdanau, D. et al. (2014). *Neural Machine Translation by Jointly Learning to Align and Translate*. arXiv:1409.0473.
- Sutskever, I. et al. (2014). *Sequence to Sequence Learning with Neural Networks*. arXiv:1409.3215.
- Luong, M.-T. et al. (2015). *Effective Approaches to Attention-based Neural Machine Translation*. arXiv:1508.04025.
- Wu, Y. et al. (2016). *Google's Neural Machine Translation System: Bridging the Gap between Human and Machine Translation*. arXiv:1609.08144.
- Vaswani, A. et al. (2017). *Attention Is All You Need*. arXiv:1706.03762.
- Britz, D. et al. (2017). *Massive Exploration of Neural Machine Translation Architectures*. arXiv:1703.03906.
- Lewis, M. et al. (2020). *BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation*. arXiv:1910.13461.
- Raffel, C. et al. (2020). *Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer*. arXiv:1910.10683.
- Dong, L. et al. (2019). *Unified Language Model Pre-training for Natural Language Understanding and Generation*. arXiv:1905.03197.
- Zhang, J. et al. (2020). *PEGASUS: Pre-training with Extracted Gap-Sentences for Abstractive Summarization*. arXiv:1912.08777.
