机器学习中强化学习的一些知识
作者:互联网
16.1 给出了强化学习的一个简单图示.强化学习任务通常用马尔可夫决 策过程 (Markov Decision Process,简称 MDP)来描述:机器处于环境 中,状 态空间为 ,其中每个状态 EX 是机器感知到的环境的描述,如在种瓜任务 上这就是当前瓜苗长势的描述;机器能采取的动作构成了动作空间 如种瓜 过程中有浇水、施不同的肥、使用不同的农药等多种可供选择的动作;若某个 动作 αεA 作用在当前状态 上,则潜在的转移函数 将使得环境从当前状态 按某种概率转移到另 个状态,如瓜苗状态为缺水,若选择动作浇水,则瓜苗长 势会发生变化,瓜苗有一定的概率恢复健康?也有一定的概率无法恢复;在转移 到另一个状态的同时,环境会根据潜在的"桨黄" (rew d) 函数 反馈给机器 一个奖赏,如保持瓜苗健康对应奖赏 +1 ,瓜茵凋零对应奖赏一10 ,最终种出了 好瓜对应奖赏 +100. 综合起来,强化学习任务对应了四元组 = (X,A,P,R), 其中 P:XxAxX 指定了状态转移概率 R:XxAxX 指定了奖 赏;在有的应用中,奖赏函数可能仅与状态转移有关,即 R:XxX -+R
需注意"机器"与"环境"的界限,例如在种西瓜任务中,环境是因瓜生 长的自然世界;在~棋对弈中,环境是棋盘与对于;在机器人控制中,环境是机 器人的躯体与物理世界.总之,在环境中状态的转移、奖赏的返回是不受机器 控制的,机器只能通过选择要执行的动作来影响环境,也只能通过观察转移后 的状态和返回的奖赏来感知环境
策略的优劣取决于长期执行这一策略后得到的累积奖赏,例如某个策略使 得瓜苗枯死,它的累积奖赏会很小,另一个策略种出了好瓜,它的累积奖赏会很大.在强化学习任务中,学习的目的就是要找到能使长期累积奖赏最大化的策 略.长期累积奖赏有多种计算方式?常用的有 "T 步累积奖赏" lE叫[~2汇二乙L1Tηtl l "γ 折扣累积奖赏" lE叫[2乙;二芮zγf什仇rt忡叫十 示对所有随机变量求期望.
读者也许己经感觉到强化学习与监督学习的差别若将这里的"状态"对 应为监督学习中的"示例"、 "动作"对应为"标记",则可看出,强化学习 中的"策略"实际上就相当于监督学习中的"分类器" (当动作是离散的)或 "国归器" (当动作是连续的 模型的形式并无差别.但不同的是,在强化学 习中并没有监督学习中的有标记样本(即"示例·标记"对) ,换言之,没有人直 接告诉机器在什么状态下应该做什么动作,只有等到最终结果揭晓,才能通过 "反思"之前的动作是否正确来进行学习.因此,强化学习在某种意义上可看 作具有"延迟标记信息"的监督学习问题.
与一般监督学习不同,强化学习任务的最终奖赏是在多步动作之后才能观 察到,这里我们不妨先考虑比较简单的情形:最大化单步奖赏,即仅考虑一步 操作.需注意的是,即使在这样的简化情形下,强化学习仍与监督学习有显著不 同,因为机器需通过尝试来发现各个动作产生的结果,而没有训练数据告诉机 器应当做哪个动作.
事实上,"探索" (即估计摇臂的优劣〉和"利用" (即选择当前最优摇 臂)这两者是矛盾的,因为尝试次数(即总投币数)有限,加强了一方则会自 然削弱另一方,这就是强化学习所面临的"探索-利用窘境" (ExplorationExploitation dilemma). 显然,欲累积奖赏最大,则必须在探索与利用之间达成 较好的折中.
若直接根据式(16.1) 计算平均奖赏,则需记录 个奖赏值.显然,更高效的 做法是对均值进行增量式计算,即每尝试一次就立即更新 Q(k). 不妨用下标来 表示尝试的次数,初始时 Qo(k) = O. 对于任意的 ,若第 n-1 次尝试厉的 平均奖赏为 Qn-l(的,则在经过第 次尝试获得奖赏。 后,平均奖赏应更新为
这样,无论摇臂被尝试多少次都仅需记录两个值:己尝试次数 n-1 11 丘平均 奖赏 Qn-1(k). E-贪心算法描述如图 16 .4所示.
softmax 算法基于当前已知的摇臂平均奖赏来对探索和利用进行折中.若 各摇臂的平均奖赏相当,则选取各摇臂的概率也相当;若某些摇臂的平均奖赏 明显高于其他摇臂,则它们被选取的概率也明显更高.
考虑多步强化学习任务 暂且先假定 务对应的马尔可夫决策过程四元组 E = R) 均为 己知 这样的情形称为 "模型 己知 行了建模?能在机器内部模拟出与环境相同或近似的状况.在 己知模型的环境 中学习称为"有模型学习" (model-based learn 剖) 此时,对于任意状态尘,矿 和动 ,在 状态下执行动作 转移到矿状态的概率 PJ 是己生口的 ?该转 移所带来的奖赏 R~ x' 也是已知的,为便于讨论?不妨假设状态空间 动作 空间 均为有限.
从一个初始策略(通常是随机策略)出发,先进行策略评估,然后改进策略,评估 改进的策略,再进一步改进策略,……不断迭代进行策略评估和改进,直到策略 收敛、不再改变为止.这样的做法称为"策略迭代" (policy iteration).在现实的强化学习任务中,环境的转移概率、奖赏函数往往很难得知,甚至很难知道环境中」共有多少状态.若学习算法不依赖于环境建模,则称为争 "免模型学习" (model-free learning) ,这比有模型学习要两难得多.
在免模型情形下,策略选代算法首先遇到的问题是策略无法评估,这是由 于模型未知而导致无法做全概率展开.此时?只能通过在环境中执行选择的动 作?来观察转移的状态和得到的奖赏.受 摇臂赌博机的启发,一种直接的策 略评估替代方法是多次"采样",然后求取平均累积奖赏来作为期望累积奖赏 的近似,这称为蒙特卡罗强化学习.由于采样必须为有限次数?因此该)j 法史适 合于使用 步累积奖赏的强化学习任务.可以看出?欲较好地获得值的数的估计,就需要多条不同的来样轨迹.然 而,我们的策略有可能是确定性的 即对于某个状态只会输出一个动作?若使用 这样的策略进行采样?则只能得到多条相同的轨迹.这与 摇臂赌博机的"仅 利用"法面临相同的问题 时此可借鉴探索与利用折中的办法,例如使用←贪 心法?以 的概率从所有胡作中均匀随机选取一个,以 1-E 的概率选取当前最 优动作.我们将确定性的策略付称为 "1尿桌始策略 法的策略记为
蒙特卡罗强化学习算法通过考虑采样轨迹?克服了模型未知给策略估计造 成的困难.此类算法需在完成一个采样轨迹后再更新策略的值估计?而前而介 绍的基于动态规划的策略迭代和值迭代算法在每执行→步策略后就进行值函 数更新.两者相比?蒙特卡罗强化学习算法的效率低得多?这里的主要问题是 蒙特卡罗强化学习算法没有充分利用强化学习任务的 MDP 结构.时序主分 (Temporal Difference ,简称 TD) 学斗则结合了动态规划与蒙特卡罗方法的思 想,能做到更高效的免模型学习.
前面我们一直假定强化学习任务是在有限状态空间上进行,每个状态可 用一个编号来指代;值面数则是关于有限状态的"表格值函数" (tabular value functio时,即值函数能表示为一个数组,输入 对应的函数值就是数组元素 值,且更成一个状态上的值不会影响其他状态上的值.然而,现实强化学习任务
需注意的是,在时序差分学习中需要状态"动作值函数以便获取策略.这里 一种简单的做法是令 作用于表示状态和动作的联合向量上,例如给状态向量 增加一维用于存放动作编号,即将式(16.32) 中的 替换为 (x; α); 另一种做法是 用。/1 对动作选择进行编码得到向量 α= (0; . . . ; 1; . . . ; 0) ,其中 "1" 表示该动 作被选择,再将状态向量与其合并得到 (x; α) ,用于替换式(16.32) 中的 x. 这样 就使得线性近似的对象为状态-动作值函数.
在强化学习的经典任务设置中,机器所能获得的反馈信息仅有多步决策后 的累积奖赏,但在现实任务中,往往能得到人类专家的决策过程范例,例如在种 瓜任务上能得到农业专家的种植过程范例.从这样的范例中学习,称为"模仿 学习" (imitation "learning).
强化学习任务中多步决策的搜索空间巨大,基于累积奖赏来学习很多步之 前的合适决策非常困难'而直接模仿仿,人类专家的"状态-动作对 白闯民显显著缓解这 一困难'我们称其为"直接模仿学习 假定我们获得了一批人类专家的决策轨迹数据{卡T1 ,7:鸟,. .…川.叮,7;阳 m} 每条轨迹 包含状态和动作序列
在很多任务中,设计桨棠函数往往相当困难,从人类专家提供的也例数据 中反推出奖赏函数有助于解决该问题?这就是逆强化学习
标签:状态,机器,策略,动作,奖赏,学习,强化 来源: https://blog.csdn.net/zycnice/article/details/118936864