क्यों अनुभव रिप्ले को ऑफ-पॉलिसी एल्गोरिथ्म की आवश्यकता होती है?


12

कागज में DQN " डीप रेनफोर्समेंट लर्निंग के साथ अटारी खेलना " का उल्लेख किया गया है:

ध्यान दें कि जब अनुभव रिप्ले से सीखते हैं, तो ऑफ-पॉलिसी सीखना आवश्यक है (क्योंकि हमारे वर्तमान पैरामीटर नमूना उत्पन्न करने के लिए उपयोग किए जाने वाले अलग हैं), जो क्यू-लर्निंग की पसंद को प्रेरित करता है।

मुझे इसका मतलब समझ में नहीं आया। क्या होगा यदि हम SARSA का उपयोग करते हैं और उस क्रिया के a'लिए कार्रवाई को याद करते हैं जिसे हम s'अपनी मेमोरी में लेने वाले हैं , और फिर उससे बैचों को सैंपल करते हैं और Q को अपडेट करते हैं जैसे हमने DQN में किया था? और, क्या अभिनेता-आलोचक तरीके (A3C, विशिष्ट के लिए) अनुभव रिप्ले का उपयोग कर सकते हैं? यदि नहीं, तो क्यों?

जवाबों:


2

एसएआरएसए की तरह ऑन-पॉलिसी पद्धतियों की अपेक्षा है कि हर राज्य में कार्यों को एजेंट की वर्तमान नीति के आधार पर चुना जाता है, जो आमतौर पर पुरस्कारों का फायदा उठाने के लिए जाता है।

ऐसा करने पर, पॉलिसी बेहतर हो जाती है जब हम अपनी पॉलिसी को अंतिम रिवार्ड्स के आधार पर अपडेट करते हैं। यहां विशेष रूप से, वे एनएन के मापदंडों को अपडेट करते हैं जो एक निश्चित राज्य / कार्रवाई के मूल्य की भविष्यवाणी करता है)।

लेकिन, अगर हम अपनी नीतियों को संग्रहीत बदलावों के आधार पर अपडेट करते हैं, जैसे अनुभव पुनरावृत्ति में, हम वास्तव में एक ऐसी नीति से कार्यों का मूल्यांकन कर रहे हैं जो अब वर्तमान नहीं है, क्योंकि यह समय में विकसित हुआ, इस प्रकार यह अब नीति पर नहीं रह गया है।

क्यू मूल्यों का मूल्यांकन भविष्य के पुरस्कारों के आधार पर किया जाता है जो आपको वर्तमान एजेंट नीति के बाद एक राज्य से मिलेगा।

हालाँकि, यह अब सच नहीं है क्योंकि आप अब एक अलग नीति का पालन कर रहे हैं। इसलिए वे एक सामान्य ऑफ-पॉलिसी विधि का उपयोग करते हैं जो एप्सिलॉन-लालची दृष्टिकोण के आधार पर खोज करता है।


धन्यवाद, लेकिन मुझे अभी भी यह समझ में नहीं आता है: अगर मैं टीडी (0) अपडेट नियम का उपयोग करता हूं, तो एक संक्रमण याद आया (s, a, r, s'), और इस अनुभव को फिर से खेलना है; अब मान लीजिए कि मेरे वर्तमान नीति के अनुसार आपके लिए ले जाना चाहिए a'पर s', तो मैं निशान Q(s, a)होना चाहिए r + Q(s', a')और ढाल वंश है। मुझे लगता है कि मैं ऑन-पॉलिसी को दोबारा करने का अनुभव कर रहा हूं। क्या प्रक्रिया में कोई समस्या है?
डार्कजेरो

मेरा मानना ​​है कि समस्या यह है कि, चूंकि आप अब पहले की तुलना में एक अलग नीति का उपयोग कर रहे हैं, और यह कार्रवाई पुरानी नीति का उपयोग करके चुनी गई है, इसलिए आप वास्तव में यह नहीं कह सकते हैं कि यह नीति पर है: किसी नीति के क्यू मान का मूल्यांकन करने के लिए आपको उसी के साथ कई कार्य करने चाहिए। यहां आप किसी ऐसी नीति का उपयोग करके वर्तमान नीति का मूल्यांकन करने का प्रयास करते हैं जिसे वह नीति नहीं चुन सकती थी।
दांते

तो क्या मैं कह सकता हूं कि मैं इसे ऑफ-पॉलिसी कर रहा हूं? सिद्धांत रूप में ऐसा करने का परिणाम क्या होगा?
डार्कजेरो

1
इसलिए अगर मैं आपको सही समझूं, तो किसी को क्यू-लर्निंग जैसी ऑफ-पॉलिसी विधियों का उपयोग करना चाहिए, हमेशा भविष्य की अपेक्षित इनाम के लिए अधिकतम क्यू चुनें। इससे कोई फर्क नहीं पड़ता कि वर्तमान कार्रवाई क्या है, क्योंकि यह क्यू सीखने की एक संपत्ति है कि अगर आप हमेशा भविष्य के लिए अधिकतम क्यू चुनते हैं तो क्यू इष्टतम नीति के तहत क्यू में परिवर्तित करेगा; या उसे एक नीति का खुलकर पालन करना चाहिए, इस नीति के माध्यम से भविष्य सहित हर कार्रवाई का चयन करना चाहिए, और ऑन-पॉलिसी अपडेट करना चाहिए। क्या वह सही है?
डार्कजेरो

1
अब तक, मुझे समझ नहीं आया कि ऑन-पॉलिसी विधियां क्यों अच्छी हैं। ऑफ-पॉलिसी विधियों में अधिक स्वतंत्रता है और यह अपने आप से इष्टतम नीति की खोज कर सकता है। क्या आप भी आंसर की का जवाब दे रहे हैं ।stackexchange.com/questions/265354/… ? सभी चर्चाओं के लिए आपका बहुत-बहुत धन्यवाद।
डार्कजेरो

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.