Step sirf current gradient par depend karta hai. Agar gradients ek valley ke across sign flip karte rehte hain, toh progress cancel ho jaati hai. Hum chahte hain ki past ko yaad rakha jaaye taaki yeh smooth ho sake.
Step 1 — Ek velocityv define karo past gradients ke exponentially weighted average ke roop mein. β∈[0,1) ko momentum coefficient hone do (kitna past hum rakhte hain):
vt=βvt−1+∇θL(θt)
Yeh step kyun? Unrolling se milta hai vt=∑k=0tβk∇L(θt−k) — ek weighted sum jahan recent gradients sabse zyada count karte hain aur purane geometrically decay karte hain. Woh ek smoothed gradient hai.
Step 2 — Raw gradient ki jagah velocity ke saath step lo:θt+1=θt−ηvt
Socho ek ball ko ek bumpy pahaad se neeche roll karna, instead of ek-ek careful step lene ke. Kyunki ball bhaari hai, woh usi direction mein chalti rehti hai jis taraf ja rahi thi, toh woh lambi slope ke neeche speed up karti hai aur chote bumps se uchhalti nahi. Yeh hai momentum. Nesterov ek thoda smarter ball hai jo thoda aage dekhti hai ki woh kahan roll karne wali hai, aur agar woh dekhti hai ki woh overshoot karne wali hai, toh pehle hi slow ho jaati hai. Toh woh usi ball se tezi se aur smoothly bottom tak pahunchti hai jo sirf apne neeche jo hai uspe react karti hai.
Plain gradient descent kaunsa update rule use karta hai?
θt+1=θt−η∇L(θt) — sirf raw current gradient ke saath step.
Plain GD narrow valleys mein zig-zag kyun karta hai?
Loss ill-conditioned hai; steep direction ke liye chota η chahiye jo flat direction ke liye bahut chota hai, toh steep walls ke paas oscillate karta hai.
Classical (Polyak) momentum equations likho.
vt=βvt−1+∇L(θt), phir θt+1=θt−ηvt.
vt intuitively kya hai?
Past gradients ka exponentially weighted moving average: vt=∑kβk∇L(θt−k).
Consistent direction mein effective learning rate kya hoti hai?
η/(1−β) — jaise 10η jab β=0.9.
Momentum oscillating gradients ko kaise handle karta hai?
Running average mein sign-flipping components zyaadatar cancel ho jaate hain, zig-zag ko damp karte hue.
Ek sentence mein Nesterov classical momentum se kaise differ karta hai?
Yeh gradient ko look-ahead point θt−ηβvt−1 par evaluate karta hai instead of θt par.
Yeh anticipate karta hai ki momentum tumhe kahan le jaayega aur overshoot hone se pehle correct karta hai, smoother/faster convergence deta hai.
β ki typical value kya hai?
Lagbhag 0.9 (kabhi kabhi 0.99 tak).
Agar β bahut zyada ho toh kya galat hota hai?
"Ball" bahut bhaari ho jaati hai → overshoot karta hai aur minimum ke around orbit karta hai, settle hone mein deri lagti hai.
Steel-man: kya momentum sirf ek bada learning rate hai?
Nahi — yeh direction-selective hai: yeh consistent directions enlarge karta hai lekin oscillating ones cancel karta hai; bada η steep direction ko blow up kar deta.
Nesterov se convex convergence rate improvement kya hai?