11. 強化学習
Shota Imai | The University of Tokyo
人工知能の部分技術である機械学習の中で,特に意思決定則(方策)を学習する手法
意思決定の主体となるエージェントが,ある環境(タスク)の中で目標を達成するため
にどのように意思決定をして行動すればよいのかを定式化して学習
意思決定はエージェントが環境から知覚する状態をもとに行われ,意思決定により環境
に対して行った行動から成功信号となる報酬と次の状態を知覚して方策を学習
11
12. 強化学習の応用例
Shota Imai | The University of Tokyo
12
ロボットの制御(松尾研)
(https://www.youtube.com/watch?v=dTRDPh7PFo4)
ゲームで世界最強のプレイヤーに勝利
AlphaGo〜AlphaZero[Silver+]
良いニューラルネットワークの構造を探索
Neural Architecture Search[Zoph+]
データセンターの冷却電力を効率化
(Google DeepMind https://deepmind.com/blog/article/deepmind-ai-
reduces-google-data-centre-cooling-bill-40)
Youtubeのコンテンツ推薦
の最適化[Chen+]
良い性質を持つ化学物質の設計
MolGAN[Cao+]
https://www.bbc.com/news/technology-35785875
63. Prioritized Experience Replay
優先度を付ける場合のバイアスへの対処
優先度を付けて経験をサンプリングすることで,経験データの分布に偏りを与えること
によるバイアスが発生する
このバイアスにより,学習の収束解に変化が生じてしまう
→バイアスへの対処として重点サンプリング(Importance Sampling)の導入
具体的には,損失に対して以下のように計算する重み係数をかける
𝑤𝑖 =
𝑁・𝑃 𝑖
−𝛽
max
j
wj
- ここで,𝑁はリプレイバッファの大きさ(経験の保存量),𝛽はハイパーパラメータで, 𝛽 = 1
で本来の意味でのバイアス修正が可能だが,学習が進むにつれて0〜1まで補正量を増やす(ア
ニーリング)
- 学習の安定性のため,最大の重みmax
j
wjで正規化している
Shota Imai | The University of Tokyo
63
64. DQN, Double DQNとの比較
DQNやDDQNとAtari57ゲームのスコア
で比較
※rank-basedはTD誤差の大きさの順位で優先度付けを行ったもの
proportionalが先ほどまでで解説したもの
全体的に,Prioritizedのproportional
が高パフォーマンス
Shota Imai | The University of Tokyo
64
81. 分散型深層強化学習
(Distributed Deep Reinforcement Learning)
ここまでで紹介したアルゴリズムは,1つの深層ニューラルネットワークに一つの
エージェントが対応し,一つの環境から経験を集める方式だった
しかし,深層学習で使えるCPUやGPU等の計算資源は「その気になれば」複数用意
(CPUなら一台のPCでも複数)でき,これら全ての計算資源を使えばさらに学習を
効率化できそう
深層強化学習でも各機構を複数計算機に分散させて学習を効率化
→分散型深層強化学習(Distributed Deep Reinforcement Learning)
Shota Imai | The University of Tokyo
81
分散型深層強化学習のアーキテクチャの一例
※実際にはCPUの数が数百に達することも
82. 並列の複数環境を探索して経験を集めて深層強化学習
Gorila(General Reinforcement Learning Architecture)
Shota Imai | The University of Tokyo
82
DQNの登場後,すぐに考案された最初期の分散型深層強化学習アーキテクチャ
DQNを拡張し,並列環境から経験を集めるActorと,経験から勾配を計算するLearner,
パラメータと勾配の情報を保存するParameter Serverに分けて学習する
分散型アーキテクチャにした手法
ざっくりというと,コンピュータ内の計算資源をフルに使い,学習を行う(損失を計算
する)部分と並列で環境から経験を集める部分を分け,それぞれ複数並列実行したら早
く学習できる,という発想
現在は,もっと計算効率のよい後述の手法が主流
通常のDQN
Gorilaの分散型アーキテクチャ
122. 内発的報酬の大きさを使い分けて方策を学習し探索と活用の割合を調整
Never Give Up(NGU)
Agent57の前身となったアルゴリズム
エピソード内で新規性を判定するモジュール「episodic novelty module 」とエピソー
ドをまたいで新規性を判定するモジュール「life-long novelty module」を導入し、各モ
ジュールで生成した報酬の合計を最終的な内発的報酬とする
内発的報酬の係数βを複数用意し、各βをかけた内発的報酬と外発的報酬の和で学習さ
れた方策セットを用意することで、探索と活用の割合を調節
122
Shota Imai | The University of Tokyo