अल्फा डॉग का उपकरणः मोंटे कार्लो एल्गोरिथ्म, इसे पढ़कर समझ में आता है!

लेखक:छोटे सपने, बनाया गयाः 2016-11-02 13:03:03, अद्यतन किया गयाः 2016-11-02 13:11:30

अल्फा डॉग्स के टूलः मोंटे कार्लो एल्गोरिदम, इसे देखें और समझें!

इस साल 9-15 मार्च को, गोए खेल जगत में एक बड़ी घटना घटी, जिसमें पांच दौर का एक मानव-मशीन युद्ध दक्षिण कोरिया के सियोल में हुआ। इस प्रतियोगिता का नतीजा यह निकला कि विश्व गोवा चैंपियन ली शशि ने अंततः गूगल के आर्टिफिशियल इंटेलिजेंस प्रोग्राम अल्फागो को 1-4 से हराया। तो AlphaGo क्या है और जीतने की कुंजी कहां है? यहाँ हम एक एल्गोरिथ्म के बारे में बात करेंगेः मोंटे कार्लो एल्गोरिथ्म.

  • अल्फागो और मोंटे कार्लो एल्गोरिदम

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

पिछले लेख में, हमने गूगल द्वारा विकसित किए जा रहे तंत्रिका नेटवर्क एल्गोरिदम के बारे में बताया था, जो मशीनों को स्वायत्त सीखने के लिए अनुमति देता है, अल्फागो भी इसी तरह का उत्पाद है।

चीनी स्वचालन संघ के उपाध्यक्ष, महासचिव वांग फ्यूयू ने कहा कि प्रोग्रामरों को गो के बुनियादी नियमों को जानने की आवश्यकता नहीं है। अल्फागो के पीछे एक उत्कृष्ट कंप्यूटर वैज्ञानिक समूह है, जो मशीन सीखने के क्षेत्र में विशेषज्ञ हैं। वैज्ञानिक तंत्रिका नेटवर्क एल्गोरिदम का उपयोग करते हैं, जो एक विशेषज्ञ के खेल रिकॉर्ड को कंप्यूटर में इनपुट करते हैं, और कंप्यूटर को खुद के साथ प्रतिस्पर्धा करने के लिए देते हैं, इस प्रक्रिया में लगातार सीखते हैं। यह कहा जा सकता है कि अल्फागो का खेल कौशल डेवलपर द्वारा सिखाया नहीं गया है, बल्कि प्रतिभाशाली लोगों द्वारा सीखा गया है।

तो फिर AlphaGo को स्वयं को प्रतिभाशाली बनाने की कुंजी कहां है? यह मोंटे कार्लो एल्गोरिदम है।

मोंटे कार्लो एल्गोरिथ्म क्या है?यह एक बहुत ही आम तरीका है कि हम मोंटे कार्लो एल्गोरिथ्म की व्याख्या करते हैंः यदि बास्केट में 1000 सेब हैं, तो आप अपनी आँखें बंद करके हर बार सबसे बड़े सेब को चुनते हैं, और आप कितनी बार चुन सकते हैं, इसकी कोई सीमा नहीं है। तो आप अपनी आँखें बंद करके एक को यादृच्छिक रूप से चुन सकते हैं, और फिर एक को यादृच्छिक रूप से पहले के साथ तुलना कर सकते हैं, एक बड़ा छोड़ सकते हैं, और फिर एक को यादृच्छिक रूप से चुन सकते हैं, और एक बड़ा छोड़ सकते हैं। यह चक्र दोहराया जाता है, जितनी बार आप इसे लेते हैं, सबसे बड़ा सेब चुनने की संभावना अधिक होती है, लेकिन जब तक आप 1000 सेबों में से एक को नहीं चुनते, तब तक आप निश्चित नहीं हो सकते कि अंत में सबसे बड़ा कौन सा है।

इसका मतलब यह है कि मोंटे कार्लो एल्गोरिथ्म का मतलब है कि जितना अधिक नमूना होगा, उतना ही बेहतर समाधान मिलेगा, लेकिन यह गारंटी नहीं है कि यह सबसे अच्छा होगा, क्योंकि अगर 10,000 सेब हैं, तो यह निश्चित रूप से बड़ा होगा।

एक और उदाहरण है, एक व्यक्ति ने एक बार फिर से अपने जीवन को बदल दिया है। आम तौर पर कहा जाता है कि यदि एक ताला है, तो 1000 कुंजी हैं, लेकिन केवल एक ही सही है। इसलिए हर बार जब आप एक कुंजी को अनजाने में खोलने का प्रयास करते हैं, तो आप एक और बदल देते हैं। जितनी बार आप कोशिश करते हैं, खोलने का सबसे अच्छा मौका उतना ही अधिक होता है, लेकिन खोलने से पहले, गलत कुंजी बेकार हो जाती है।

