3.5.4 · HinglishSequence Models

Long Short-Term Memory (LSTM) cells

2,766 words13 min readRead in English

3.5.4 · AI-ML › Sequence Models

The Vanishing Gradient Problem (LSTMs Ki Zaroorat Kyun Hai)

Ek standard RNN mein, hidden state hota hai. Backpropagation through time (BPTT) ke dauran, hum compute karte hain:

Yeh step kyun? Chain rule humein har time step par Jacobians multiply karne par majboor karta hai. Har Jacobian mein aur ka derivative hota hai, jo hai.

Agar ho, toh product exponentially shrink hota hai jaise badhta hai (vanishing gradient). Agar ho, toh yeh explode karta hai. Kisi bhi case mein, long-term dependencies seekhna impossible ho jaata hai.

LSTM ka fix: Cell state time ke through additive updates ke saath flow karta hai, multiplicative nahi. Yeh gradient highways create karta hai jo information preserve karte hain.

LSTM Architecture: The Four Gates Derivation

Ek LSTM mein hota hai:

  • Input (current input vector)
  • Previous hidden state
  • Previous cell state
  • Teen gates: forget, input, output
  • Outputs: naaya cell state aur hidden state

Step 1: Forget Gate (Kya Discard Karna Hai)

Kya hai: Ek vector mein jahaan cell state dimension hai.

Sigmoid kyun? Hum chahte hain values 0 (completely forget) aur 1 (completely remember) ke beech hon. Sigmoid yahi range output karta hai.

Kaise kaam karta hai: ko ke saath element-wise multiply kiya jaata hai. Agar ho, toh cell state ka dimension erase ho jaata hai. Agar ho, toh preserve hota hai.

Notation: ka matlab hai dono vectors ko concatenate karna: agar aur ho, toh . Weight matrix hoti hai.

Step 2: Input Gate (Kaunsi Nayi Info Store Karni Hai)

Kya hai: ek gate vector hai mein; ek candidate cell state hai mein.

Do parts kyun? Hum alag karte hain kya add karna hai () aur kitna add karna hai (). Candidate use karke compute hoti hai (outputs ) kyunki cell states ko positive aur negative dono information represent karne ke liye signed values chahiye.

Yeh step kyun? Gate ke bina, hum hamesha poori candidate add kar dete. Gate network ko seekhne deta hai ki nayi information kab relevant hai (gate open) vs. kab ignore karni hai (gate closed).

Step 3: Cell State Update (Forget + Input Combine Karna)

Notation: element-wise (Hadamard) product hai.

Scratch se derivation:

  1. Purane cell state se shuru karo
  2. Forget gate se multiply karo: (relevant memories rakhta hai)
  3. Kya add karna hai compute karo: (nayi relevant info)
  4. Add karo:

Yeh brilliant kyun hai: Yeh update additive hai, multiplicative nahi! Backpropagation ke dauran:

Gradient ke through flow karta hai bina repeated matrix multiplications ke. Agar ho (forget gate open), gradients unchanged flow karte hain. Yahi woh gradient highway hai jo vanishing gradients solve karta hai.

Step 4: Output Gate (Kya Expose Karna Hai)

Kya hai: control karta hai ki cell state ke kaunse parts hidden state ke roop mein expose hon.

kyun? Cell states time ke saath large ho sakti hain. stability ke liye par squash karta hai.

Sirf kyun nahi? Cell state internal memory hai (large, unbounded ho sakti hai). Hidden state woh external representation hai jo hum next layer ko pass karte hain—hum chahte hain yeh controlled aur squashed ho.

Yeh step kyun? Output gate network ko decide karne deta hai: "Mere paas yeh memory hai, lekin kya main ise abhi expose karna chahta hoon?" Jaise, grammatical gender store karna lekin use tabhi output karna jab pronoun generate karna ho.

Complete LSTM Forward Pass

Inputs diye hue, , initialize karo. se tak:

Parameter count: Agar = input dim, = hidden dim, = cell dim (usually ) ho:

  • Har gate mein weight matrix aur bias hota hai
  • 4 sets of parameters (forget, input, candidate, output)
  • Total: parameters

