强化学习:函数逼近思想

本文探讨了强化学习中的函数近似思想,它改变了传统的数据表存储价值量的方式,转而采用函数来表征,通过有监督训练更新函数参数。函数近似解决了数据表形式在大规模问题中的内存和计算需求,提供了更好的泛化能力。文章介绍了函数近似的基本概念、引入原因、需要注意的问题,以及如何应用于on-policy prediction问题,包括确定价值函数的拟合模型、目标函数和参数更新算法。
摘要由CSDN通过智能技术生成

在开始这一篇内容之前,让我们先回顾一下前8篇所提及的内容。概括地说,前八篇所讲到的各种强化学习方法(DP、MC、TD等),有一个共同套路:即采用数据表存储每一个状态(state)的价值量(value),然后用不同的方式更新这些状态的value,直至收敛;最后根据每个状态下不同动作(action)对应的value,决定应该选择哪个状态,也就是确定了策略(policy)。尽管不同的方法之间有些小的差异,但是从本质上看是相似的。

但是从本篇开始提及的“函数近似”方法,却在本质上有了几个重大改变,也因此有了一些突出的特点。首先要说明的是:“函数近似”更像是一种思想,包含一类方法,从后面的章节就能看出来,基于这个思想,可以衍生出很多不同类型的方法。同时,该方法也正式把强化学习和机器学习联系起来,让我们可以互相借鉴两个领域的一些优势。

那么,函数近似这类方法,有什么改变?第一、对状态的价值量(value)的存储使用函数来表征,不再用数据表。第二、采用机器学习中流行的有监督训练方式来更新函数的固有参数,直至函数收敛。一旦函数训练完成,我们就自然得到了“状态x”--“状态价值量y”之间的映射关系,然后由状态价值决定策略就是顺理成章的事了。这两个改变也相应带来了显著的特点:第一、函数近似方法不需要大量的存储空间来存状态,因为函数的参数个数通常远远少于环境状态的数量(深度神经网络也许是个例外);第二、训练出来的函数具备一定的泛化特性(这也是机器学习方法的常见特性),可以应对部分可观测的环境,这对在实际问题中应用强化学习方法是个好事,因为很多时候我们是无法穷尽所有状态的。

下面开始正式介绍这一类方法。

1. 函数近似思想

1.1 什么是“函数近似”思想?

采用某种函数(线性函数或者非线性函数等等),基于小部分训练样本,来拟合价值函数的真值,比如 V_{\pi}(s)Q_{\pi}(s,a) ,使之在较大规模的测试样本上同样适用。这种思想的主要任务就是求该函数的最优参数。

1.2 为什么引进“函数近似”思想?

(1)数据表形式的价值函数有缺陷。

到目前为止,我们对强化学习问题的讨论,都局限于tabular的形式,也就是采用一张表来存储当前任务的价值函数。这张表,可以理解成python里面的字典结构,任务中所有的“状态/状态-动作”作为keys,每个“状态/状态-动作”的价值作为values。为什么这种数据表形式的强化学习会限制强化学习问题的规模呢?有如下两个原因:1、内存空间。当问题规模超大时,存储这么一张表需要的内存空间是巨大的。2、计算时间和所需数据量。当问题规模变大后,再想准确地计算这张表中的每个值,需要的时间开销是巨大的;同时,在很多实际任务中,有些状态和动作是永远不会出现的,这就导致价值函数很难准确计算。

上面这番文字提到的问题,简单总结后,就是四个字:泛化问题,即在小规模数据上获得的经验,怎么才能够在大规模的数据上也适用?

(2)参数方程形式的价值函数可以解决上述泛化问题

使用函数近似的思想,我们只需找到一组最优的参数,也就确定了最优的拟合函数。这个拟合函数既不需要存储大量的状态价值信息,也不要求看到整个状态-动作空间。只要它的参数包含了整个状态-动作空间背后的规律,那么它就可以在任何情况下都表现良好,也就是泛化能力好。

1.3 需要注意的问题

函数近似思想来源于传统的机器学习问题。将这种思想移植到强化学习问题中,自然会带来一些问题。这是因为强化学习中存在很多传统机器学习没有的特点,比如:非稳定性(包括状态分布和奖励分布的不稳定性),自举性(bootstrapping),目标的延后性。在将函数逼近思想融合到强化学习的过程中,这些问题都要考虑到并做出相应改进。

1.4 如何用函数近似思想解决on-policy prediction问题?

我们知道强化学习中存在on-policy和off-policy之分,也存在prediction和control问题之分。事实上,on-policy和off-policy的本质区别在于,更新某状态的价值量时,所使用的方法是沿用既定的策略(on-policy)还是使用新策略(off-policy)。而prediction和control问题的本质区别在于所估计的是状态价值函数V_{\pi}(s)还是动作价值函数 Q_{\pi}(s,a) 。其实这就是几种相似但又有少许不同的问题,我们本篇就从on-policy的prediction问题入手,看看函数近似思想怎么应用。

既然函数近似思想来源于传统机器学习,那么其主要步骤也跑不了机器学习那一套。在函数近似思想的定义中我们提到“这种思想的主要任务就是求该函数的参数”,如何求?分为以下三个步骤:

  • 确定价值函数的拟合模型
  • 确定待优化的目标函数
  • 确定参数的更新算法

这三个环节层层递进,初步给出我们解决on-policy prediction问题的框架,下面分别讨论。

 

2. 确定价值函数的拟合模型

2.1 价值函数的参数方程表示

在前面几章,价值函数都是采用数据表的形式存储,一个萝卜一个坑。从这一章开始,我们开始采用参数方程的形式表示价值函数,写法: \widehat{v}(s,\mathbf{w}) 。该写法表示当权重向量为 \mathbf{w} 时,状态s的价值近似值。比如: \widehat{v} 可以是关于状态特征的线性函数, \mathbf{w} 的每个元素表示每个特征的权重; \widehat{v} 还可以是通过神经网络建模得到的非线性函

  • 6
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值