本书的主要内容
强化学习在机器学习中的难度不低,它需要很多方面的知识辅助,同时自身也已经形成了一个庞大的体系。本书不是一本科普读物,想要阅读本书需要具备一定的基础知识,如微积分、线性代数等。部分章节也会梳理这些基础知识,以确保读者掌握这些知识的核心思想。本书各章节的核心内容如下。
第一部分主要介绍与强化学习有关的基础知识,例如数学基础、对应的程序开发基础、强化学习的基本计算方法等。
第1章已经介绍了强化学习的基本概念,相信读者对强化学习的目标、特点已经有了一定的了解。
第2章介绍相关的数学知识,如线性代数、概率论、重要性采样、信息论等,帮助读者快速回顾即将用到的数学知识。
第3章介绍强化学习中会用到的优化知识,主要介绍常见的梯度下降法(Gradient Descent)、共轭梯度法和自然梯度法,这三种方法将出现在后面的算法中。
第4章介绍书中代码使用的计算框架TensorFlow。TensorFlow 是一款使用十分广泛的框架,很多强化学习的算法选择使用它进行实现,因此我们有必要学习它。本章将简单介绍它的使用方法和一些基本原理,熟悉TensorFlow 的读者可以跳过本章。
第5章介绍本书使用的另一个框架Gym 及在此框架上实现的算法集合Baselines。Gym 集成了大量的强化学习仿真环境,Baselines 则基于TensorFlow 和Gym 实现了一些经典的算法。本章将简单介绍这两个框架的基础知识。
第6章介绍强化学习的基础知识。例如马尔可夫决策过程(Markov Decision Process),以及在简单问题上的两种经典动态规划求解法:策略迭代法和价值迭代法。这些方法是强化学习算法的基石,绝大多数强化学习方法都是根据这些知识演变来的。
第二部分介绍以最优值函数为思想的一系列算法,其中的代表算法为Deep Q Network和Rainbow。
第7章介绍蒙特卡罗(Monte-Carlo)和时序差分(Temporal-Difference)两种求解Model-free 问题的方法,并介绍Deep Q Network 算法的细节。
第8章介绍Deep Q-Learning 的一些改进算法,如Priority Replay Buffer、Duel Network等,并介绍改进的集成算法Rainbow。
第三部分介绍以策略梯度(Policy Gradient)为思想的一系列算法,其中的代表算法为Actor-Critic。
第9章介绍策略梯度法和Actor-Critic 算法的原理,同时介绍A2C 算法的实现细节。
第10章介绍使策略单调提升的算法,其中的代表为Trust Region Policy Optimization(TRPO)算法。
第11章介绍高样本使用率的策略梯度算法,其中的代表算法为ACER 算法和确定策略梯度法(Deterministic Policy Gradient)。
第四部分介绍强化学习其他方面的内容。
第12章介绍回报稀疏情况下的一些求解方法,其中包括基于层次的强化学习和基于课程学习(Curriculum Learning)思想的方法。
第13 章介绍模型已知的一些算法,如基于蒙特卡罗树搜索(Monte Carlo Tree Search,MCTS)的强化学习算法和iLQR 算法的原理。
第五部分介绍反向强化学习的基础知识。
第14章介绍反向强化学习的基础,以及基本的求解方法。
第15 章介绍最大熵反向强化学习(Max Entropy Inverse Reinforcement Learning)和生成对抗模仿学习(Generative Adversarial Imitation Learning)算法的内容。
由于本人才疏学浅,行文间难免有所纰漏,望各位读者多多包涵,不吝赐教。
作者