इसलिए लास वेगास एल्गोरिथ्म सबसे अच्छा समाधान है, लेकिन यह नहीं मिल सकता है। मान लीजिए कि 1000 कुंजियों में से कोई भी कुंजी खोलने के लिए उपलब्ध नहीं है, वास्तविक कुंजी 1001 है, लेकिन नमूना में कोई 1001 एल्गोरिथ्म नहीं है, लास वेगास एल्गोरिथ्म कुंजी खोलने के लिए उपलब्ध नहीं है।

अल्फागो का मोंटे कार्लो एल्गोरिथ्मगो-गेम की कठिनाई एआई के लिए विशेष रूप से बड़ी है, क्योंकि गो-गेम में बहुत सारे तरीके हैं, और कंप्यूटर को उन्हें समझना मुश्किल है। वांग फ्यू ने कहाः हाँ, सबसे पहले, गोले की संभावनाएं बहुत अधिक हैं; गोले के प्रत्येक चरण के लिए बहुत सारे संभावित नियम हैं, जब खिलाड़ी शुरू होता है तो 19 × 19 = 361 प्रकार के डैश विकल्प होते हैं; एक दौर के 150 दौर के गोले में 10,170 प्रकार की स्थितियां हो सकती हैं; दूसरा, नियम बहुत सूक्ष्म हैं, और कुछ हद तक डैश चयन अनुभव संचय पर निर्भर करता है और अंतर्ज्ञान से बनता है; इसके अलावा, गोले के खेल में, कंप्यूटर के लिए मजबूत और कमजोर पक्षों को अलग करना मुश्किल है; इसलिए, गोले की चुनौती को कृत्रिम बुद्धिमत्ता के पोलो प्लानिंग डैश कहा जाता है।

अल्फागो केवल एक मोंटे कार्लो एल्गोरिथ्म नहीं है, बल्कि यह मोंटे कार्लो एल्गोरिथ्म का अपग्रेड है।

अल्फागो ने मोंटे कार्लोस ट्री सर्च एल्गोरिथ्म और दो गहरे तंत्रिका नेटवर्क के साथ मिलकर शतरंज को पूरा किया। ली सिस्टोन के साथ मुकाबले से पहले, गूगल ने पहले अल्फागो शतरंज के तंत्रिका नेटवर्क को प्रशिक्षित किया, जो मानव-मुर्गी के बीच लगभग 30 मिलियन कदमों का उपयोग करता है, ताकि यह भविष्यवाणी कर सके कि मानव पेशेवर शतरंज खिलाड़ी कैसे गिरेंगे। और आगे, अल्फागो को खुद के साथ शतरंज खेलना चाहिए, जिससे एक विशाल पैमाने पर नया शतरंज स्केच उत्पन्न होता है। गूगल इंजीनियरों ने दावा किया कि अल्फागो हर दिन एक मिलियन कदमों का प्रयास कर सकता है।

इनका कार्य सहयोगात्मक रूप से आगे बढ़ने वाले चरणों को चुनना और स्पष्ट गड़बड़ियों को छोड़ना है, ताकि कंप्यूटर द्वारा किए जा सकने वाले कार्यों को नियंत्रित किया जा सके। यह मूल रूप से मानव चेसर के समान है।

चाइना एकेडमी ऑफ साइंसेज के ऑटोमेशन इंस्टीट्यूट के शोधकर्ता इयिन यंग ने कहा कि पारंपरिक चेस सॉफ्टवेयर, आम तौर पर हिंसक खोज का उपयोग करते हैं, जिसमें गहरे नीले कंप्यूटर भी शामिल हैं, जो सभी संभावित परिणामों के लिए एक खोज पेड़ का निर्माण करते हैं (प्रत्येक परिणाम पेड़ पर एक फल है) और आवश्यकता के अनुसार खोज करते हैं। यह तरीका शतरंज, कूदने के लिए भी संभव है, लेकिन गोदाम के लिए संभव नहीं है, क्योंकि गोदाम में 19 पंक्तियों के साथ, गिरने की संभावना इतनी अधिक है कि कंप्यूटर इस पेड़ के फलों का निर्माण नहीं कर सकता है (बहुत अधिक) । अल्फा गो ने एक बहुत ही स्मार्ट तरीका अपनाया है, जो इस समस्या को पूरी तरह से हल करता है। इसके गहरे सीखने के तरीके का उपयोग करके खोज पेड़ की जटिलता को कम किया गया है, खोज स्थान को प्रभावी ढंग से कम किया गया है। उदाहरण के लिए, रणनीतिक खोज नेटवर्क निर्देशों को एक मानव कंप्यूटर की तरह खोज करने के लिए जिम्मेदार है।

डेंगूजी ने आगे बताया कि डीएनएन के सबसे बुनियादी इकाइयों में से एक हमारे मानव मस्तिष्क के समान है, जिसमें कई परतें हैं जो एक दूसरे से जुड़ी हुई हैं। अल्फागो के दो तंत्रिका नेटवर्क हैं, रणनीतिक नेटवर्क और मूल्यांकन नेटवर्क।

