ISBN 9784798159928
現場で使える!Python深層強化学習入門 強化学習と深層学習による探索と制御
概要
DQN・Actor-Criticを軸に深層強化学習を実装まで体系的に習得する
想定読者
機械学習・深層学習の基礎知識を持ち、強化学習を実務・研究に応用したい理工学生・エンジニア
こんな人には向いていない
- NumPyや勾配降下法など機械学習の基礎をまだ学んでいない入門者には前提知識のハードルが高く、Part 1の理論展開についていけない可能性がある
- PPO・SAC・TD3など2019年以降に主流となったアルゴリズムの実装を深く追いたい読者には扱われているDQN/Actor-Criticが旧世代寄りで物足りない
- ゲームAIや金融取引など特定ドメインに特化した応用事例を求める読者には汎用シミュレータ・組合せ最適化・系列生成という本書の応用軸が合わない場合がある
この本で身につくこと
- Q学習・方策勾配法・Actor-Critic法の数理的背景とPythonコードの対応関係を把握できる
- 倒立振子制御をDQNとActor-Critic法で実装するエンドツーエンドのハンズオン経験を積める
- ヒューマノイドシミュレータの2足歩行制御という複雑な連続動作制御への強化学習適用手順を理解できる
- 巡回セールスマン問題・ルービックキューブ解探索など組合せ最適化問題への強化学習転用アプローチを学べる
- SeqGANによる文章生成とENASによるニューラルネットワークアーキテクチャ探索の仕組みを把握できる
ハイライト(外部からの言及)
AIサービスのみならずロボティクス分野でもその応用が期待されています。本書は、AI開発に携わる第一線の著者陣が深層強化学習の開発手法について書き下ろした注目の1冊です。 — 出典
本書の応用領域の広さ(AIサービス+ロボティクス)と執筆体制の実務性を端的に示す一節
全体を通して、行動の制御を担うエージェントのモデル化と、方策ベースの強化学習によるエージェントの学習法について学ぶことができます。 — 出典
理論と実装両面で「エージェント設計」を軸に据えた本書の主軸が最も明確に表れている箇所
章立て
第1章 強化学習の有用性
機械学習全体における強化学習の位置付けを把握する導入章。機械学習経験者は短時間で通読可能
第2章 強化学習のアルゴリズム
マルコフ決定過程・ベルマン方程式・モデルフリー制御を扱う理論の核心。ここの理解度が後半の実装定着率を直接左右する
第3章 深層学習による特徴抽出
CNN・RNN・LSTMの概要解説。深層学習を別書で習得済みであれば確認読みで十分
第4章 深層強化学習の実装
倒立振子制御をDQN・Actor-Criticで実装するメインハンズオン章。本書の核心
第5章 連続制御問題への応用
ヒューマノイド2足歩行制御という複雑な連続動作制御事例。ロボティクス・制御工学志向の読者に直結
第6章 組合せ最適化への応用
TSP・ルービックキューブへの適用。強化学習を離散最適化問題に転用するアプローチを具体例で体感できる
第7章 系列データ生成への応用
SeqGAN・ENASという研究寄りのテーマ。NLPや自動ML(AutoML)の文脈で参照される発展的章
関連記事 / 参考情報
- 【データ分析の必読10冊+差をつける10冊+100冊超】データサイエンス、データ分析、機械学習関連の本 — 1,600 likes超のML・データサイエンス推薦書まとめ。深層強化学習枠として本書が収録されている
学習のヒント
- Part 1はChapter 2(強化学習アルゴリズム)とChapter 3(深層学習基礎)の理解度がその後の実装定着率を左右する。Chapter 4のコードに入る前にベルマン方程式とCNN/RNNの順伝播を自分の言葉で説明できる状態にしておくと回収が早い
- Part 2の応用3題(連続制御・組合せ最適化・系列生成)は相互依存が低く独立して読める。自分の研究・業務に近い章から先に着手し、モチベーションを維持しながら基礎編に戻る使い方も有効
- 付録の環境構築(Colaboratory/Docker)は読み始める前に完了させると、Chapter 4以降のコードを手元で動かしながら読む体験ができる。特にGPU環境の確認は第5章以降の学習時間に直結する
- 2019年刊行のため実装例はTensorFlow/Keras等の当時バージョンに依存する箇所がある。環境再現で詰まった場合はライブラリのChangelog確認と公開リポジトリのIssueを併用することを推奨する
前提知識
- PythonによるNumPy・行列演算の基本操作
- ニューラルネットワークの順伝播・逆伝播と勾配降下法の概要理解
- 確率・統計の基礎(期待値・条件付き確率)および微分の基礎知識
次に読む本
Reinforcement Learning: An Introduction(Sutton & Barto 第2版)
本書で実装ベースに習得したRL理論をより厳密に体系化したい場合の定番。ベルマン方程式から関数近似まで数学的に網羅されており、本書の「なぜこのアルゴリズムか」を埋める副読書として機能する
深層学習(機械学習プロフェッショナルシリーズ)
本書Part 1で前提とするCNN・RNN・LSTMの数理的背景をさらに深掘りしたい場合に適している。本書の理論説明が薄いと感じた読者が次に手を伸ばす一冊
出版社による内容紹介
注目の最新AI技術!深層強化学習の開発手法がわかる! 第一線で活躍する著者陣の書下ろしによる待望の1冊! 【本書の目的】 AlphaGo(アルファ碁)でも利用されている深層強化学習。 AIサービスのみならずロボティクス分野でもその応用が期待されています。 本書は、AI開発に携わる第一線の著者陣が深層強化学習の開発手法について書き下ろした注目の1冊です。 【本書の特徴】 第1部では、まず、深層強化学習の概要について説明します。 次いで、強化学習の基礎(Q学習、方策勾配法、Actor-Critic法)と深層学習の基礎(CNN、RNN、LSTM)を解説します。 さらに、簡単な例題として倒立振子制御を取り上げ、DQNとActor-Critic法による実装例を紹介します。 第2部では、具体的な応用例として3つのアプローチを実装込みで解説します。 1つ目は、連続動作制御です。ヒューマノイドシミュレータの2足歩行制御を試みます。 2つ目は、パズル問題の解法です。巡回セールスマン問題(TSP)やルービックキューブの解探索について説明します。 3つ目は、系列データ生成です。文書生成(SeqGAN)やニューラルネットワークのアーキテクチャ探索(ENAS)を解説します。 全体を通して、行動の制御を担うエージェントのモデル化と、方策ベースの強化学習によるエージェントの学習法について学ぶことができます。 【読者が得られること】 深層強化学習による開発手法を学ぶことができます。 【対象読者】 深層強化学習を学びたい理工学生・エンジニア ■Part 1 基礎編 CHAPTER 1 強化学習の有用性 1.1 機械学習の分類 1.2 強化学習でできること 1.3 深層強化学習とは CHAPTER 2 強化学習のアルゴリズム 2.1 強化学習の基本概念 2.2 マルコフ決定過程とベルマン方程式 2.3 ベルマン方程式の解法 2.4 モデルフリーな制御 CHAPTER 3 深層学習による特徴抽出 3.1 深層学習 3.2 畳み込みニューラルネットワーク(CNN) 3.3 再帰型ニューラルネットワーク(RNN) CHAPTER 4 深層強化学習の実装 4.1 深層強化学習の発展 4.2 行動価値関数のネットワーク表現 4.3 方策関数のネットワーク表現 ■Part 2 応用編 CHAPTER 5 連続制御問題への応用 5.1 方策勾配法による連続制御 5.2 学習アルゴリズムと方策モデル 5.3 連続動作シミュレータ 5.4 アルゴリズムの実装 5.5 学習結果と予測制御 CHAPTER 6 組合せ最適化への応用 6.1 組合せ最適化への応用について 6.2 巡回セールスマン問題 6.3 ルービックキューブ問題 6.4 まとめ CHAPTER 7 系列データ生成への応用 7.1 SeqGANによる文章生成 7.2 ネットワークアーキテクチャの探索 APPENDIX 開発環境の構築 AP1 ColaboratoryによるGPUの環境構築 AP2 DockerによるWindowsでの環境構築
この本がどの学習段階で役立つかは、 関連する ロードマップ から確認できます。