Original Title: 深度强化学习进展: 从AlphaGo到AlphaGo Zero
Source: doi.org/10.7641/CTA.2017.70808
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

វឌ្ឍនភាពនៃការរៀនសូត្រពង្រឹងស៊ីជម្រៅ៖ ពី AlphaGo ដល់ AlphaGo Zero

ចំណងជើងដើម៖ 深度强化学习进展: 从AlphaGo到AlphaGo Zero

អ្នកនិពន្ធ៖ TANG Zhen-tao, SHAO Kun, ZHAO Dong-bin (The State Key Laboratory of Management and Control for Complex Systems, Institute of Automation, Chinese Academy of Sciences), ZHU Yuan-heng

ឆ្នាំបោះពុម្ព៖ 2017 Control Theory & Applications

វិស័យសិក្សា៖ Artificial Intelligence

១. សេចក្តីសង្ខេបប្រតិបត្តិ (Executive Summary)

បញ្ហា (The Problem)៖ ឯកសារនេះពិនិត្យមើលការវិវឌ្ឍដ៏សំខាន់នៃបច្ចេកវិទ្យាបញ្ញាសិប្បនិម្មិត ជាពិសេសការរៀនសូត្រពង្រឹងស៊ីជម្រៅ (Deep Reinforcement Learning - DRL) ដោយផ្តោតលើការវិភាគប្រៀបធៀបពី AlphaGo ទៅ AlphaGo Zero ដែលអាចរៀនលេងអុក Go ដោយខ្លួនឯងដោយមិនបាច់មានទិន្នន័យពីមនុស្ស។

វិធីសាស្ត្រ (The Methodology)៖ ការសិក្សានេះធ្វើការពិនិត្យឡើងវិញ (Review) នូវក្បួនដោះស្រាយ (Algorithms) សំខាន់ៗនៃ DRL និងវិភាគស៊ីជម្រៅលើបច្ចេកទេស និងស្ថាបត្យកម្មរបស់ AlphaGo Zero ព្រមទាំងការអនុវត្តរបស់វាក្នុងវិស័យផ្សេងៗ។

លទ្ធផលសំខាន់ៗ (The Verdict)៖

២. ការវិភាគលើប្រសិទ្ធភាព និងដែនកំណត់ (Performance & Constraints)

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
DQN (Deep Q-Network)
ក្បួនដោះស្រាយ DQN
អាចរៀនដោយផ្ទាល់ពីទិន្នន័យរូបភាព (End-to-end) និងប្រើប្រាស់ទិន្នន័យចាស់ៗឡើងវិញតាមរយៈ Experience Replay ដើម្បីបង្កើនប្រសិទ្ធភាព។ មានដែនកំណត់ ដោយស័ក្តិសមតែជាមួយសកម្មភាពដាច់ដោយឡែក (Discrete actions) និងប្រឈមនឹងបញ្ហាវាយតម្លៃតម្លៃលើស (Overestimation)។ កំណត់ជាគោលស្តង់ដារ (១០០%) សម្រាប់ការវាយតម្លៃលើលទ្ធផលហ្គេម Atari ផ្សេងៗ។
A3C (Asynchronous Advantage Actor-Critic)
ក្បួនដោះស្រាយ A3C
មានល្បឿនលឿនដោយប្រើដំណើរការស្របគ្នាច្រើន (Asynchronous multi-threading) និងសន្សំសំចៃអង្គចងចាំបានល្អ។ ស្ថិរភាពនៃការហ្វឹកហាត់មិនទាន់អាចធានាបានទាំងស្រុងនោះទេ ដោយសារការធ្វើបច្ចុប្បន្នភាពទិន្នន័យមានភាពមិនសមកាលកម្ម។ ទទួលបានពិន្ទុ ១៦៣.០៧% ប្រៀបធៀបនឹងក្បួនដោះស្រាយ DQN នៅលើហ្គេម Atari។
PPO (Proximal Policy Optimization)
ក្បួនដោះស្រាយ PPO
មានស្ថិរភាពខ្ពស់ ភាពស្មុគស្មាញទាបក្នុងការគណនា និងមានភាពងាយស្រួលក្នុងការកំណត់ប៉ារ៉ាម៉ែត្រ។ បើទោះបីជាមានស្ថិរភាព ប៉ុន្តែលទ្ធផល និងប្រសិទ្ធភាពទូទៅនៅទាបជាងក្បួនដោះស្រាយ ACKTR បន្តិច។ ទទួលបានពិន្ទុ ៤៦.២៦% ដែលបង្ហាញពីស្ថិរភាពនៃការអនុវត្តជាជាងការពង្រីកពិន្ទុខ្ពស់ខុសធម្មតា។
AlphaGo Zero (Self-play DRL)
ប្រព័ន្ធ AlphaGo Zero
មិនត្រូវការទិន្នន័យណែនាំពីមនុស្សទាល់តែសោះ (រៀនដោយខ្លួនឯងទាំងស្រុង) ប្រើពេលហ្វឹកហាត់ខ្លី និងស៊ីធនធាន Hardware តិចជាងជំនាន់មុន។ ទោះបីស៊ីធនធានពេលដំណើរការតិច ប៉ុន្តែនៅតែត្រូវការកម្លាំងម៉ាស៊ីនមហាអស្ចារ្យ (TPU រាប់ពាន់) សម្រាប់ការហ្វឹកហាត់ដំបូង។ ឈ្នះ AlphaGo Lee ក្នុងលទ្ធផល ១០០ ទល់នឹង ០ ដោយប្រើពេលហ្វឹកហាត់ត្រឹម ៣ ថ្ងៃ និងប្រើប្រាស់ TPU តែ ៤ គ្រឿងប៉ុណ្ណោះពេលប្រកួត។

