reinforcement learning के लिए एक शुरुआती परिचय: Python में बहु-सशस्त्र डाकुओं का अनुकरण करना।
एक शुरुआती गाइड बहु-सशस्त्र डाकुओं, अन्वेषण-शोषण व्यापारों और reinforcement learning अवधारणाओं के लिए सरल Python सिमुलेशन की व्याख्या करता है।
मुख्य जानकारी
- बहु-सशस्त्र डाकुओं ने reinforcement learning को अनिश्चितता के तहत बार-बार विकल्पों के माध्यम से पेश किया, बेहतर विकल्प खोजने और पुरस्कार अर्जित करने के लिए शोषण का संतुलन बनाया।
- एक Python सिमुलेशन शुरुआती लोगों को नीतियों का परीक्षण, पुरस्कारों पर नज़र रखने और सीखने के वक्र की कल्पना करके अमूर्त शिक्षण व्यापार-बदलाव को ठोस प्रयोगों में बदलने में मदद करता है।
- एक सरल डाकू सिमुलेशन बनाने के लिए छिपे हुए हाथ पुरस्कार, राउंड, शिक्षार्थी राज्य, यादृच्छिक, लालची या एप्सिलॉन-लालच जैसी नीति और अवलोकन प्रतिक्रिया पर आधारित अपडेट लूप को परिभाषित करने की आवश्यकता होती है।
- अलग-अलग यादृच्छिक बीज के साथ सिमुलेशन को दोहराना महत्वपूर्ण है क्योंकि एक एकल रन भ्रामक हो सकता है, जिससे कमजोर नीति भाग्यशाली लगती है या मजबूत नीति खराब दिखती है।
- मुख्य सीख यह है कि प्रभावी सीखने अनिश्चितता के प्रबंधन पर निर्भर करता हैः बहुत कम अन्वेषण बेहतर विकल्पों को याद कर सकता है, जबकि बहुत अधिक अन्वेषक पुरस्कार बर्बाद कर सकते हैं।
मेटा विवरण: Python में बहु-सशस्त्र डाकू सिमुलेशन के लिए एक शुरुआती गाइड, जिसमें अन्वेषण, शोषण और मूल Towards Data Science पोस्ट शामिल है।
टैगः reinforcement learning , बहु-सशस्त्र डाकू, Python , सिमुलेशन, शुरुआती
विशेष रुप से प्रदर्शित छवि: स्लॉट मशीनों और Python कोड का अमूर्त मैत्रीपूर्ण चित्रण, कोई वास्तविक व्यक्ति नहीं, कोई लोगो नहीं, न ही पाठ।
Reinforcement Learning का परिचयः Python में मल्टी-Armed Bandit Simulation शीर्षक से एक पोस्ट पहली बार Towards Data Science पर दिखाई दिया। स्रोत पंक्ति में "जब मशीनें अपने आप सीखती हैं" भी शामिल है। आपूर्ति किए गए अंश में लेखक, तिथि, कोड रिपॉजिटरी या बेंचमार्क परिणाम नहीं बताया गया है। यह मार्गदर्शिका उन शुरुआती लोगों के लिए है जो समझना चाहते हैं कि बहु-सशस्त्र डाकू सिमुलेशन reinforcement learning के बारे में क्या सिखाता है, machine learning के प्रकार जहां एक एजेंट दोहराए जाने वाले विकल्पों और प्रतिक्रिया के माध्यम से सुधार करता है। अंत तक, आपको मूल समस्या पता चल जाएगी, क्यों Python इसका पता लगाने का एक व्यावहारिक तरीका है, और कदम दर कदम एक छोटा सिमुलेशन कैसे बनाया जाए।
एक बहु-सशस्त्र डाकू समस्या कैसी दिखती है
एक बहु-सशस्त्र डाकू एक सरल reinforcement learning सेटिंग है। कई स्लॉट मशीनों की कल्पना करें, जिनमें से प्रत्येक को हाथ कहा जाता है। प्रत्येक हाथ अपने स्वयं के छिपे हुए संभाव्यता पैटर्न से खींचे गए पुरस्कार देता है। कुछ हाथ अक्सर भुगतान करते हैं, अन्य शायद ही कभी। शिक्षार्थी शुरू में नहीं जानता कि कौन सा हाथ सबसे अच्छा है। हर राउंड में, उसे एक हाथ खींचना होगा, इनाम का निरीक्षण करना होगा और यह तय करना होगा कि आगे क्या निकालना है।
केंद्रीय तनाव अन्वेषण बनाम शोषण है। एक्सप्लोरेशन का मतलब यह जानने के लिए अलग-अलग हथियारों की कोशिश करना है कि कौन से बेहतर हो सकते हैं। शोषण का अर्थ है उस हाथ को चुनना जो वर्तमान में अधिक इनाम कमाने के लिए सबसे अच्छा दिखता है। एक अच्छी सिमुलेशन पाठकों को उन नीतियों की तुलना करने देती है जो इन जरूरतों को संतुलित करती हैं। यह भी दिखाता है कि जब वातावरण शोर होता है तो सीखना धीमा क्यों हो सकता है।
reinforcement learning मूल वर्गीकरण से अलग है क्योंकि शिक्षार्थी को एक बार में पूर्ण लेबल किए गए dataset के बजाय समय के साथ प्रतिक्रिया मिलती है। बहु-सशस्त्र डाकू उस विचार को छोटा और परीक्षण योग्य रखता है। राज्य सरल है, कार्रवाई सेट छोटा है, और इनाम संकेत प्रत्यक्ष है। यह उन पाठकों के लिए एक अच्छा प्रवेश बिंदु बनाता है जो मशीनों को बड़े सिस्टम के बिना खुद से सीखना चाहते हैं।
Python सिमुलेशन मूल्य क्यों जोड़ता है
मूल पोस्ट Python में एक सिमुलेशन की ओर इशारा करता है, और यह पसंद मायने रखती है। Python , पठनीय है, व्यापक रूप से डेटा कार्य के लिए उपयोग किया जाता है और इसमें यादृच्छिक संख्याओं, प्लॉटिंग और सरल विश्लेषण के लिए पुस्तकालय हैं। एक पाठक गेम इंजन या robot की आवश्यकता के बिना विचार को एक छोटे प्रयोग में बदल सकता है।
एक सिमुलेशन अदृश्य व्यापार को भी दृश्यमान बनाता है। एक नीति जो हमेशा वर्तमान सबसे अच्छी बांह का चयन करती है, वह बहुत जल्दी सीखना बंद कर सकती है। हमेशा यादृच्छिक रूप से चुनने वाली नीति सीखने को जारी रख सकती है लेकिन इनाम खो देती है। मध्यवर्ती नीति कम आम हथियारों की कोशिश करने के लिए अनिश्चितता का अनुमान लगा सकती है जब सबूत कमजोर होते हैं। कई राउंड चलाना इन सार विचारों को संख्याओं और चार्ट में बदल देता है।
शुरुआती लोगों के लिए, मान JUST कोड नहीं है। यह मानसिक मॉडल हैः एक एजेंट कार्य करता है, प्रतिक्रिया प्राप्त करता है , मान्यताओं को अद्यतन करता है और फिर से कोशिश करता है। वह मॉडल अनुशंसा प्रणालियों में दिखाई देता है, नैदानिक परीक्षण आवंटन, विज्ञापन प्लेसमेंट, और कई अन्य वास्तविक सेटिंग्स। सिमुलेशन एक खिलौना संस्करण है, लेकिन पैटर्न हस्तांतरणीय है।
एक सरल बहु-सशस्त्र डाकू सिमुलेशन कैसे बनाएं
- हथियारों और छिपे हुए इनाम के नियमों को परिभाषित करें। हाथों की एक छोटी संख्या चुनें, जैसे कि पांच। प्रत्येक हाथ को पुरस्कार संभावना या सरल पुरस्कार वितरण दें। सबसे अच्छा हाथ सिमुलेटेड शिक्षार्थी के लिए अज्ञात होना चाहिए।
- राउंड की संख्या निर्धारित करें. एक छोटा रन शोर व्यवहार दिखा सकता है, जबकि लंबे समय तक चलने से सीखने के घटता को पढ़ना आसान हो जाता है। सटीक संख्या परीक्षण किए जा रहे प्रश्न पर निर्भर करती है।
- एक शिक्षार्थी राज्य बनाएँ. प्रत्येक हाथ के लिए, संग्रहीत करें कि इसे कितनी बार खींचा गया था और प्राप्त औसत इनाम। यह सरल रिकॉर्ड बुनियादी अनुमान के लिए पर्याप्त है।
- एक नीति चुनें. यादृच्छिक चयन के साथ शुरू करें, फिर लालची चयन। यादृछ चयन पूरी तरह से पता लगाता है और अक्सर कम कमाता है। लोभी चयन सबसे प्रसिद्ध हाथ का शोषण करता है और यदि पहला अनुमान गलत है तो फंस सकता है।
- एक अन्वेषण नियम जोड़ें। एक सामान्य शुरुआती दृष्टिकोण एप्सिलन-लोभी हैः अधिकांश समय, सबसे प्रसिद्ध हाथ चुनें; समय का एक छोटा सा अंश, यादृच्छिक हाथ उठाएं। छोटा अंश नियंत्रित करता है कि कितनी खोज बाकी है।
- लूप चलाओ. प्रत्येक दौर में, नीति एक हाथ चुनती है, सिमुलेशन उस हाथ के छिपे हुए नियम से इनाम खींचता है, और शिक्षार्थी अपने रिकॉर्ड को अपडेट करता है।
- कुल इनाम और औसत इनाम को ट्रैक करें. कुल पुरस्कार यह दर्शाता है कि पूरे रन में पॉलिसी कितनी अच्छी तरह से काम कर रही थी। औसत पुरस्कार अलग-अलग लंबाई के साथ दौड़ की तुलना करने में मदद करता है।
- बार-बार चलाए जाने वाली नीतियों की तुलना करें। एक रन भ्रामक हो सकता है क्योंकि यादृच्छिक पुरस्कार भिन्न होते हैं। विभिन्न रैंडम बीजों के साथ प्रयोग को दोहराने से यह स्पष्ट चित्र मिलता है कि कौन सी नीति अधिक स्थिर है।
सीखने के बारे में सिमुलेशन क्या सिखाता है
सिमुलेशन से पता चलता है कि सीखना केवल सटीकता के बारे में नहीं है। यह अनुमान लगाना बंद करने और एक विकल्प का उपयोग करना शुरू करने के लिए है। यदि शिक्षार्थी बहुत अधिक अन्वेषण करता है, तो वह कभी भी सबसे अच्छी बांह का शोषण नहीं कर सकता है। अगर यह बहुत जल्दी शोषण करता हैं, तो इसे कभी बेहतर हाथ की खोज नहीं हो सकती है। पुरस्कार वक्र अक्सर फ्लैट शुरू होता है जबकि शिक्षार्थी जानकारी इकट्ठा करती है, फिर बढ़ जाती है क्योंकि यह मजबूत हथियारों पर ध्यान केंद्रित करती है।
पाठक यह भी देख सकते हैं कि अनिश्चितता निर्णयों को कैसे बदलती है। एक नीति जो केवल औसत इनाम का उपयोग करती है, इस तथ्य की उपेक्षा कर सकती है कि कुछ खींचने वाले हाथ में कमजोर अनुमान होता है। अनिश्चितताओं पर विचार करने वाली नीति उस हाथ को फिर से आज़मा सकती है, इसलिए नहीं कि वह सबसे अच्छा दिखता है, बल्कि क्योंकि यह सबसे अच्छा हो सकता है और अधिक डेटा की आवश्यकता होती है। यह विचार कई डाकू algorithms के दिल में है।
आम गलतियाँ
एक आम गलती यह है कि एक सिमुलेशन रन को नीति के काम करने का प्रमाण माना जाता है। यादृच्छिकता कमजोर नीति को भाग्यशाली बना सकती है या अच्छी नीति खराब दिखती है। बार-बार चलाएं और औसत की तुलना करें।
एक और गलती दोनों का परीक्षण किए बिना बहुत अधिक या बहुत कम अन्वेषण दर निर्धारित करना है। उच्च दर शिक्षार्थी को जिज्ञासु लेकिन महंगा रखती है। निम्न दर तत्काल इनाम बचाता है, लेकिन जल्दी सीखना फ्रीज कर सकता है।
एक तीसरी गलती डाकू को पूर्ण reinforcement learning समस्या के रूप में व्यवहार करना है। इसमें क्रियाएं और पुरस्कार हैं, लेकिन इसमें कई राज्य, योजना या दीर्घकालिक क्रेडिट असाइनमेंट शामिल नहीं हैं। यह सादगी उपयोगी है, लेकिन इसे अतिरंजित नहीं किया जाना चाहिए।
अंत में, शुरुआती केवल कोड पर ध्यान केंद्रित कर सकते हैं और व्याख्या को छोड़ सकते हैं। उपयोगी प्रश्न यह नहीं है कि सिमुलेशन चलता है या नहीं, लेकिन नीति अपने व्यवहार को कैसे बदलती है क्योंकि इसे प्रतिक्रिया प्राप्त होती है। सिमुलेशन तब मूल्यवान हो जाता है जब यह परीक्षण और त्रुटि द्वारा सीखने के विचार को कुछ अवलोकन योग्य और परीक्षण योग्य में बदल देता है।

Comments (0)