EDIT (पेपर पढ़ने के बाद):
मैंने पेपर सोच समझकर पढ़ा है। Google ने कागज में जो दावा किया है, उससे शुरू करते हैं:
- उन्होंने मोंटे-कार्लो-ट्री-सर्च + डीप न्यूरल नेटवर्क के साथ स्टॉकफिश को हराया
- यह मैच बिल्कुल एकतरफा था, अल्फ़ाज़ेरो के लिए कई जीतें लेकिन स्टॉकफिश के लिए कोई नहीं
- वे इसे केवल चार घंटे में करने में सक्षम थे
- अल्फ़ाज़ो एक इंसान की तरह खेला
दुर्भाग्य से, मुझे नहीं लगता कि यह एक अच्छा जर्नल पेपर है। मैं लिंक के साथ समझाने जा रहा हूँ (ताकि आप जानते हैं कि मैं सपने नहीं देख रहा हूँ):
https://www.chess.com/news/view/alphazero-reactions-from-top-gms-stockfish-author
समय पर नियंत्रण और स्टॉकफ़िश पैरामीटर सेटिंग्स के बजाय अजीब विकल्प के कारण मैच परिणाम अपने आप में विशेष रूप से सार्थक नहीं हैं: खेल 1 मिनट / चाल के निश्चित समय पर खेले गए थे, जिसका अर्थ है कि स्टॉकफ़िश को अपने समय प्रबंधन हेयुरेटिक्स का कोई उपयोग नहीं है ( स्टॉकफिश को खेल में महत्वपूर्ण बिंदुओं की पहचान करने और एक कदम पर कुछ अतिरिक्त समय बिताने के लिए तय करने के लिए बहुत प्रयास किया गया है, प्रति कदम एक निश्चित समय पर, ताकत का काफी नुकसान होगा)।
स्टॉकफ़िश केवल एक मिनट प्रति चाल के साथ सर्वश्रेष्ठ शतरंज नहीं खेल सकती थी। कार्यक्रम उस के लिए डिज़ाइन नहीं किया गया था।
- स्टॉकफ़िश एक नियमित वाणिज्यिक मशीन पर चल रहा था, जबकि अल्फाज़ेरो 4 लाख + टीपीयू मशीन पर था जो अल्फ़ाज़ेरो के लिए ट्यून किया गया था। यह एक सस्ते एंड्रॉइड फोन के खिलाफ अपने हाई-एंड डेस्कटॉप से मेल खाने जैसा है। टॉर्ड ने लिखा है:
एक साधारण कंप्यूटर पर चलने वाला एक पारंपरिक शतरंज कार्यक्रम है, दूसरा मौलिक रूप से विभिन्न तकनीकों का उपयोग करता है और कस्टम डिज़ाइन किए गए हार्डवेयर पर चल रहा है जो खरीद के लिए उपलब्ध नहीं है (और यदि यह होता तो आम उपयोगकर्ताओं के बजट से बाहर हो जाता)।
- Google ने अनजाने में स्टॉकफिश के लिए 32 कोर मशीन को 64 धागे दिए। मैं जीएम लैरी कॉफ़मैन (विश्व स्तरीय कंप्यूटर शतरंज विशेषज्ञ) का उद्धरण देता हूं:
http://talkchess.com/forum/viewtopic.php?p=741987&highlight=#741987
मैं मानता हूं कि परीक्षा निष्पक्ष थी; एसएफ को चोट पहुंचाने वाला एक और मुद्दा यह था कि यह जाहिरा तौर पर 32 कोर मशीन पर 64 थ्रेड्स पर चलता था, लेकिन यह उस मशीन पर सिर्फ 32 थ्रेड चलाने में ज्यादा बेहतर होगा, क्योंकि लगभग 5 से 3 मंदी की भरपाई करने के लिए लगभग कोई एसएमपी लाभ नहीं है। मेरे द्वारा लागत अनुपात भी अधिक था; मैं सोच रहा था कि यह एक 64 कोर मशीन थी, लेकिन एक 32 कोर मशीन की लागत लगभग आधी थी जो मैंने अनुमान लगाया था। तो शायद सभी 30 से 1 में सभी इतना बुरा नहीं है एक अनुमान है। दूसरी ओर मुझे लगता है कि आप इसे कम करके आंक सकते हैं कि इसे और बेहतर बनाया जा सकता है।
- स्टॉकफिश ने केवल 1GB हैश टेबल दी। यह एक मजाक है ... मेरे पास मेरे iPhone पर मेरे स्टॉकफिश आईओएस ऐप (अस्वीकरण: मैं लेखक हूं) के लिए एक बड़ा हैश टेबल है ! टॉर्ड ने लिखा है:
... धागे की संख्या के लिए बहुत छोटी हैश टेबल ...
1GB हैश टेबल इस तरह से एक मैच के लिए बिल्कुल अस्वीकार्य है। स्टॉकफिश अक्सर हैश टक्कर का सामना करेंगे। पुरानी हैश प्रविष्टियों को बदलने के लिए सीपीयू चक्र लेता है।
- स्टॉकफिश को कई थ्रेड्स के साथ चलाने के लिए डिज़ाइन नहीं किया गया है। मेरे iOS शतरंज ऐप में, केवल कुछ थ्रेड्स का उपयोग किया जाता है। टॉर्ड ने लिखा है:
... कहीं अधिक खोज धागे के साथ खेल रहा था कभी भी परीक्षण के किसी भी महत्वपूर्ण राशि प्राप्त की है ...
- स्टॉकफिश बिना ओपनिंग बुक या 6-पीस सिज़्गी एंडगेम टेबलबेस के बिना चल रही थी। नमूने का आकार अपर्याप्त था। स्टॉकफिश संस्करण नवीनतम नहीं था। चर्चा यहाँ ।
निष्कर्ष
Google ने संदेह के बिना साबित नहीं किया है कि उनके तरीके स्टॉकफिश से बेहतर हैं। उनकी संख्या सतही और दृढ़ता से अल्फ़ाज़ेरो के पक्षपाती हैं। एक स्वतंत्र तीसरे पक्ष द्वारा उनके तरीके प्रतिलिपि प्रस्तुत करने योग्य नहीं हैं। यह कहना अभी भी थोड़ा जल्दी है कि डीप लर्निंग पारंपरिक शतरंज प्रोग्रामिंग का एक बेहतर तरीका है।
EDIT (दिसंबर 2017):
शतरंज में गहन सुदृढीकरण सीखने के लिए Google Deepmind ( https://arxiv.org/pdf/1712.01815.pdf ) का एक नया पेपर है । अमूर्त से, दुनिया का नंबर एक स्टॉकफिश शतरंज इंजन "कायल" था। मुझे लगता है कि 1997 के डीप ब्लू मैच के बाद से कंप्यूटर शतरंज में यह सबसे महत्वपूर्ण उपलब्धि है। एक बार विवरण में पेपर पढ़ने के बाद मैं अपना उत्तर अपडेट करूंगा।
मूल (दिसंबर 2017 से पहले)
आइए अपना प्रश्न स्पष्ट करें:
- नहीं, शतरंज इंजन ब्रूट-बल का उपयोग नहीं करते हैं।
- AlphaGo करता उपयोग पेड़ खोज, इसे इस्तेमाल करता है मोंटे कार्लो ट्री खोजें । यदि आप आश्वस्त होना चाहते हैं तो Google " मोंटे कार्लो ट्री सर्च अल्फ़ागो "।
ANN का उपयोग शतरंज इंजन के लिए किया जा सकता है:
क्या यह कार्यक्रम आज के शीर्ष शतरंज-इंजनों (और शतरंज खिलाड़ियों) से बेहतर प्रदर्शन करेगा?
जिराफ इंटरनेशन मास्टर स्तर पर खेलते हैं, जो कि फिडे 2400 रेटिंग के बारे में है। हालांकि, स्टॉकफिश, हौदिनी और कोमोडो सभी FIDE 3000 पर खेलते हैं। यह एक बड़ा अंतर है। क्यूं कर? मोंटे-कार्लो ट्री सर्च क्यों नहीं?
- शतरंज में सामग्री अनुमानी सरल है। ज्यादातर समय, एक शतरंज की स्थिति बोर्ड पर सिर्फ गिनती की सामग्री द्वारा जीत / हार रही है। कृपया याद रखें कि गिनती की सामग्री गो के लिए काम नहीं करती है। सामग्री की गिनती तंत्रिका नेटवर्क चलाने से अधिक परिमाण का आदेश है - यह 64-बिट पूर्णांक द्वारा दर्शाए गए बिटबोर्ड द्वारा किया जा सकता है। 64 बिट सिस्टम पर, यह केवल कई मशीन निर्देशों द्वारा किया जा सकता है। मशीन लर्निंग की तुलना में पारंपरिक एल्गोरिदम के साथ खोज करना बहुत तेज़ है। उच्चतर नोड्स प्रति सेकंड गहरी खोज में अनुवाद करते हैं।
- इसी तरह, बहुत उपयोगी और सस्ती तकनीकें हैं जैसे कि नल चाल छंटाई, देर से कदम में कमी और हत्यारा चाल आदि। वे चलाने के लिए सस्ते हैं, और अल्फा गो में उपयोग किए जाने वाले दृष्टिकोण के लिए बहुत कुशल हैं।
- शतरंज में स्थैतिक मूल्यांकन तेज और उपयोगी है
- मशीन लर्निंग ऑप्टिमाइज़िंग मापदंडों के लिए उपयोगी है, लेकिन हमारे पास शतरंज के लिए SPSA और CLOP भी है।
- शतरंज में पेड़ों की कमी के लिए बहुत सारे उपयोगी मीट्रिक हैं। गो के लिए बहुत कम।
वहाँ अनुसंधान था कि मोंटे कार्लो ट्री सर्च शतरंज के लिए अच्छा नहीं है। शतरंज के लिए गो एक अलग खेल है। शतरंज एल्गोरिदम गो के लिए काम नहीं करता है क्योंकि शतरंज क्रूर रणनीति पर निर्भर करता है। शतरंज में रणनीति निश्चित रूप से अधिक महत्वपूर्ण है।
अब, हमने स्थापित किया है कि MCTS अल्फ़ागो के लिए अच्छी तरह से काम करती है लेकिन शतरंज के लिए कम है। गहरी शिक्षा अधिक उपयोगी होगी यदि:
- ट्यून एनएन मूल्यांकन पारंपरिक एल्गोरिदम की तुलना में बेहतर है। हालांकि ... गहरी शिक्षा जादू नहीं है, आप प्रोग्रामर के रूप में अभी भी प्रोग्रामिंग करने की आवश्यकता होगी। जैसा कि उल्लेख किया गया है, शतरंज में ट्यूनिंग के मापदंडों के लिए हमारे पास एसपीएएस जैसा कुछ है।
- निवेश, पैसा! शतरंज में मशीन सीखने के लिए बहुत पैसा नहीं है। स्टॉकफिश स्वतंत्र और खुला स्रोत है, लेकिन सभी मानव खिलाड़ियों को हराने के लिए पर्याप्त मजबूत है। अगर कोई सिर्फ स्टॉकफिश को मुफ्त में डाउनलोड कर सकता है तो गूगल लाखों खर्च क्यों करेगा? CPU क्लस्टर के लिए भुगतान क्यों किया जा रहा है? प्रतिभाओं के लिए भुगतान करने वाला कौन है? कोई भी ऐसा नहीं करना चाहता है, क्योंकि शतरंज को "हल" खेल माना जाता है।
यदि गहरी शिक्षा निम्नलिखित प्राप्त कर सकती है, तो यह पारंपरिक एल्गोरिथ्म को हरा देगी:
- एक शतरंज की स्थिति को देखते हुए, यह एक मानव ग्रैंडमास्टर की तरह "महसूस" करता है। उदाहरण के लिए, एक मानव ग्रैंडमास्टर उन पंक्तियों में नहीं जाएगा जो खराब हैं - अनुभव से। न तो पारंपरिक एल्गोरिथ्म और न ही गहन शिक्षा वह हासिल कर सकती है। आपका NN मॉडल आपको आपकी स्थिति के लिए एक संभावना [0..1] दे सकता है, लेकिन यह पर्याप्त अच्छा नहीं है।
मुझे इंगित करें:
नहीं जिराफ़ (@Tim द्वारा पोस्ट किया गया लिंक) मोंटे कार्लो ट्री सर्च का उपयोग नहीं करता है। यह नियमित रूप से नेगा-अधिकतम एल्गोरिथ्म का उपयोग करता है। यह सब कुछ एनएन के साथ नियमित मूल्यांकन फ़ंक्शन को प्रतिस्थापित करता है, और यह बहुत धीमा है।
एक और:
हालांकि 1997 के मैच में कास्परोव को डीप ब्लू ने हराया था। "मानवता" वास्तव में 2003-2005 के आसपास खो गई थी, जब क्रैमनिक एक जीत के बिना डीप फ्रिट्ज़ से मैच हार गए और माइकल एडम्स एकतरफा मैच में क्लस्टर मशीन से हार गए। उस समय के आसपास, Rybka दुनिया के सर्वश्रेष्ठ खिलाड़ियों के लिए बहुत मजबूत साबित हुई।
संदर्भ:
http://www.talkchess.com/forum/viewtopic.php?t=64096&postdays=0&postorder=asc&highlight=alphago+chess&topic_view=flat&start=0
मैं उद्धृत करता हूं:
शतरंज में हमारे पास भौतिकता की अवधारणा है जो पहले से ही इस बात का एक गूढ़ अनुमान देता है कि इंजन कितना अच्छा काम कर रहा है और जल्दी से गणना की जा सकती है। इसके अलावा, खेल के अन्य पहलुओं का एक बहुत कुछ है जो एक स्थैतिक मूल्यांकन समारोह में एन्कोड किया जा सकता है जो कि Go में नहीं किया जा सकता है। कई हेयूरिस्टिक्स और अच्छे मूल्यांकन के कारण, EBF (इफेक्टिव-ब्रांचिंग-फैक्टर) काफी छोटा है। स्थैतिक मूल्यांकन समारोह के प्रतिस्थापन के रूप में न्यूरल नेटवर्क का उपयोग निश्चित रूप से इंजन को काफी धीमा कर देगा।