机器学习(周志华) 第十六章强化学习

关于周志华老师的《机器学习》这本书的学习笔记
记录学习过程
本博客记录Chapter16

1 任务与奖赏

强化学习(Reinforcement Learning)是机器学习的重要分支。强化学习是指从环境状态从动作映射的学习,以使动作从环境中获得的累计奖赏值最大。与监督学习不同,监督学习通过正例、反例来训练模型采用何种行为,而强化学习通过探索试错的策略发现最优行为策略。

强化学习的基本结构如下所示:

在这里插入图片描述

该模型共包括五个重要组成部分:

  • 智能主体(agent):智能主体指的是驻留在某一环境下,能持续自主地发挥作用,具有驻留性、反应性、社会性和主动性等特征的计算实体。它能根据外界环境的变化,自主地对自己的行为和状态进行调整,具备对外界刺激做出相应的反应的能力,并能积累或学习经验和知识,修改自己的行为决策以适应新环境。
  • 环境(environment):环境指系统中智能主体以外的部分,能够向智能主体提供反馈状态和奖励,并按照所规定的规律发生相应的变化。
  • 状态(state):状态指智能主体所处的当前状态情况。
  • 行为(action):行为指智能主体在当前所处状态下所做出的动作行为。
  • 奖惩反馈(reward):奖惩反馈是环境给予智能体所做行为的反馈。若智能体做出的行为得到换将正的奖赏,则强化信号;反之则减弱信号。

针对智能体选择行为的方式,强化学习方法可以分为基于价值的方法基于概率的方法。基于价值的方法的输出值是下一步要采取的各种动作的价值,根据价值最高的原则选择动作,经常应用于不连续的动作行为,常见的算法包括Q learning,Sarsa算法;基于概率的方法能通过感官分析所处的环境,输出下一步要采取的各种动作的概率,根据概率选择行动,经常应用于连续的动作行为,常见的算法包括Policy Gradients算法等。

2 K-摇臂赌博机

与一般监督学习不同,强化学习任务的最终奖赏是在多步动作之后才能观察到,这里我们不妨先考虑比较简单的情形:最大化单步奖赏,即仅考虑一步操作。

欲最大化单步奖赏需考虑两个方面:

  • 一是需知道每个动作带来的奖赏
  • 二是要执行奖赏最大的动作。

若每个动作对应的奖赏是一个确定值,那么尝试一遍所有的动作便能找出奖赏最大的动作。然而,更一般的情形是,一个动作的奖赏值是来自于一个概率分布,仅通过一次尝试并不能确切地获得平均奖赏值。

实际上,单步强化学习任务对应了一个理论模型,即 “K-摇臂赌博机”:K-摇臂赌博机有K个摇臂,赌徒在投入一个硬币后可选择按下其中1个摇臂,每个摇臂以一定的概率吐出硬币。但这个概 率赌徒并不知道。赌徒的目标是通过一定的策略最大化自己的奖赏,即获得最多的硬币。

强化学习所面临的"探索-利用窘境" (ExplorationExploitation dilemma)。 显然,欲累积奖赏最大,则必须在探索与利用之间达成较好的折中。

2.1 ϵ \epsilon ϵ-贪心

ϵ \epsilon ϵ-贪心法基于一个概率来对探索和利用进行折中:每次尝试时,以 ϵ \epsilon ϵ的概率进行探索,即以均匀概率随机选取一个摇臂;以 1- ϵ \epsilon ϵ的概率进行利用,即选择当前平均奖赏最高的摇臂(若有多个,则随机选取一个)。

在这里插入图片描述

2.2 Softmax

Sotfmax算法基于当前已知的摇臂平均奖赏来对探索和利用进行折中。若各摇臂的平均奖赏相当,则选取各摇臂的概率也相当;若某些摇臂的平均奖赏明显高于其他摇臂,则它们被选取的概率也明显更高。

