Saya pikir OP bingung tentang AlphaGo dengan alpha-beta. Dalam alfa-beta, Anda memang akan menggunakan jaringan kebijakan untuk membantu pemangkasan, tetapi tidak di sini. Sekali lagi, tidak ada pemangkasan karena algoritma bergantung pada pencarian pohon Monte-Carlo (MCTS).
Siapa pun yang menganggap jawaban saya terlalu panjang dapat melewati bagian ringkasan, tempat saya menyatakan mengapa kedua jaringan tidak berlebihan.
Dalam contoh berikut, saya akan melakukan beberapa penyederhanaan untuk membuat ide-ide saya lebih mudah dimengerti.
Contoh:
Bayangkan Anda memiliki posisi di mana ada dua langkah hukum. Langkah pertama adalah jalan buntu bagi Anda, namun langkah kedua memberi Anda keuntungan menang.
- Langkah pertama: kehilangan paksa untuk Anda
- Langkah kedua: menang secara paksa untuk Anda
Jaringan evaluasi
Mari kita asumsikan jaringan evaluasi yang Google berikan kepada Anda adalah sempurna. Ia dapat mengevaluasi posisi daun apa pun dalam contoh kita dengan sempurna. Kami tidak akan mengubah jaringan nilai kami dalam contoh ini.
Untuk menyederhanakan contoh kami, anggap jaringan nilai kami memberikan:
- -1000 untuk setiap posisi daun yang merupakan kerugian bagi Anda
- +1000 untuk setiap posisi daun yang merupakan kemenangan untuk Anda
Jaringan kebijakan
Mari kita asumsikan Google memberi Anda dua jaringan kebijakan. Peluang yang dihasilkan untuk posisi kami adalah:
- Kebijakan 1: 0,9 untuk langkah 1 dan 0,1 untuk langkah 2
- Kebijakan 2: 0,2 untuk langkah 1 dan 0,8 untuk langkah 2.
Perhatikan bahwa jaringan kebijakan pertama kami memberikan probabilitas sebelumnya yang salah untuk contoh kami. Ini memberi 0,9 untuk langkah 1, yang merupakan langkah yang kalah. Ini bagus karena bahkan Google tidak bisa melatih jaringan kebijakan yang sempurna.
Bermain dengan jaringan kebijakan pertama
AlphaGo perlu membuat simulasi dengan Monte-Carlo, dan perlu memilih langkah 1 atau 2. Sekarang, AlphaGo menggambar variabel acak yang terdistribusi seragam, dan itu akan memilih:
- Pindahkan 1 jika angka acak <= 0,9
- Pindahkan 2 jika nomor acak> 0,9
Jadi AlphaGo jauh lebih mungkin untuk mengambil langkah yang hilang untuk disimulasikan (dalam simulasi pertama kami). Dalam simulasi pertama kami, kami juga akan menggunakan jaringan nilai untuk mendapatkan skor untuk simulasi. Di koran, itu:
Nilai ini akan menjadi -1000, karena simulasi ini akan menyebabkan kerugian.
Sekarang, AlphaGo perlu membuat simulasi kedua. Sekali lagi, langkah pertama akan lebih mungkin untuk diambil. Tetapi pada akhirnya, langkah kedua akan dipilih karena:
- Probabilitas kami sebelumnya untuk langkah kedua adalah 0,1, bukan nol
- AlphaGo didorong untuk mencoba gerakan yang belum banyak dieksplorasi. Dalam makalah, ini dilakukan oleh persamaan ini:
Perhatikan bahwa N
jumlah gerakan yang dicari untuk langkah tersebut dan ada di penyebutnya. Semakin besar kemungkinan langkah pertama kita dicari, semakin kecil u
fungsinya. Dengan demikian, probabilitas untuk memilih langkah kedua kami meningkat karena AlphaGo sebenarnya memilih langkah berdasarkan persamaan ini:
Ini adalah persamaan kunci . Silakan perhatikan dengan seksama:
- Ini memiliki istilah
P
untuk probabilitas sebelumnya (diberikan oleh jaringan kebijakan)
- Ini memiliki istilah
Q
untuk skor evaluasi (diberikan oleh jaringan nilai)
Sekarang, kita tahu langkah kedua kita pada akhirnya akan dipilih. Ketika hal itu terjadi, jaringan nilai memberi +1000. Ini akan meningkat Q
, yang membuat langkah kedua jauh lebih mungkin dipilih dalam simulasi selanjutnya.
Diberikan simulasi yang cukup, berapa kali gerakan kedua dipilih untuk simulasi harus lebih dari berapa kali gerakan pertama dipilih.
Akhirnya, langkah yang diputuskan AlphaGo adalah (dikutip dari kertas):
Setelah pencarian selesai, algoritme memilih langkah yang paling sering dikunjungi dari posisi root.
Bermain dengan jaringan kebijakan kedua
Jaringan kebijakan kedua kami akan membutuhkan lebih sedikit iterasi untuk memilih langkah 2 karena kemungkinan sebelumnya yang diberikan oleh jaringan kebijakan adalah yang benar.
Komentar
Semuanya di sini sangat mirip dengan Bayesian
analisis. Kami mulai dengan beberapa probabilitas sebelumnya (diberikan oleh jaringan kebijakan), kemudian kami menghasilkan data untuk memindahkan distribusi probabilitas (diberikan oleh jaringan nilai).
Ringkasan
- Jaringan kebijakan digunakan untuk menghasilkan probabilitas sebelumnya untuk memandu langkah apa yang harus dipilih oleh pencarian Monte-Carlo
- Value network digunakan untuk menghasilkan data untuk memvalidasi jaringan kebijakan. Jika jaringan kebijakan buruk, AlphaGo akan membutuhkan lebih banyak sumber daya komputasi untuk bertemu (jika pernah).
- Anda dapat menganggapnya seperti analisis Bayesian