Vanilla RNN se comparison:

  • RNN: gradient har step par se multiply hota hai → exponential decay
  • LSTM: gradient se multiply hota hai (values near 1) → linear flow, koi exponential decay nahi

Cell state ek gradient superhighway ki tarah kaam karta hai—agar forget gates open rahein (), gradients hundreds of steps peeche minimal degradation ke saath flow karte hain.

LSTMs kyun help karte hain: Word "not" pehle aata hai lekin baad mein "bad" ko affect karta hai. Ek RNN "bad" tak pahunchte pahunchte "not" bhool sakta hai.

LSTM behavior:

  • "not" process karte waqt, input gate khulta hai, cell state mein negation store karta hai
  • Forget gate "was" ke through high rehta hai (negation mat bhoolo)
  • Jab "bad" aata hai, cell state mein abhi bhi "negation" hai, isliye network positive output karta hai

Numerical walkthrough (simplified, 1D):

  1. ("not"): , (negation store karo)
  2. ("bad"): , (negation preserved)
  3. Output gate use karke positive sentiment predict karta hai

Yeh step kyun? Additive update ka matlab hai directly par depend karta hai minimal information loss ke saath, unlike RNN ka jo erase kar sakta hai.

Sequence:

LSTM solution:

  • seekho taaki jab aur
  • hamesha seekho (kabhi mat bhoolo)
  • Cell state:
  • "]" dekhne par, decrement seekho

Yeh kyun kaam karta hai:

Cell state literally count kar raha hai! Additive update yeh enable karta hai. Ek vanilla RNN ke saath exact count maintain nahi kar sakta kyunki values ko par bound kar deta hai.

Kyun sahi lagta hai: "Forget gate" naam ek switch jaisa lagta hai.

Fix: Gates continuous multipliers hain. ka matlab hai ka har dimension 0.6 se scale ho jaata hai—yeh partial forgetting hai, random erasure nahi. Network smooth interpolations seekhta hai, hard decisions nahi. Yahi continuity hai isliye LSTMs ko gradient descent se train kiya ja sakta hai.

Steel-man: Yeh confusion isliye hoti hai kyunki hum interpretability chahte hain, aur binary decisions reason karne mein asaan hain. Lekin soft gates network ko nuanced timing seekhne ki flexibility dete hain.

Kyun sahi lagta hai: Dono time ke through information carry karte hain.

Fix:

  • unfiltered long-term memory hai (large, unrestricted ho sakti hai)
  • filtered output hai (bounded, task-relevant)

Example: "John went to the store. He bought milk" padhte waqt, cell state store kar sakti hai [John, male, past-tense, store-context]. Lekin "He" ke baad next word generate karte waqt, hidden state sirf [male] expose karta hai (output gate ke control mein) kyunki pronoun consistency ke liye wahi chahiye.

Yeh design kyun? Storage () ko exposure () se alag karna network ko rich internal state rakhne deta hai bina har detail ko output mein force kiye.

Kyun sahi lagta hai: Humne kaha tha ki LSTMs vanishing gradients solve karte hain aur long-term dependencies preserve karte hain.

Fix: LSTMs long dependencies seekh sakte hain agar data support kare, lekin yeh perfectly memorize nahi karte. Forget gate learned hota hai—agar training data ko long-term memory ki zaroorat nahi, network bhoolna seekh leta hai. Saath hi, extremely long sequences (100k+ steps) ke saath cell states abhi bhi saturate ya gradient issues suffer kar sakti hain.

Practical limit: LSTMs ~100-200 steps ki dependencies achhi tarah handle karte hain. Isse zyada ke liye, attention mechanisms ya Transformers use karo.

Backpropagation Through Time in LSTMs

Key advantage: gradients cell state path ke through minimal degradation ke saath flow karte hain.

Gradient flow equation:

Yeh kyun matter karta hai: Agar forget gates average hon, 100 steps ke baad:

Abhi bhi small hai, lekin vanilla RNN se bahut better hai jahaan:

Yeh step kyun? Forget gate values learned hain, fixed nahi. Network important memories ke liye ko 1 ke paas rakh sakta hai, jisse practice mein bahut larger ho jaata hai.

