हम क्या ढूँढ रहे हैं?
कई सवालों में किसी चीज़ का सबसे छोटा मान चाहिए होता है: सबसे कम खर्च, सबसे कम गलती। यही सबसे छोटा मान फलन का न्यूनतम मान (minimum) है।
फलन को पहाड़ी समझो। किसी जगह की ऊँचाई फलन का मान है (यहाँ गलती, जिसे loss भी कहते हैं)। हमें सबसे नीची जगह चाहिए।
ढलान नीचे का रास्ता बताती है
ढलान (slope या gradient) बताती है कि ज़मीन कितनी तीखी है और ऊपर किधर है। गणित में यह अवकलज है। f(x) = x² के लिए x पर ढलान 2x होती है।
ढलान धनात्मक हो तो बाएँ जाने से गलती घटती है। ऋणात्मक हो तो दाएँ जाने से घटती है। इसलिए हम हमेशा ढलान के उलटी दिशा में चलते हैं। इसी से नाम है डिसेंट (उतराई)। दो दिशाओं वाली पहाड़ी में ग्रेडिएंट दो ढलानों की जोड़ी होती है, हर दिशा की एक।
अपडेट नियम और सीखने की दर
हर कदम एक ही नियम से चलता है:
नया x = पुराना x − सीखने की दर × ढलान
सीखने की दर (learning rate), जिसे η या α लिखते हैं, एक छोटी संख्या है जो तुम चुनते हो। वह कदम का आकार तय करती है। तीखी ढलान पर कदम बड़ा होता है; नीचे के पास ढलान छोटी होती है, इसलिए कदम अपने आप छोटे हो जाते हैं।
- बहुत बड़ी: गेंद न्यूनतम बिंदु के ऊपर से कूद जाती है और दूर भी जा सकती है।
- बहुत छोटी: सुरक्षित है पर बहुत कदम लगते हैं।
- सही: गेंद आराम से नीचे तक पहुँचती है।
कब रुकें?
जब ढलान लगभग शून्य हो (गेंद लगभग समतल जगह पर हो), जब गलती घटना बंद कर दे, या तय संख्या में कदम पूरे हो जाएँ। ऊबड़-खाबड़ पहाड़ी में कई घाटियाँ हो सकती हैं। गेंद किसी छोटी घाटी में रुक सकती है जो सबसे नीची नहीं है। अलग-अलग जगह से शुरू करने से मदद मिलती है।
यही इष्टतमीकरण (optimisation) का विचार है: सबसे अच्छा मान ढूँढना। optimisation का पाठ भी देखो।
खुद करके देखो
3D में: सीखने की दर 0.1 रखो, चलाओ दबाओ और गिनो कितने कदम लगे। फिर 0.5 रखो। फिर लगभग 1.2 रखकर गेंद को झूलते देखो।
घर पर: हल्की ढलान वाली जगह (जैसे रैंप) पर आँखें बंद करके छोटे कदम उस दिशा में रखो जिधर पैर कहें कि नीचे है। फिर बड़ी छलांग लगाकर देखो कैसे आगे निकल जाते हो।
मुख्य सूत्र और परिभाषाएँ
- नया x = पुराना x − सीखने की दर × ढलान
- x₍ₙ₊₁₎ = xₙ − η · f'(xₙ)
- f(x) = x² के लिए: ढलान = 2x
- तब रुको जब |ढलान| लगभग 0 हो या गलती घटना बंद हो जाए
हल किए गए उदाहरण
1. f(x) = x² है। x = 4 पर ढलान निकालो।
ढलान = 2x = 2 × 4 = 8। यह धनात्मक है, इसलिए बाएँ जाने से गलती घटती है।
2. f(x) = x² पर x = 4 से सीखने की दर 0.1 के साथ शुरू करो। एक कदम बाद नया x निकालो।
ढलान = 8। नया x = 4 − 0.1 × 8 = 4 − 0.8 = 3.2।
3. f(x) = x² पर x = 2 से सीखने की दर 0.25 के साथ शुरू करो। दो कदम बाद x निकालो।
कदम 1: ढलान = 4, x = 2 − 0.25 × 4 = 1। कदम 2: ढलान = 2, x = 1 − 0.25 × 2 = 0.5। गेंद 0 पर स्थित न्यूनतम के पास पहुँच रही है।
4. f(x) = x² पर x = 3 से सीखने की दर 0.5 के साथ शुरू करो। क्या होगा?
ढलान = 6। नया x = 3 − 0.5 × 6 = 0। एक ही कदम में ठीक न्यूनतम बिंदु मिल गया। इस फलन के लिए यह बहुत अच्छी दर है।
5. f(x) = x² पर x = 3 से सीखने की दर 1 के साथ शुरू करो। क्या होगा?
कदम 1: ढलान = 6, x = 3 − 6 = −3। कदम 2: ढलान = −6, x = −3 + 6 = 3। गेंद हमेशा 3 और −3 के बीच कूदती रहेगी। दर बहुत बड़ी है।
6. f(x) = (x − 5)² है। x = 1 से सीखने की दर 0.25 के साथ शुरू करो। एक कदम बाद x निकालो।
ढलान = 2(x − 5) = 2(1 − 5) = −8। नया x = 1 − 0.25 × (−8) = 1 + 2 = 3। ढलान ऋणात्मक है, इसलिए x दाएँ, यानी 5 की ओर बढ़ा।
आम गलतियाँ
- ढलान के उलटी की जगह उसी दिशा में चलना। डिसेंट का मतलब नीचे जाना है, इसलिए ढलान घटाते हैं।
- सोचना कि बड़ी सीखने की दर हमेशा बेहतर है। बहुत बड़ी दर आगे निकल सकती है या बिगड़ भी सकती है।
- सीखने की दर बहुत छोटी रखकर सोचना कि कुछ हिल क्यों नहीं रहा।
- मान लेना कि ग्रेडिएंट डिसेंट पूरी पहाड़ी का सबसे नीचा बिंदु ही ढूँढता है। वह किसी छोटी घाटी में रुक सकता है।