ITエンジニアのための強化学習理論入門
動的計画法による厳密解の導出方法から始まり、ニューラルネットワークと強化学習を組み合わせた「DQN(Deep Q Network)」まで、「強化学習がなぜうまくいくのか」という基本原理を解説します。Pythonで実装したコードをGoogle Colaboratoryで実行しながら、それぞれのアルゴリズムがどのように機能するのかを「実感して理解する」ことが本書の一貫したテーマです。既存の機械学習ライブラリをブラックボックスとして用いるのではなく、具体的な動作原理が確認できるように、すべてのアルゴリズムを一から実装しています。「三目並べ」や「あるけあるけゲーム」など、シンプルな題材を用いて、エージェント同士の対戦による相互学習や、実行時の先読みによる性能向上など、より実践的なテクニックにも触れています。 第1章 強化学習のゴールと課題
1.1 強化学習の考え方
1.2 実行環境のセットアップ
1.4 バンディットアルゴリズム(応用編)
第2章 環境モデルを用いた強化学習の枠組み
2.2 エージェントの行動ポリシーと状態価値関数
第3章 行動ポリシーの改善アルゴリズム
3.3 より実践的な実装例
第4章 サンプリングデータを用いた学習法
4.2 TD(Temporal-Difference)法
第5章 ニューラルネットワークによる関数近似
5.1 ニューラルネットワークによる状態価値関数の計算