ការចំណាយលើធនធាន (Resource Cost)៖ ការអភិវឌ្ឍប្រព័ន្ធ DRL កម្រិតខ្ពស់ដូចជា AlphaGo Zero ទាមទារថាមពលកុំព្យូទ័រ (Compute Power) យ៉ាងធំធេងសម្រាប់ការហ្វឹកហាត់ដំបូង បើទោះបីជាតម្រូវការទិន្នន័យ និងកម្លាំងម៉ាស៊ីនពេលដំណើរការ (Inference) ត្រូវបានកាត់បន្ថយយ៉ាងច្រើនក៏ដោយ។

៣. ការពិនិត្យសម្រាប់បរិបទកម្ពុជា/អាស៊ីអាគ្នេយ៍

ភាពលំអៀងនៃទិន្នន័យ (Data Bias)៖

ការសិក្សានេះភាគច្រើនផ្អែកលើបរិស្ថានក្លែងធ្វើ និងហ្គេមអុកដែលមិនមានភាពរញ៉េរញ៉ៃ (Zero noise data) ដែលខុសពីពិភពពិត។ សម្រាប់ប្រទេសកម្ពុជា ការខ្វះខាតទិន្នន័យជាក់ស្តែង (Real-world data) អាចជាឧបសគ្គដ៏ធំនៅពេលចង់យក DRL មកដោះស្រាយបញ្ហាសង្គម ប៉ុន្តែបច្ចេកទេសរៀនដោយខ្លួនឯង (Self-play) អាចជាច្រកចេញដ៏ល្អ។

លទ្ធភាពនៃការអនុវត្ត (Applicability)៖

បច្ចេកវិទ្យា DRL មានសក្តានុពលខ្ពស់ក្នុងការយកមកប្រើប្រាស់ដោះស្រាយបញ្ហាស្មុគស្មាញនៅកម្ពុជា ជាពិសេសក្នុងស្ថានភាពដែលខ្វះទិន្នន័យពីអតីតកាល។

ជារួម បើទោះបីជា DRL ទាមទារការយល់ដឹងស៊ីជម្រៅ និងធនធានគណនាខ្ពស់ ប៉ុន្តែវាផ្តល់នូវអនាគតដ៏ភ្លឺស្វាងសម្រាប់ការបង្កើតប្រព័ន្ធស្វ័យប្រវត្តិដែលអាចរៀននិងសម្របខ្លួនបាន ក្នុងការជំរុញការអភិវឌ្ឍនៅកម្ពុជា។

៤. ផែនការសកម្មភាពសម្រាប់និស្សិត (Actionable Roadmap)

