Encoder–decoder architecture — एनकोडर–डिकोडर आर्किटेक्चर
एन्कोडर-डिकोडर मॉडल (अंग्रेज़ी: Encoder-Decoder Models) — यह neural network आर्किटेक्चर का एक वर्ग है, जो अनुक्रम-से-अनुक्रम रूपांतरण (sequence-to-sequence, seq2seq) की समस्याओं को हल करने के लिए बनाया गया है। इस आर्किटेक्चर में दो मुख्य घटक होते हैं:
- एन्कोडर (कूटलेखक): यह इनपुट अनुक्रम को संसाधित करता है और उसे एक सघन संख्यात्मक निरूपण (संदर्भ वेक्टर या छिपी हुई अवस्थाओं के अनुक्रम) में संकुचित करता है।
- डिकोडर (विकूटलेखक): यह उस निरूपण को लेता है और उसके आधार पर आउटपुट अनुक्रम उत्पन्न करता है।
यह आर्किटेक्चर प्राकृतिक भाषा प्रसंस्करण (NLP) और कंप्यूटर दृष्टि की अनेक समस्याओं जैसे मशीनी अनुवाद, पाठ सारांशीकरण और चित्र विवरण (image captioning) का आधार है।
अवधारणा
एन्कोडर-डिकोडर आर्किटेक्चर का मूल विचार समझ और उत्पादन के कार्यों को अलग करना है। एन्कोडर इनपुट अनुक्रम को समझने का कार्य करता है और उससे सभी आवश्यक अर्थगत जानकारी निकालता है। डिकोडर एन्कोडर द्वारा प्रदान की गई जानकारी का उपयोग करके नया अनुक्रम उत्पन्न करने का कार्य करता है।
इससे मॉडल को इनपुट और आउटपुट में भिन्न लंबाई के अनुक्रमों के साथ कार्य करने की क्षमता मिलती है, जो पुरानी आर्किटेक्चर के लिए कठिन था।
आर्किटेक्चर का विकास
RNN/LSTM आधारित प्रारंभिक मॉडल
प्रारंभ में एन्कोडर-डिकोडर आर्किटेक्चर को पुनरावर्ती neural network (RNN) या उनके उन्नत संस्करण LSTM का उपयोग करके लागू किया गया था।
- एन्कोडर: RNN एन्कोडर इनपुट अनुक्रम को एक-एक token संसाधित करता था और आउटपुट में एक संदर्भ वेक्टर देता था — अंतिम token के संसाधन के बाद की छिपी अवस्था, जिसमें पूरे अनुक्रम की जानकारी होनी चाहिए थी।
- डिकोडर: RNN डिकोडर इस संदर्भ वेक्टर से आरंभ होता था और स्वतः-प्रतिगामी (autoregressive) रूप से आउटपुट अनुक्रम उत्पन्न करता था।
इस दृष्टिकोण की मुख्य कमी «बोतल की गर्दन» (bottleneck) की समस्या थी: इनपुट अनुक्रम की सभी जानकारी को एक निश्चित लंबाई के वेक्टर में संकुचित करना पड़ता था, जिससे जानकारी का नुकसान होता था, विशेष रूप से लंबे अनुक्रमों में।
attention mechanism का समावेश
attention mechanism (Bahdanau et al., 2014) के समावेश से एक बड़ी सफलता मिली।
- कार्य सिद्धांत: एक ही संदर्भ वेक्टर पर निर्भर रहने के बजाय, डिकोडर उत्पादन के प्रत्येक चरण में एन्कोडर की सभी छिपी अवस्थाओं पर «ध्यान देता» है। यह attention भार की गणना करता है, जो यह दर्शाता है कि वर्तमान आउटपुट token उत्पन्न करने के लिए इनपुट अनुक्रम के कौन से भाग सर्वाधिक प्रासंगिक हैं।
- लाभ: इससे «बोतल की गर्दन» की समस्या हल हुई और मॉडल लंबे अनुक्रमों के साथ प्रभावी ढंग से कार्य कर सका, जिससे विशेष रूप से मशीनी अनुवाद में गुणवत्ता में उल्लेखनीय सुधार हुआ।
Transformer आर्किटेक्चर
2017 में «Attention Is All You Need» शोध पत्र में Transformer आर्किटेक्चर प्रस्तुत किया गया, जिसने पुनरावर्तता को पूरी तरह छोड़कर attention mechanism को अपनाया।
- Transformer एन्कोडर: यह परतों के एक समूह (stack) से बना है, जिनमें से प्रत्येक परत प्रत्येक इनपुट token के लिए संदर्भीकृत निरूपण बनाने के लिए self-attention का उपयोग करती है।
- Transformer डिकोडर: यह भी परतों के एक समूह से बना है, जिनमें से प्रत्येक में दो प्रकार के attention mechanism होते हैं:
- मास्क्ड self-attention: आउटपुट अनुक्रम के पहले से उत्पन्न भाग को संसाधित करने के लिए।
- Cross-Attention (क्रॉस-अटेंशन): एन्कोडर के आउटपुट निरूपणों पर «ध्यान देने» के लिए।
यह आर्किटेक्चर अपनी उच्च कार्यक्षमता और गणना के समानांतरीकरण की संभावना के कारण seq2seq कार्यों के लिए मानक बन गया।
अनुप्रयोग
एन्कोडर-डिकोडर आर्किटेक्चर कार्यों की एक विस्तृत श्रृंखला के लिए मानक है:
- मशीनी अनुवाद: एक भाषा से दूसरी भाषा में वाक्य का रूपांतरण।
- स्वचालित पाठ सारांशीकरण: किसी लंबे दस्तावेज़ का संक्षिप्त सारांश तैयार करना।
- संवाद प्रणालियाँ: उपयोगकर्ता के कथन पर प्रतिक्रिया उत्पन्न करना।
- चित्र विवरण (Image Captioning): एन्कोडर (अक्सर convolutional neural network पर आधारित) चित्र को संसाधित करता है, और डिकोडर (अक्सर RNN या Transformer) उसका पाठ विवरण उत्पन्न करता है।
- वाक् पहचान: ऑडियो संकेत को पाठ प्रतिलिपि में रूपांतरित करना।
प्रमुख मॉडल
- मूल Transformer (Vaswani et al., 2017): वह मॉडल जिसने इस आर्किटेक्चर को प्रस्तुत किया।
- BART (Bidirectional and Auto-Regressive Transformers): Facebook का मॉडल, जो «दूषित» पाठ को पुनर्स्थापित करने की समस्या पर पूर्व-प्रशिक्षित है। एन्कोडर द्विदिशात्मक है (जैसे BERT में), और डिकोडर स्वतः-प्रतिगामी है (जैसे GPT में)।
- T5 (Text-to-Text Transfer Transformer): Google का मॉडल, जो सभी NLP कार्यों को पाठ-से-पाठ रूपांतरण की समस्या के रूप में एकीकृत करता है। T5 ने अनेक benchmark पर उत्कृष्ट परिणाम दिखाए हैं।
अन्य आर्किटेक्चर से तुलना
| आर्किटेक्चर | मुख्य कार्य | घटक | विशिष्ट मॉडल |
|---|---|---|---|
| एन्कोडर-डिकोडर | अनुक्रम-से-अनुक्रम रूपांतरण | एन्कोडर + डिकोडर | T5, BART, मूल Transformer |
| केवल-एन्कोडर | पाठ बोध | केवल एन्कोडर | BERT, RoBERTa |
| केवल-डिकोडर | पाठ उत्पादन | केवल डिकोडर |
साहित्य
- 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.