আলফাজেরো কখনই দেখেনি এমন অবস্থানের মূল্যায়ন করতে শিখবে?


12

এর উত্তর থেকে অনুসরণ করা:

আলফাজিরো বোঝা যাচ্ছে

আমার প্রশ্নটি হবে যে নিউরাল নেটটি এমন একটি অবস্থার মুখোমুখি হয়নি যেখানে কী করতে হবে "শিখবে"। প্রকৃত এজেড বলতে প্রশিক্ষিত নিউরাল নেট থেকে বায়াস + ওজন ব্যবহার করে একটি এমসিটিএস কার্যকর করে কেবল নিউরাল নেট কীভাবে এই মানগুলি গণনা করে তার এক ধাপ পিছনে ফেলে দেয়। যদি এটি কোনও মানুষের জ্ঞান না রেখে এলোমেলো স্ব-খেলার মধ্য দিয়ে হয়, তবে এটি কখনই কোনও অবস্থানের ওজন কীভাবে তা স্থির করে?

উত্তর:


6

একটি দাবা ইঞ্জিনের মূল্যায়ন কার্য, নিউরাল নেট বা স্পষ্ট কোড হিসাবে তাত্ক্ষণিক হোক না কেন, যে কোনও বোর্ড পজিশনে একটি মান নির্ধারণ করতে সর্বদা সক্ষম। যদি আপনি এটিকে বোর্ডের পজিশন দেন, এমনকি এমন কোনও অযৌক্তিক বিষয় যা কোনও খেলায় কখনই ঘটে না তবে এটি কোনও খেলোয়াড় বা অন্য খেলোয়াড়ের পক্ষে কতটা অনুকূল তা উপস্থাপন করে এমন একটি সংখ্যা ছুঁড়ে ফেলতে সক্ষম হবে। যেহেতু দাবাতে বোর্ডের পদের সংখ্যাটি নিয়ন্ত্রণহীনভাবে বিশাল, তাই প্রশিক্ষণটি কেবলমাত্র গেম গাছের একটি অসীম নমুনাতেই ঘটতে পারে। ইঞ্জিন কেবল বোর্ড পজিশনের পূর্বে গণনা করা মানগুলি স্মরণ করে না, তবে টুকরোগুলি বিন্যাসের ভিত্তিতে গণনা সম্পাদন করে। স্নায়ুবিহীন-নেট উদাহরণের জন্য, দাবা ইঞ্জিনের মূল্যায়নের অংশটি হ'ল তার প্রতিটি অংশের মান যুক্ত করতে এবং প্রতিপক্ষের টুকরাগুলির মোট মান বিয়োগ করা। তারপর,

ইঞ্জিনটি প্রশিক্ষণপ্রাপ্ত না হলে মূল্যায়ন ফাংশনটির প্যারামিটারগুলি (সাধারণত) এলোমেলো মানগুলির সাথে শুরু হওয়ার পরে কোনও অবস্থানে নির্ধারিত মানগুলিও এলোমেলো হতে পারে। একটি প্রশিক্ষণ পর্বের লক্ষ্য ইঞ্জিনের প্যারামিটারগুলি সামঞ্জস্য করা যাতে এটি প্লেয়ারগুলির পক্ষে সম্ভাব্য বিজয়ী রাষ্ট্রগুলির উচ্চতর স্কোরগুলি বরাদ্দ করে assign

আলফাজিরো (পৃষ্ঠা 3) এর কাগজ থেকে :

আলফাজিরোর গভীর স্নায়বিক নেটওয়ার্কের পরামিতিগুলি এলোমেলোভাবে সূচনা পরামিতিগুলি থেকে শুরু করে স্ব-প্লে পুনর্বহাল শেখার মাধ্যমে প্রশিক্ষিত হয়। এমসিটিএস দ্বারা উভয় খেলোয়াড়ের জন্য পদক্ষেপগুলি নির্বাচন করে গেমগুলি খেলা হয়। গেমের শেষে গেমের ফলাফল গণনা করার জন্য গেমের নিয়ম অনুসারে টার্মিনাল পজিশনটি তৈরি হয়: একটি ক্ষতির জন্য −1, একটি ড্রয়ের জন্য 0 এবং জয়ের জন্য +1। ভবিষ্যদ্বাণী করা ফলাফল এবং গেমের ফলাফলের মধ্যে ত্রুটিটি হ্রাস করতে এবং সন্ধানের সম্ভাবনার সাথে নীতিমালার ভেক্টরের সাদৃশ্য সর্বাধিকতর করতে নিউরাল নেটওয়ার্ক প্যারামিটারগুলি আপডেট করা হয়।

[গণিতের প্রতীকগুলি উদ্ধৃতি থেকে সরানো]