ដើម្បីអនុវត្តតាមការសិក្សានេះ និស្សិតគួរអនុវត្តតាមជំហានខាងក្រោម៖

  1. សិក្សាមូលដ្ឋានគ្រឹះនៃម៉ាស៊ីនរៀនសូត្រ (Master the Fundamentals): និស្សិតត្រូវចាប់ផ្តើមស្វែងយល់ពីភាសាសរសេរកូដ Python ក៏ដូចជាបណ្ណាល័យ PyTorchTensorFlow រួមទាំងទ្រឹស្តី Markov Decision Process (MDP) ដែលជាគ្រឹះនៃ Reinforcement Learning។
  2. អនុវត្តលើបរិស្ថានក្លែងធ្វើខ្នាតតូច (Build Toy Models): ប្រើប្រាស់ OpenAI Gym ដើម្បីសរសេរកូដបង្កើតក្បួនដោះស្រាយ DQN សាមញ្ញដោយខ្លួនឯង ឧទាហរណ៍ដូចជាការបង្រៀន AI ឱ្យរៀនរក្សាតុល្យភាពក្នុងគម្រោង CartPole ។
  3. ឈានចូលក្បួនដោះស្រាយផ្អែកលើគោលនយោបាយ (Explore Policy Gradients): បន្ទាប់ពីយល់ DQN ត្រូវអនុវត្តសរសេរកូដសម្រាប់ក្បួនដោះស្រាយទំនើបៗដូចជា PPO និង A3C ព្រោះវាមានប្រសិទ្ធភាពខ្ពស់ក្នុងការគ្រប់គ្រងសកម្មភាពបន្តបន្ទាប់ (Continuous actions) ដូចជាការបញ្ជាមនុស្សយន្ត។
  4. ចូលរួមការប្រកួតប្រជែង ឬផ្តួចផ្តើមគម្រោងជាក់ស្តែង (Project Implementation): សាកល្បងយក DRL ទៅដោះស្រាយបញ្ហាក្នុងស្រុក ដូចជាការធ្វើគំរូក្លែងធ្វើ (Simulation) នៃចរាចរណ៍តំបន់ណាមួយនៅភ្នំពេញ ឬចូលរួមប្រកួតលើប្រព័ន្ធ Kaggle ដើម្បីទទួលបានបទពិសោធន៍វិភាគទិន្នន័យជាក់ស្តែង។

