---
title: 【ゼロから作るDeep Learning④】AlphaGo
tags: 
author: [京都大学人工知能研究会KaiRA](https://convert.docswell.com/user/kyoto-kaira)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/37KWMMRR7D.jpg?width=480
description: 【ゼロから作るDeep Learning④】AlphaGo by 京都大学人工知能研究会KaiRA
published: January 15, 26
canonical: https://convert.docswell.com/s/kyoto-kaira/ZJQ781-2026-01-15-212649
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/37KWMMRR7D.jpg)

2025 年後期輪読会 #13 (1/15)
ゼロから作るDeepLearning④強化学習
AlphaGo
京都大学 工学部 情報学科
宮前明生
0


# Page. 2

![Page Image](https://bcdn.docswell.com/page/LJ31YY8GE5.jpg)

アジェンダ
◼ 概要
◼ 方策ネットワークの教師あり学習
◼ 方策ネットワークの強化学習
◼ 価値ネットワークの強化学習
◼ 方策ネットワークと価値ネットワークによる探索
1


# Page. 3

![Page Image](https://bcdn.docswell.com/page/8JDX55MN7G.jpg)

アジェンダ
◼ 概要
◼ 方策ネットワークの教師あり学習
◼ 方策ネットワークの強化学習
◼ 価値ネットワークの強化学習
◼ 方策ネットワークと価値ネットワークによる探索
2


# Page. 4

![Page Image](https://bcdn.docswell.com/page/VEPPGGRNE8.jpg)

概要
AlphaGoまでの流れ
• 2006 モンテカルロ木探索が登場
• 2012
AlexNetが畳み込みニューラルネットワークで画像分類で高精度を出す
• 2016 モンテカルロ木探索に加えて、畳み込みニューラルネットワークを用い
たAlphaGoがネイチャーに載る
AlphaGoは欧州囲碁チャンピオンを5勝0敗で破る
（コンピューターが人間のプロ棋士を破るのは初めて）
AlphaGoの概要
①方策ネットワークを対戦記録から分類問題として学習
②方策ネットワーク同士を対戦させて強化学習
③自己対戦結果を用いて価値ネットワークを回帰問題として学習
④実際の対戦時は、2つのネットワークを用いて限られた時間でモンテカルロ木探
索で優れた手を見つける
3


# Page. 5

![Page Image](https://bcdn.docswell.com/page/27V266RY7Q.jpg)

アジェンダ
◼ 概要
◼ 方策ネットワークの教師あり学習
◼ 方策ネットワークの強化学習
◼ 価値ネットワークの強化学習
◼ 方策ネットワークと価値ネットワークによる探索
4


# Page. 6

![Page Image](https://bcdn.docswell.com/page/5JGRNNMW7L.jpg)

方策ネットワークの教師あり学習：方策ネットワークのアーキテクチャ
入力特徴量
• 19×19盤面から得られる48個の特徴マップ（自分の碁、
相手の碁、空地など）
• 自分の碁の特徴マップであれば、その位置に存在すれば
1なければ0となる01の19×19マップ
アーキテクチャ
•
13層の畳み込みニューラルネットワーク
•
フィルタ数はそれぞれ128, 256, 384で統一した3種類
で訓練
•
活性化関数は、基本ReLUで最後の層だけSoftMax
•
出力は、次の手の確率
層
ゼロパディング
カーネルサイズ
ストライド
1
23×23
5
1
2~12 21×21
3
1
19×19（そのまま） 1
1
13
↓48個の特徴平面
5


# Page. 7

![Page Image](https://bcdn.docswell.com/page/47QVQQRQEP.jpg)

方策ネットワークの教師あり学習：方策ネットワークの学習
学習データセット
• オンライン対戦サーバーKGSの6~9段のプレイヤーの局面
• 反射・回転の8通りでデータ拡張
学習手法
• 確率的勾配降下法で重み𝜎を更新（損失関数は対数尤度（クロスエ
ントロピー）、ミニバッチサイズは𝑚 = 16）
𝑚
𝜕 log 𝑝𝜎 𝑎𝑘 𝑠 𝑘
𝛼
Δ𝜎 = ෍
𝑚
𝜕𝜎
𝑘=1
• 𝛼の初期値は0.003で、80stepごとに1/2される
• 実際の学習は、3億4000万stepを50台のGPUで3週間で訓練した
6


# Page. 8

![Page Image](https://bcdn.docswell.com/page/KE4MNN8Y71.jpg)

アジェンダ
◼ 概要
◼ 方策ネットワークの教師あり学習
◼ 方策ネットワークの強化学習
◼ 価値ネットワークの強化学習
◼ 方策ネットワークと価値ネットワークによる探索
7


# Page. 9

![Page Image](https://bcdn.docswell.com/page/L718552NJG.jpg)

方策ネットワークの強化学習：自己対戦と強化学習
自己対戦
• 現在の方策ネットワークと過去の反復からランダムにサンプリングさ
れた方策ネットワークで対戦
学習手法
• 方策ネットワークのアーキテクチャは教師あり学習と同じ
• 対戦結果から終端報酬𝑧𝑡𝑖 = ±𝑟(𝑠𝑇𝑖 𝑖 )（勝利時は1、敗北時は-1）を得る
• ベースライン付き方策勾配法で重み𝜌を更新（ゼロつく④の9.3.2）
𝑛
𝑇𝑖
𝜕 log 𝑝𝜌 𝑎𝑡𝑖 𝑠𝑡𝑖
𝛼
Δ𝜌 = ෍ ෍
𝑛
𝜕𝜌
𝑧𝑡𝑖 − 𝑣 𝑠𝑡𝑖
𝑖=1 𝑡=1
• ベースライン𝑣 𝑠𝑡𝑖 は任意の関数を使えるが、価値ネットワーク𝑣𝜃 𝑠𝑡𝑖
を採用（価値ネットワークは後述）
• 実際の学習は、128のミニバッチを1万回繰り返した
8


# Page. 10

![Page Image](https://bcdn.docswell.com/page/G7WZ552M72.jpg)

アジェンダ
◼ 概要
ｓ
◼ 方策ネットワークの教師あり学習
◼ 方策ネットワークの強化学習
◼ 価値ネットワークの強化学習
◼ 方策ネットワークと価値ネットワークによる探索
9


# Page. 11

![Page Image](https://bcdn.docswell.com/page/4JZ1NNDME3.jpg)

価値ネットワークの強化学習：価値ネットワークのアーキテクチャ
入力特徴量
• 方策ネットワークの48個の特徴マップに、現在のプレイ
ヤーの石の色の特徴マップを加えた
アーキテクチャ
•
14層の畳み込みニューラルネットワーク
•
活性化関数は、基本ReLUで最後の層だけtanh
•
出力は、盤面の評価（勝利が1、敗北が-1）
層
ゼロパディング
カーネルサイズ
ストライド
1
23×23
5
1
2~12 21×21
3
1
13
19×19（そのまま） 1
1
14
ノードが256の全結合層
↓49個の特徴平面
10


# Page. 12

![Page Image](https://bcdn.docswell.com/page/YE6L88157V.jpg)

価値ネットワークの強化学習：価値ネットワークの学習
学習データセット
• 異なる3000万局面から方策ネットワークの出力確率でランダムに
自己対局を進め、終端報酬𝑧𝑡𝑖 = ±𝑟(𝑠𝑇𝑖 𝑖 )（勝利時は1、敗北時は-1）
を保存する
• 学習は1試合につき1局面にして、連続した局面を避けることで過学
習を防ぐ
学習手法
• 終端報酬𝑧𝑡𝑖 の回帰問題として2乗和誤差を損失関数に採用
• 確率的勾配降下法で重み𝜃を更新
𝑚
𝛼
Δ𝜃 = ෍ 𝑧 𝑘 − 𝑣𝜃 𝑠 𝑘
𝑚
𝑘=1
𝜕𝑣𝜃 𝑠 𝑘
𝜕𝜃
• 実際の学習は、32のミニバッチを5000万回繰り返し、50台のGPU
で1週間で訓練した
11


# Page. 13

![Page Image](https://bcdn.docswell.com/page/GE51994GJ4.jpg)

アジェンダ
◼ 概要
ｓ
◼ 方策ネットワークの教師あり学習
◼ 方策ネットワークの強化学習
◼ 価値ネットワークの強化学習
◼ 方策ネットワークと価値ネットワークによる探索
12


# Page. 14

![Page Image](https://bcdn.docswell.com/page/972122VDER.jpg)

方策ネットワークと価値ネットワークによる探索：ロールアウトポリシー
ロールアウトポリシーの目的
• 局面の評価に価値ネットワークの出力に加えて、簡単にシミュレー
ションした結果の勝率を参照したい
• 実際の対局の限られた時間でシミュレーションをするには、計算量
の少ない簡易的なモデルであるロールアウトポリシーを採用する
ロールアウトポリシーのアーキテクチャ
• ある手を打つかの確率を表すロジスティック回帰
1
𝑃 𝑦=1 𝑥 =
⊤
1 + 𝑒 − 𝑤 𝑥+𝑏
• 特徴量𝑥は「直前の相手の手に対応する手か？」などの109747項目
の2値変数
• 1秒間に1000回プレイアウト（1試合のシミュレーション）が可能
↓109747項目の2値特徴量
13


# Page. 15

![Page Image](https://bcdn.docswell.com/page/DJYZYY3MEM.jpg)

方策ネットワークと価値ネットワークによる探索：探索ノード
探索ノード
• モンテカルロ木探索では、グラフ理
論における木の構造で探索する
• 最上位のノードをルートノード
• 最下位のノードをリーフノード
• 自ノードにつながる下位のノー ドを
子ノード
• 自ノードにつながる上位のノードを
親ノード
14


# Page. 16

![Page Image](https://bcdn.docswell.com/page/V7N3PPV378.jpg)

方策ネットワークと価値ネットワークによる探索：モンテカルロ木探索
現在の局面をルートノードとして、このノードだけの木を作成して、以下のステップを繰り返しノードを
追加していく。
1. ルートノードから探索評価値𝑄(𝑠, 𝑎) + 𝑢(𝑠, 𝑎)が最大となる子ノードをたどって木を降りる(図a)
2. 未到達のノード𝑠𝐿 に到達したら、これを新ノードとして展開する
新ノードの入力から方策ネットワークの出力𝑃(𝑠, 𝑎)を得る(図b)
3. 新ノードの入力から価値ネットワークの出力𝑣𝜃 𝑠𝐿 を得る
新ノードからロールアウトポリシーでシミュレーションを行い勝率𝑧𝐿 を得る(図c)
4. 3.から新ノードの𝑄(𝑠, 𝑎)を求め、親ノードを辿りながら各ノードの𝑄(𝑠, 𝑎)を更新する(図d)
5. ルートノードに戻ったら1.に戻る
15


# Page. 17

![Page Image](https://bcdn.docswell.com/page/YJ99336PJ3.jpg)

方策ネットワークと価値ネットワークによる探索：モンテカルロ木探索
モンテカルロ木探索の探索評価値
探索評価値= 𝑄(𝑠, 𝑎) + 𝑢(𝑠, 𝑎)
• 𝑄(𝑠, 𝑎)は行動価値、𝑢(𝑠, 𝑎)は探索ボーナス
𝑢 𝑠, 𝑎 = 𝑐puct 𝑃 𝑠, 𝑎
σ𝑏 𝑁 𝑠,𝑏
1+𝑁 𝑠,𝑎
• 𝑃 𝑠, 𝑎 は方策ネットワーク出力、𝑁 𝑠, 𝑎 はノード𝑠のシミュレーションの訪問回数
新ノード𝑠𝐿 の状態価値関数
𝑉 𝑠𝐿 = 1 − 𝜆 𝑣𝜃 𝑠𝐿 + 𝜆 𝑧𝐿
• 𝑣𝜃 𝑠𝐿 は価値ネットワーク出力、 𝑧𝐿 はロールアウトポリシーによるシミュレーション勝率
更新
1
σ𝑛𝑖=1 𝟏 𝑠, 𝑎, 𝑖
𝑁 𝑠,𝑎
= σ𝑛𝑖=1 𝟏 𝑠, 𝑎, 𝑖
𝑄 𝑠, 𝑎 =
𝑁 𝑠, 𝑎
𝑉 𝑠𝐿𝑖
• 𝟏 𝑠, 𝑎, 𝑖 は𝑖回目のシミュレーションで状態𝑠から行動𝑎を選択したか
16