Sotfmax 算法中摇臂概率的分配是基于Boltzmann 分布:
P ( k ) = e Q ( k ) τ ∑ i = 1 K e Q ( i ) τ P(k)=\frac{e^{\frac{Q(k)}{\tau}}}{\sum_{i=1}^K e^{\frac{Q(i)}{\tau}}} P(k)=i=1KeτQ(i)eτQ(k)
其中, Q ( i ) Q(i) Q(i)记录当前摇臂的平均奖赏; τ > 0 \tau>0 τ>0 称为"温度" , τ \tau τ越小则平均奖赏高的摇臂被选取的概率越高; τ \tau τ趋于0时,Softmax 将趋于"仅利用"; τ \tau τ趋于无穷大时,Softmax 则将趋于"仅探索"。

在这里插入图片描述

3 有模型学习

考虑多步强化学习任务,暂且先假定任务对应的马尔可夫决策过程四元组 E = ( X , A , P , R ) E=(X,A,P,R) E=(X,A,P,R) 均为己知。这样的情形称为 “模型已知”,即机器对环境进行了建模,能在机器内部模拟出与环境相同或近似的状况。在己知模型的环境中学习称为"有模型学习" 。

理想的策略为最大化累计奖赏:
π ∗ = arg ⁡ max ⁡ π ∑ x ∈ X V π ( x ) \pi^*=\mathop{\arg \max}_\pi \sum_{x\in X}V^{\pi}(x) π=argmaxπxXVπ(x)

4 免模型学习

在现实的强化学习任务中,环境的转移概率、奖赏函数往往很难得知,甚至很难知道环境中共有多少状态。若学习算法不依赖于环境建模,则称为 “免模型学习” (model-free learning),这比有模型学习要难得多。

4.1 蒙特卡洛强化学习

受K摇臂赌博机的启发,一种直接的策略评估替代方法是多次"采样",然后求取平均累积奖赏来作为期望累积奖赏的近似,这称为蒙特卡罗强化学习。由于采样必须为有限次数,因此该方法适合于使用T步累积奖赏的强化学习任务。

在这里插入图片描述

4.2 时序差分学习

时序差分 (Temporal Difference,简称TD) 学习结合了动态规划与蒙特卡罗方法的思想,能做到更高效的免模型学习。

蒙特卡洛方法相当于是“批处理”,实际中可以使用增量方法更新值函数。

在这里插入图片描述

在这里插入图片描述

5 值函数近似

现实情况,我们面对的状态空间往往是连续的,有无穷多个状态。一种做法是对状态空间离散化,另一种方法时直接对连续状态空间地值函数来进行学习。

假定状态空间为 n n n维实数空间 X = R n X=\mathbb R^n X=Rn,将值函数表达为状态的线性函数:
V θ ( x ) = θ T x V_\theta(x)=\theta^Tx Vθ(x)=θTx
值函数的求解被称为值函数近似

利用最小二乘法和梯度下降法,求解得到单个样本的更新规则:
θ = θ + α ( V π ( x ) − V θ ( x ) ) x \theta = \theta+\alpha(V^{\pi}(x)-V_\theta(x))x θ=θ+α(Vπ(x)Vθ(x))x

6 模仿学习

6.1 直接模仿学习

假定我们获得了一批人类专家的决策轨迹数据 { τ 1 , τ 2 , ⋯   , τ m } \{\tau_1,\tau_2,\cdots,\tau_m \} {τ1,τ2,,τm}, 每条轨迹包含状态和动作序列
τ i = < s 1 i , α 1 i , s 2 i , α 2 i , ⋯   , s n i + 1 i > \tau_i = \big< s_1^i,\alpha_1^i,s_2^i,\alpha_2^i,\cdots,s_{n_i+1}^i \big> τi=s1i,α1i,s2i,α2i,,sni+1i
其中 τ i \tau_i τi为第 i i i条轨迹中的转移次数。有了这样的数据,就相当于告际机器在什么状态下应选择什么动作,于是可利用监督学习来学得符合人类专家决策轨迹数据的策略。

6.2 逆强化学习

逆强化学习的基本思想是:欲使机器做出与范例一致的行为,等价于在某个奖赏函数的环境中求解最优策略,该最优策略所产生的轨迹与范例数据一致。换言之,我们要寻找某种奖赏函数使得范例数据是最优的,然后即可使用这个奖赏函数来训练强化学习策略。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值