एक RNN एक अनुक्रम को टोकन दर टोकन प्रोसेस करता है, प्रत्येक चरण पर अपनी छिपी हुई स्थिति को अपडेट करता है: h_t = f(h_{t-1}, x_t)। छिपी हुई स्थिति अब तक देखी गई सभी चीज़ों का एक संपीड़ित प्रतिनिधित्व है। समस्या: जैसे-जैसे अनुक्रम लंबे होते जाते हैं, छिपी हुई स्थिति को एक निश्चित आकार के वेक्टर में अधिक से अधिक जानकारी संपीड़ित करनी होती है, और प्रारंभिक टोकन के लिए ग्रेडिएंट सिग्नल backpropagation के दौरान गायब हो जाते हैं ("vanishing gradient problem")।
Long Short-Term Memory (LSTM, 1997) और Gated Recurrent Units (GRU, 2014) ने गेट्स — सीखे गए तंत्र जो नियंत्रित करते हैं कि कौन सी जानकारी रखनी है, अपडेट करनी है या भूलनी है — पेश करके vanishing gradients को संबोधित किया। LSTMs में एक अलग cell state होती है जो कई चरणों में अपरिवर्तित जानकारी ले जा सकती है, गेट्स पहुँच को नियंत्रित करते हैं। GRUs cell और hidden states को मर्ज करके LSTMs को सरल बनाते हैं और समान प्रदर्शन बनाए रखते हैं।
RNNs टोकन को अनुक्रमिक रूप से प्रोसेस करते हैं — टोकन 5 को तब तक प्रोसेस नहीं किया जा सकता जब तक टोकन 1–4 पूरे नहीं हो जाते। यह उन्हें समानांतर हार्डवेयर (GPUs) पर स्वाभाविक रूप से धीमा बनाता है। Transformers attention का उपयोग करके सभी टोकन को एक साथ प्रोसेस करते हैं, जिससे वे प्रशिक्षित करने में नाटकीय रूप से तेज़ होते हैं। Attention हर टोकन को हर दूसरे टोकन से सीधे जोड़ता है, संपीड़ित छिपी हुई स्थिति पर निर्भर किए बिना लंबी-दूरी की निर्भरता समस्या को हल करता है। ट्रेड-ऑफ: Transformers अनुक्रम लंबाई में द्विघात मेमोरी का उपयोग करते हैं, जबकि RNNs स्थिर मेमोरी का उपयोग करते हैं। यही कारण है कि SSMs (Mamba) दिलचस्प हैं — वे Transformer-जैसे प्रदर्शन के साथ RNN-जैसी दक्षता प्रदान करते हैं।