本篇主要讲马尔科夫决策过程,由定义概念,引入多笔=臂老虎机案例,进而到程序代码片段,最后引出马尔科夫性质、价值策略函数。 下面做一些阅读笔记。
章节开始给了神经网络定义:"神经网络"是一种由多个“层”组成的机器学习模型,这些层会执行矩阵--向量乘法,然后应用一个非线性“激活”函数。神经网络的矩阵是模型的可学习参数,通常称为神经网络的“权重”。接着用线图描述神经网络的具体流程及介绍了递归神经网络。n维向量一个维度nxm的矩阵,从而产生一个m维的向量。然后,该向量通过ReLU的流程。ReLU即整流线性单元(Rectified Linear Uint),就是一个标准的神经网络激活函数。这个ReLU在后面pyTorch中会有用到。
神经网络具体流程
之后以老虎机游戏举例(话说我没玩过老虎机,然后百度了解了下,有点类似摇杆图案一致获得奖励游戏) 。大意是通过探索积累数据,通过动作(α)与期望奖励Qk(α)经过轮次迭代强化,得出Q函数,用于表示我们采取特定动作的价值。为获得最高价值,引出了 贪婪策略,以概率与数理统计公式计算,通过随机选择强化学习,提高平均奖励,随着次数积累是一个上升趋势至较为平稳。随后讲了Softmax选择策略,理解下来是通过概率分布,选择概率最大的,其达到最高平均奖励收敛更快。
文中讲到深度学习框架TensorFlow、PyTorch等,导入numpy模块和torch演示PyTorch矩阵、自动微分、建模然后讲解代码片段,得到一个层次非常深的网络的数学优化结果。
神经网络在不参考任何先验状态的情况下选择给定状态下的最佳动作。我们只需向其提供当前状态,神经网络就会为每个可能的动作产生期望的奖励。在强化学习中,这种重要的特性称为马尔科夫性质(MArkov property)。我们把具有马尔科夫性质的游戏(或者任何控制任务)称为马尔科夫决策过程(MArkov Decision Process,MDP)。后面补充说了下价值和策略函数,和前面讲的贪婪策略和Softmax选择策略感觉有些重叠。
文中的数学公式对应的伪代码可以做一番熟悉了解;一些代码片段也是基于python语言写的,结合注释讲解也较好接收。文中有基于numpy的矩阵运算、求和、均值等的计算,matplotlib的图形绘制及学习框架PyTorch的使用。
小结:这章的重点是对神经网络流程的了解,理解对两种策略即贪婪策略及Softmax选择策略的思路方法。对马尔科夫性质的理解,结合案例对马尔科夫决策过程的了解。
|