সংক্ষেপে, প্রশিক্ষণের সময়, আলফাওরো নিজের বিরুদ্ধে একটি খেলা খেলেছিল। গেমটি শেষ হয়ে গেলে, গেমের ফলাফল এবং তার পূর্বাভাসগুলির যথার্থতাটি কীভাবে গেমটি এগিয়ে যাবে তা নিউরাল নেটকে সামঞ্জস্য করতে ব্যবহার করা হয়েছিল যাতে এটি পরবর্তী গেমের সময় আরও সঠিক হতে পারে। আলফাজেরো প্রতিটি পজিশন দেখেছে তার রেকর্ড রাখছে না, তবে নিজেকে সামঞ্জস্য করছে যাতে এটি ভবিষ্যতে যে কোনও বোর্ড দেখে তার আরও নিখুঁতভাবে মূল্যায়ন করতে পারে।


আমি অ্যালগরিদমিক স্তরে আপনার ব্যাখ্যাটি পুরোপুরি বুঝতে পারি, তবে আমি এখনও অবাক হয়েছি যে এটি কার্যকর হয়। আমি ভাবতাম যে প্রাথমিক গেমগুলি এতটা এলোমেলো হবে যে তাদের কোন শিক্ষার মূল্য থাকবে না। চেকমেটকে চালিয়ে না চালিয়ে that পর্যায়ে কোনও পদক্ষেপের ফলাফল মূল্যায়ন করা অসম্ভব বলে মনে হয়, কারণ এটিই কেবল আপনাকে বলা হয়েছিল। তবে সেই চেকমেট কেবলমাত্র বিপুল সংখ্যক অন্যান্য প্রয়োজনীয় এলোমেলো জিনিস চালিয়ে যাওয়ার পরে ঘটবে। আমার অন্ত্র অনুভূতি হ'ল কোনও সিদ্ধান্তে পৌঁছানোর জন্য পর্যাপ্ত অর্থবহ ডেটা নেই। আমি কেন ভুল করছি?
ফিলিপ রো

@ ফিলিপ্রো ঠিকই বলেছেন, প্রতিটি গেম কেবল কিছুটা তথ্য সরবরাহ করে। আমি আসলে আমার নিজের দাবা ইঞ্জিন লিখেছি যা একটি বিবর্তনীয় অ্যালগরিদম দ্বারা শিখেছে। ইঞ্জিনের এলোমেলোভাবে সংশোধিত অনুলিপি একে অপরকে খেলেন; পরাজয়কারীরা মুছে ফেলা হয় এবং বিজয়ীরা আরও সংশোধিত অনুলিপি তৈরি করে। এটি খণ্ড মানগুলির যথাযথ ক্রমটি নির্ধারণ করতে (রানী, রোক, বিশপ / নাইট, প্যাড) প্রায় 10,000 থেকে 20,000 গেমের মধ্যে লাগে। এটির দক্ষতা অর্জনের জন্য এটি আলফাজেরো 44 মিলিয়ন গেমস নিয়েছে (লিঙ্কযুক্ত কাগজের 15 পৃষ্ঠায় সারণী)।
মার্ক এইচ

সাড়া দেওয়ার জন্য ধন্যবাদ! তবে আমি এখনও হতবাক। মূল্যায়নের জন্য সম্ভাব্য পদের বিশাল জায়গা রয়েছে। তবে সম্ভাব্য প্রশ্ন জিজ্ঞাসা করার বিশাল জায়গাও রয়েছে। নৃতাত্ত্বিকভাবে আমি নিয়মগুলি ব্যতীত শূন্য পূর্বের জ্ঞান সহ নিজেকে কল্পনা করি এবং প্রায় অযোগ্যতার স্তরের খেলাগুলির একটি বিশাল ডাটাবেস (যদিও আমি মনে করি না যে সমস্ত স্মরণ করিতে পারি) কোন মুহূর্তে আমার কাছে এটি ঘটে "আরে সম্ভবত আমি টুকরোগুলি গণনা করা উচিত "তারপরে টুকরোগুলি গণনা করার আগে কতক্ষণ ভাল ধারণাটি পাওয়া যায়?
ফিলিপ রো

1
"কল্পনা করা আমার পক্ষে খুব কঠিন", যদি "একটি ভাল প্রশ্নকে কী বলে?" তবে তা ছাড়াও আমি ইমপ্রেস করেছিলাম যে ২০,০০০ গেমসে টুকরো টুকরো একটি উত্তরাধিকার প্রতিষ্ঠা করা যেতে পারে। সুতরাং আমি তাবুলাকে সত্যই রস বলে গ্রহণ করতে খুব কষ্ট পেয়েছি। আপনার বিধি তৈরি ও সংশোধন করার প্রক্রিয়া সম্পর্কে কিছু ন্যূনতম নির্দেশনা (কতটি, কতবার?) এখনও অপরিহার্য বলে মনে হয়।
ফিলিপ রো

1
ফিলিপ্রো আমার প্রোগ্রামে আমি ইঞ্জিনটিকে টুকরো গণনা করতে বলি, তবে প্রতিটি টুকরো কতটা মূল্যবান তা নয় not সুতরাং, আমি ইঞ্জিনকে কী দেখতে হবে তা বলি, তবে এটি কী দেখায় তা ওজন কীভাবে করা যায় তা নয়। আলফাজিরো অনেক বেশি তাবুল রস। আপনি যদি কৌতূহলী হন: github.com/MarkZH/ জেনেটিক_চেস
মার্ক এইচ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.