深度强化学习算法与实践:基于PyTorch的实现
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.4 深度强化学习基本概念

既然深度强化学习是强化学习的一种,很多强化学习的概念都能套用在深度强化学习上。与此同时,某些概念是深度强化学习特有的,比如神经网络的概念。深度强化学习引入了神经网络来描述强化学习中的一些对象,比如策略函数和值函数。因此对应的名词也同样发生了改变。由于足够深度的神经网络能够拟合任意函数,因此策略函数和值函数也可以被神经网络所拟合。对应的模型就被称为策略网络(Policy Network)和价值网络(Value Network)。同时,由于使用了深度学习模型,深度学习常用的一些优化算法,比如梯度随机下降(Stochastic Gradient Descent, SGD)算法也适用于这些网络。特别是策略网络,由于网络最终输出的是智能体采取不同策略的概率,最后算法需要达到的目的是通过梯度优化,让最优的策略输出概率尽可能大,因此对应的算法被称为策略梯度(Policy Gradient)。

在深度学习中,根据模型拟合的数据类型可以把模型分为分类(Categorical)模型和回归(Regression)模型两种。同样,深度强化学习的模型根据对应的输出也可以分为离散的和连续的两种。对应的策略网络和价值网络的输出也有离散的和连续的两种,我们需要根据实际问题来动态选择网络的输出层是离散的还是连续的。典型的离散的强化学习模型可以应用的环境包括经典的车杆(Cart-Pole)环境,对应的控制是离散的左右方向,通过制定每一时刻车的运动方向来稳定车上的杆子。典型的连续强化学习模型应用的环境包括机械臂的控制等,对应的机械臂的参数能够动态地在一定范围内变化,这时就需要深度学习模型能够处理连续的值。

除了以上概念,深度强化学习和传统强化学习最大的区别还是在于各种深度学习模型的引入。由于结合了深度学习,强化学习已经不但可以处理一些简单的输入数值,更重要的是,强化学习能够处理复杂的数据,比如图像和文本等。通过结合对应的深度学习模型(比如深度卷积网络),深度强化学习能够从复杂的输入(这些输入对应智能体的状态)提取对应状态的特征,并且根据状态的特征来做出合理的决策(策略网络),或是估计当前状态的价值(价值网络)。另外一点就是,由于深度学习使用的模型具有较大的参数,可以通过这些模型来更加精准地拟合对应的函数,这样又大大提高了算法的效率。通过在强化学习中引入深度学习,可以说同时扩展了强化学习算法的应用边界和效率。