Recall LSTM ko Ek 12-Saal Ke Bacche Ko Samjhao

Socho tumhara brain ek story yaad karne ki koshish kar raha hai. Ek normal memory (jaise ek RNN) ki tarah story baar baar bolna hai—har baar, details fuzzy ho jaati hain aur shuruat bhool jaate ho.

Ek LSTM ki tarah ek notebook with smart sticky notes rakhna:

  • Cell state () tumhari notebook hai jahaan tum important facts likhte ho
  • Forget gate ek smart eraser hai—woh sirf woh cheezein erase karta hai jo tumhe ab nahi chahiye
  • Input gate ek filter hai—yeh decide karta hai ki nayi info likhne ke layak hai ya nahi
  • Output gate ek privacy filter hai—tumhare paas memory hai, lekin tum sirf wahi share karte ho jo abhi relevant hai

Toh agar story hai "The wizard, who wore a purple hat, cast a spell", LSTM:

  1. Notebook mein "wizard, purple hat" likhta hai (input gate ise andar aane deta hai)
  2. "Wizard" poore time rakhta hai (forget gate kehta hai "erase mat karo")
  3. Jab story poochhe "Who cast the spell?", output gate notebook se "wizard" dikhata hai

Notebook (cell state) ka time ke through ek seedha raasta hai—info bina corrupt hue peeche flow kar sakti hai. Isliye LSTMs regular RNNs se behtar yaad rakhte hain!

Order: FIO-C-O, jahaan C (cell state) F aur I ko combine karne ka result hai, aur O sabse last aata hai.

Connections

#flashcards/ai-ml

Vanilla RNNs kyun nahi kar paate woh problem jo LSTMs solve karte hain? :: Long sequences mein vanishing gradients—RNNs mein gradients exponentially shrink hote hain lekin LSTM cell states ke through additively flow karte hain, long-term dependencies preserve karte hue.

LSTM mein 3 gates kaun se hain?
Forget gate (kya discard karna hai), Input gate (kya add karna hai), Output gate (kya expose karna hai). Sab sigmoid activation use karte hain aur [0,1] output karte hain.
LSTM cell state update equation likho.
jahaan candidate cell state hai.
LSTM cell state multiplication ki jagah addition kyun use karta hai?
Additive updates ek gradient highway create karte hain— gradients ko minimal decay ke saath flow karta hai, unlike RNN ke multiplicative chains ke.
Cell state aur hidden state mein kya fark hai?
internal long-term memory hai (unbounded, additively flow karta hai). filtered output hai ([-1,1] par bounded, task-relevant).
LSTM gates sigmoid activation kyun use karte hain?
Sigmoid [0,1] output karta hai, gates ke liye perfect—0 = completely block, 1 = completely pass. Yeh gradient descent ke liye soft, differentiable decisions enable karta hai.
Ek standard LSTM mein kitne parameter matrices hote hain?
4 weight matrices () aur 4 bias vectors, har gate aur candidate cell state ke liye ek set.
Agar LSTM ka forget gate hamesha 1 ho toh kya hoga?
Perfect memory—, cell state bina bhule accumulate hoti rehti hai. Gradients sabhi time steps ke through unchanged flow karte hain.
Candidate cell state ke liye kyun aur gates ke liye sigmoid kyun?
signed values [-1,1] output karta hai positive/negative information represent karne ke liye. Sigmoid [0,1] gates ke liye flow intensity control karne ke liye.
LSTM ka gradient flow advantage RNN se kya hai?
RNN: (exponential decay). LSTM: (values near 1, linear flow).

Concept Map

suffers from

multiplies Jacobians

motivates

introduces

uses additive updates

preserves

has

has

has

erases via sigmoid

scales candidate

adds new info to

filtered by

produces

Standard RNN

Vanishing Gradients

Backprop Through Time

LSTM Cell

Cell State C_t

Gradient Highways

Long-Term Dependencies

Forget Gate f_t

Input Gate i_t

Output Gate

Candidate C_t via tanh

Hidden State h_t