SGD के पीछे केंद्रीय विचार
प्र। कोर्टेरा पर अपने लोकप्रिय पाठ्यक्रम में हिंटन निम्न तथ्य को संदर्भित करता है :
Rprop वास्तव में तब काम नहीं करता है जब हमारे पास बहुत बड़े डेटासेट हों और मिनी-बैच वेट अपडेट करने की आवश्यकता हो। यह मिनी-बैचों के साथ काम क्यों नहीं करता है? खैर, लोगों ने इसे आजमाया है, लेकिन इसे काम करने में मुश्किल हुई। इसका काम नहीं करने का कारण यह है कि यह स्टोकेस्टिक ग्रेडिएंट डिसेंट के पीछे केंद्रीय विचार का उल्लंघन करता है , जो तब होता है जब हमारे पास सीखने की छोटी दर होती है, यह क्रमिक मिनी-बैचों पर ग्रेडिएंट का औसत होता है। वजन पर विचार करें, जिसमें नौ मिनी-बैचों पर ग्रेडिएंट 0.1 और दसवें मिनी-बैच पर -0.9 का ग्रेडिएंट मिलता है। हम उन ग्रैडिएंट्स को क्या पसंद करते हैं, वे एक-दूसरे को लगभग रद्द कर देते हैं, ताकि लगभग वही रहे। लेकिन यह नहीं है कि rprop के साथ क्या होता है। रिप्रोप के साथ, हम 9 बार वजन बढ़ाते हैं और केवल एक बार घटते हैं, इसलिए वजन बहुत बड़ा हो जाता है।
जैसा कि आप देख सकते हैं, SGD के पीछे केंद्रीय विचार यह है कि मिनी-बैचों में क्रमिक ग्रेडिएंट का औसत होना चाहिए। क्या किसी के पास इसके लिए कोई वैध औपचारिक स्रोत है? क्या कोई औचित्य है? मैंने अब तक किसी भी सबूत का सामना नहीं किया है।
जवाब
डेटा जनरेट वितरण का प्रभाव
इसे देखने के लिए, पहले हमें यह उल्लेख करना होगा कि न तो बैच ग्रेडिएंट डिसेंट का उपयोग करके (ग्रेडिएंट की गणना करने के लिए संपूर्ण डेटासेट का उपयोग करके) और न ही मिनी-बैच ग्रेडिएंट वंश का उपयोग करके, हम ग्रेडिएंट के सही (सटीक) मान की गणना कर रहे हैं ।
ग्रेडिएंट के सही मूल्य की गणना करने के लिए हमें सभी संभावित मूल्यों के सेट का उपयोग करना होगा, $x$, और इस प्रकार आउटपुट $y$) का है।
औपचारिक रूप से, और उस मात्रा को संदर्भित करना जिसे हम प्रति-उदाहरण हानि फ़ंक्शन के अपेक्षित मान के रूप में कम करना चाहते हैं ($J(x,y,\theta)$, कहां है $\theta$ पैरामीटर हैं) सभी संभव wrt $x,y$ मूल्यों, सच ढाल $g$ द्वारा दिया गया है: $$g = \frac{\partial}{\partial \theta}\mathbb{E}_{x,y\sim p_{data}}(J(x,y,\theta)) $$और अगर हम कुछ शर्तों को मान लेते हैं तो हमारे पास है:$$g = \mathbb{E}_{x,y\sim p_{data}}\left(\frac{\partial}{\partial \theta}J(x,y,\theta)\right) $$
कहा पे $p_{data}$है डेटा पैदा वितरण (वितरण जहाँ से के मूल्यों$x$ तथा $y$थके हुए हैं)। हालाँकि, यह डेटा जनरेटिंग वितरण आमतौर पर अनकाउन्टेड होता है। हम सिर्फ उस डेटासेट को जानते हैं जो हमें दिया गया है।
इस वजह से, दिए गए सभी सूचनाओं (प्रशिक्षण सेट) का उपयोग करते हुए मापदंडों को अपडेट करने के लिए, हम इसके बजाय प्रशिक्षण डेटा द्वारा परिभाषित अनुभवजन्य ditribution का उपयोग करते हैं ($\hat{p}_{data}$) जो की संभावना रखता है $1/m$ प्रत्येक पर $m$ नमूने $(x^{(1)}, y^{(1)}), \,(x^{(2)}, y^{(2)}),\,...\,,(x^{(m)}, y^{(m)})$डेटासेट का। इसलिए ढाल इसके द्वारा अनुमानित है:$$ \begin{aligned} \hat{g}&=\frac{\partial}{\partial \theta}\mathbb{E}_{x,y\sim \hat{p}_{data}}(J(x,y,\theta))\\&=\frac{\partial}{\partial \theta}\left(\sum_{i=1}^m \frac{1}{m}J_i(x^{(i)},y^{(i)},\theta)\right)\\ &= \frac{1}{m}\sum_{i=1}^m\frac{\partial }{\partial \theta}J_i(x^{(i)},y^{(i)},\theta) \end{aligned} $$ बैच ग्रेडिएंट वंश के साथ समाप्त।
लेकिन मिनी-बैचों के साथ क्या होता है?
मिनी-बाथ अपडेट का उपयोग करके, हम लगातार नए डेटा देख रहे हैं (यह मानते हुए कि हम सिर्फ एक युग की गणना करते हैं)। तो इस मामले में, मिनी-बैचों का उपयोग करके , हम डेटा जनरेटिंग वितरण का उपयोग कर रहे हैं।
इसका मतलब है कि प्रत्येक मिनी बैच अद्यतन पर, इस डेटा पैदा वितरण नमूने के द्वारा, हम एक साथ समाप्त आकलन ($\hat{g}$सच ढाल का)$g$) जो निष्पक्ष है $\mathbb{E}_{x,y\sim p_{data}}(\hat{g})=g$। यह देखने के लिए, और विचार करना$\text{s-sized}$ मिनी-बैच: $$\begin{aligned} \mathbb{E}_{x,y\sim p_{data}}(\hat{g})&=\mathbb{E}_{x,y\sim p_{data}}\left(\frac{g^{(1)}+...+g^{(s)}}{s}\right)\\ &=\frac{1}{s}(\mathbb{E}_{x,y\sim p_{data}}(g^{(1)}+...+g^{(s)}))\\ &=\frac{1}{s}s\,\,g=g \end{aligned} $$इस प्रकार, सक्सेस मिनी-बैच अपडेट करना हम औसत में (जैसा कि दिखाया गया है) में रुझान होगा$\mathbb{E}_{x,y\sim p_{data}}(\hat{g})$) ग्रेडिएंट के सही मूल्य के साथ हमारे मापदंडों को अपडेट करने के लिए। और यह वही है जो मुझे लगता है कि लेखक प्रश्न के उद्धरण में संदर्भित करते हैं।
महान संदर्भ:
डीप लर्निंग बुक, इयान गुडफेलो एट। अल अध्याय 8.1 यहाँ
से उत्तर
एक पूर्ण ढाल वंश चरण में, नुकसान फ़ंक्शन को व्यक्तिगत नमूना बिंदुओं पर नुकसान की अवधि के औसत के रूप में परिभाषित किया गया है। नुकसान फ़ंक्शन को कम करने के लिए, हमें अलग-अलग ग्रेडिएंट पर औसत करने की आवश्यकता है।
स्टोचस्टिक ग्रेडिएंट वंश में, यदि बैचों का चयन करने में कोई पूर्वाग्रह नहीं है, तो बैचों पर औसत पूर्ण ग्रेडिएंट के निष्पक्ष अनुमान के परिणामस्वरूप होगा।
कृपया इस व्याख्यान नोट्स पर एक नज़र डालें http://www.stat.cmu.edu/~ryantibs/convexopt-F18/scribes/Lecture_24.pdf