៥. វាក្យសព្ទបច្ចេកទេស (Technical Glossary)

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Deep Reinforcement Learning (DRL) ជាការរួមបញ្ចូលគ្នារវាងបណ្ដាញសរសៃប្រសាទសិប្បនិម្មិត (Deep Learning) ដើម្បីអាននិងយល់ពីស្ថានភាពបរិស្ថាន និងការរៀនសូត្រពង្រឹង (Reinforcement Learning) ដើម្បីធ្វើការសម្រេចចិត្ត ដោយប្រព័ន្ធរៀនតាមរយៈការសាកល្បងខុសត្រូវ និងស្វែងរកផ្លូវណាដែលទទួលបានរង្វាន់ច្រើនជាងគេ។ ដូចជាការបង្រៀនសត្វឆ្កែឱ្យចេះចាប់បាល់ ដោយយើងឱ្យចំណីវានៅពេលវាចាប់បាន (រង្វាន់) និងមិនឱ្យអ្វីទាំងអស់ពេលវាធ្វើខុស រហូតដល់វាចេះចាប់បាល់យ៉ាងស្ទាត់ជំនាញ។
Monte Carlo Tree Search (MCTS) ជាក្បួនដោះស្រាយសម្រាប់ស្វែងរកជម្រើសដ៏ល្អបំផុតក្នុងការសម្រេចចិត្ត ដោយវាធ្វើការក្លែងធ្វើ (Simulate) លទ្ធផលដែលអាចកើតឡើងរាប់ពាន់ដងទៅអនាគតយ៉ាងលឿន ហើយរើសយកផ្លូវណាដែលមានភាគរយជោគជ័យខ្ពស់ជាងគេបំផុតដើម្បីអនុវត្តជាក់ស្តែង។ ដូចជាអ្នកលេងអុកដែលគិតស្រមៃមើលសេណារីយ៉ូនៃការដើរអុកជាច្រើនជំហានទៅមុខនៅក្នុងខួរក្បាល និងវាយតម្លៃចាញ់ឈ្នះ មុននឹងសម្រេចចិត្តទម្លាក់កូនអុកពិតប្រាកដ។
Deep Residual Network (ResNet) ជាបណ្តាញសរសៃប្រសាទស៊ីជម្រៅដែលមានរចនាសម្ព័ន្ធពិសេសហៅថា "Skip connections" ដែលអនុញ្ញាតឱ្យទិន្នន័យលោតរំលងស្រទាប់មួយចំនួនដើម្បីដោះស្រាយបញ្ហាបាត់បង់ព័ត៌មាន (Vanishing Gradient) ដែលជួយឱ្យ AI អាចវិភាគទិន្នន័យស្មុគស្មាញ (ដូចជាក្តារអុក) បានកាន់តែច្បាស់និងមានប្រសិទ្ធភាព។ ដូចជាការសាងសង់ស្ពានអាកាសល្បឿនលឿនកាត់ពីលើទីក្រុង ដែលអនុញ្ញាតឱ្យរថយន្តធ្វើដំណើរពីចុងម្ខាងទៅចុងម្ខាងទៀតបានលឿន ដោយមិនចាំបាច់ឆ្លងកាត់ភ្លើងស្តុបតូចៗជាច្រើនតាមផ្លូវ។
Experience Replay ជាបច្ចេកទេសមួយដែលប្រព័ន្ធ AI ធ្វើការចងចាំនូវរាល់សកម្មភាពនិងលទ្ធផលដែលវាធ្លាប់បានធ្វើពីមុនមក រួចទាញយកទិន្នន័យទាំងនោះមកចាក់រៀនឡើងវិញម្តងហើយម្តងទៀតដោយចៃដន្យ (Random sampling) ដើម្បីកែលម្អការសម្រេចចិត្តរបស់វានាពេលអនាគត។ ដូចជាសិស្សដែលកត់ត្រាកំហុសរបស់ខ្លួនពេលធ្វើលំហាត់ចូលក្នុងសៀវភៅ រួចយកសៀវភៅនោះមកអានរំលឹកឡើងវិញនៅថ្ងៃក្រោយ ដើម្បីកុំឱ្យធ្វើខុសដដែល។
Actor-Critic ជាទម្រង់នៃម៉ាស៊ីនរៀនសូត្រដែលបែងចែកភារកិច្ចជាពីរផ្នែកសំខាន់៖ ផ្នែក "Actor" ជាអ្នកសម្រេចចិត្តជ្រើសរើសសកម្មភាព ចំណែកផ្នែក "Critic" ជាអ្នកវាយតម្លៃថាតើសកម្មភាពនោះទទួលបានលទ្ធផលល្អកម្រិតណា រួចផ្តល់មតិកែលម្អត្រឡប់ទៅ Actor វិញដើម្បីកែប្រែសកម្មភាពបន្ទាប់។ ដូចជាតួសម្តែង (Actor) ដែលកំពុងសម្តែងនៅលើឆាក និងអ្នកដឹកនាំរឿង (Critic) ដែលអង្គុយមើលពីក្រោមឆាករួចប្រាប់ថាកន្លែងណាគួរកែតម្រូវដើម្បីឱ្យការសម្តែងកាន់តែល្អ។
Self-play ជាយន្តការហ្វឹកហាត់ដែលប្រព័ន្ធ AI រៀនសូត្រដោយការប្រកួតលេងជាមួយខ្លួនឯងរាប់លានដង ដោយមិនពឹងផ្អែកលើទិន្នន័យគំរូឬចំណេះដឹងពីមនុស្សឡើយ ដែលជួយឱ្យវាអាចរកឃើញយុទ្ធសាស្ត្រថ្មីៗប្លែកៗដែលមនុស្សមិនធ្លាប់បានដឹង។ ដូចជាអ្នកហាត់ក្បាច់គុនដែលតាំងកញ្ចក់នៅពីមុខខ្លួនឯង រួចស្រមៃប្រយុទ្ធជាមួយរូបរាងរបស់ខ្លួនក្នុងកញ្ចក់រហូតដល់ខ្លួនក្លាយជាកំពូលអ្នកចម្បាំងដែលគ្មានគូប្រៀប។

៦. ប្រធានបទពាក់ព័ន្ធ (Further Reading)

អត្ថបទដែលបានបោះពុម្ពនៅលើ KhmerResearch ដែលទាក់ទងនឹងប្រធានបទនេះ៖

ប្រធានបទ និងសំណួរស្រាវជ្រាវដែលទាក់ទងនឹងឯកសារនេះ ដែលអ្នកអាចស្វែងរកបន្ថែម៖