चाकू रणनीति नेटवर्क मुख्य रूप से ड्रॉप रणनीति उत्पन्न करने के लिए उपयोग किया जाता है। चेस के दौरान, यह यह नहीं सोचता है कि उसे क्या करना चाहिए, बल्कि यह सोचता है कि मानव खिलाड़ी क्या होगा। यानी, यह इनपुट के आधार पर चेसबोर्ड की वर्तमान स्थिति के आधार पर भविष्यवाणी करेगा कि मानव का अगला कदम कहां होगा, और मानव सोच के अनुरूप कुछ व्यवहार्य विकल्प पेश करेगा।

हालाँकि, रणनीति नेटवर्क को यह नहीं पता कि यह कदम अच्छा है या नहीं, यह केवल यह जानता है कि यह कदम मानव के समान है या नहीं।

डेंगाची ने कहा कि, "चूल्हा मूल्यांकन नेटवर्क सभी व्यवहार्य विकल्पों के लिए पूरे प्लेट की स्थिति का आकलन करता है और फिर जीत की संभावना का अनुमान लगाता है। ये मान मोंटे कार्लोस खोज एल्गोरिथ्म में प्रतिक्रिया देते हैं, जो ऊपर की प्रक्रिया के समान दोहराकर सबसे अधिक जीत की संभावना का अनुमान लगाते हैं। मोंटे कार्लोस खोज एल्गोरिथ्म ने तय किया कि रणनीतिक नेटवर्क केवल उच्च जीत की संभावना के साथ आगे बढ़ेगा, ताकि कुछ मार्गों को छोड़ दिया जा सके और ब्लैक तक पहुंचने के लिए एक भी रास्ता नहीं चुना जा सके। "

अल्फागो इन दोनों उपकरणों का उपयोग स्थिति का विश्लेषण करने के लिए करता है और प्रत्येक चरण की रणनीति के गुणों और दोषों को निर्धारित करता है, जैसे कि मानव चेसर खिलाड़ी वर्तमान स्थिति का निर्धारण करते हैं और भविष्य की स्थिति का अनुमान लगाते हैं। मोंटे कार्लोस ट्री सर्च एल्गोरिदम का उपयोग करके, उदाहरण के लिए, भविष्य के 20 चरणों का विश्लेषण किया जाता है।

हालांकि, इसमें कोई संदेह नहीं है कि मोंटे कार्लो एल्गोरिदम अल्फागो के केंद्र में है।

दो छोटे प्रयोग अंत में, मोंटे कार्लो एल्गोरिदम के दो छोटे प्रयोगों को देखें।

  • 1.计算圆周率pi。

सिद्धांतः पहले एक वर्ग को चित्रित करें, उसके भीतर का सर्कल बनाएं, फिर इस वर्ग के भीतर एक यादृच्छिक चित्रण बिंदु बनाएं, एक बिंदु को सर्कल के भीतर लगभग P के रूप में सेट करें, तो P = सर्कल क्षेत्र / वर्ग क्षेत्र। P= ((Pi)आरR) / ((2R*2R) = Pi/4, यानी Pi = 4P

कदमः 1. वृत्त के केंद्र को मूल बिंदु पर रखकर, आर के साथ त्रिज्या के लिए एक वृत्त बनाएं, तो प्रथम चतुर्भुज का 1/4 वृत्त क्षेत्रफल पाई हैआरR/4 2. इस 1/4 वृत्त के बाहरी वर्ग का निर्माण करें, जिसका निर्देशांक है ((0,0) ((0,R) ((R,0) ((R,R), तो इस वर्ग का क्षेत्रफल R हैR 3. जैसे-जैसे बिंदु ((X, Y) को लिया जाता है, 0 <= X <= R और 0 <= Y <= R, यानी बिंदु वर्ग में होता है 4. सूत्र X के माध्यम सेएक्स+वाईYयह निर्धारित करें कि क्या R बिंदु 1 / 4 सर्किट के भीतर है। 5. सभी बिंदुओं (यानी प्रयोगों की संख्या) के लिए सेट करें N, और 1 / 4 सर्कल के भीतर आने वाले बिंदुओं की संख्या (चरण 4 को पूरा करने वाले बिंदुओं) के लिए सेट करें M,

P=M/N, तो Pi=4*N/Mimgचित्र 1

M_C ((10000) 3.1424 को चलाता है

  • 2.蒙特卡洛模拟求函数极值,可避免陷入局部极值

# अंतराल [-2,2] पर एक संख्या को यादृच्छिक रूप से उत्पन्न करें, इसके लिए y का पता लगाएं, और यह पता लगाएं कि इसमें सबसे बड़ा मान [-2,2] पर फ़ंक्शन का सबसे बड़ा मान हैimgचित्र 2

1000 बार के अनुकरण के बाद, 185.12292832389875 (बहुत सटीक) का बहुत बड़ा मूल्य पाया गया।

यहाँ, दोस्तों, आप समझते हैं. कोड हाथ से लिखा जा सकता है, यह दिलचस्प है! WeChat के सार्वजनिक नंबर से पुनर्प्रकाशित


अधिक