强化学习经典算法笔记(十九):无监督策略学习算法Diversity Is All You Need

本篇介绍一个无监督框架下的策略学习算法DIAYN,全称是Diversity Is All You Need。本文是在学习了张楚珩前辈的【强化学习 77】DIAYN知乎ID黑猫紧张PN-23: Diversity is All Your Need (arXiv 1802)之后写成的,向他们表示感谢。

DIAYN核心要点

DIAYN可以在一个没有奖励的环境中,自适应地产生奖励函数,并且自动探索出来一些有用的技能(Skills)。训练的方法是使用最大熵策略最大化一个构造的信息论目标函数。(信息论目标函数的具体形式在下面介绍。)学习到的技能可以用于 1)作为策略学习的初始化,加速学习过程;2)作为分层强化学习的下层策略;3)用于模仿学习。

技能(Skill)的含义:

A skill is a latent-conditioned policy that alters that state of the environment in a consistent way.

如何在没有reward的任务环境上学习不仅diverse,而且有含义、有用的skill,文章提出3个key idea

  1. 不同skill访问不同的states,因而skill是distinguishable的。比如跳跃和跑动这两种动作所经历的状态很可能是不一样的。
  2. 用states而不是actions来区分skills,因为存在多个可能的 a t a_t at可以使 s t s_t st转移到 s t + 1 s_{t+1} st+1。比如一个推箱子的任务,如果施加的力量低于一个阈值,箱子就纹丝不动,但是我们并不清楚施加的力量到底是多少。本质是因为动作 a t a_t at无法被外界观测到,而状态 s t s_t st是可以的且唯一的。
  3. 让skill尽可能diverse,尽可能随机的act,但始终要保持distinguishable。尽可能的随机,但不能过于随机使得两个skill无法区分开了。diversity和distinguishable是一对矛盾。

模型定义

  1. S S S A A A是状态和动作,均看做随机变量。
  2. Z ∼ p ( z ) Z\sim p(z) Zp(z)是一个隐变量,策略依赖于 Z Z Z,即 π θ ( a ∣ s , z ) \pi_{\theta}(a|s,z) πθ(as,z)
    由此引出Skill的另一个含义,一个“Skill”就是一个固定向量 Z Z Z控制的策略。
  3. I ( X ; Y ) I(X;Y) I(X;Y)表示随机变量 X X X Y Y Y的互信息(Mutual Information)。
    H ( X ; Y ) = H ( X ) − H ( Y ∣ X ) = H ( Y ) − H ( X ∣ Y ) H(X;Y)=H(X)-H(Y|X)=H(Y)-H(X|Y) H(X;Y)=H(X)H(YX)=H(Y)H(XY)
    互信息表示两个变量之间的依赖程度,互信息越大, X X X Y Y Y的依赖程度越高。
  4. H ( X ) H(X) H(X)表示信息熵。

目标函数的构造

目标函数的构造分为三步:

  1. 最大化状态和skill之间的互信息。
    I ( S ; Z ) = H ( Z ) − H ( Z ∣ S ) I(S;Z)=H(Z)-H(Z|S) I(S;Z)=H(Z)H(ZS)
    这是为了实现前面所述的第一个key idea,让状态和skill尽可能一一对应。The skill should control which states the agent visits.

  2. 在给定状态 S S S的条件下,最小化 A A A Z Z Z之间的互信息 I ( A ; Z ∣ S ) I(A;Z|S) I(A;ZS),这是为了实现第二个Key Idea,即保证真正可以用于区分不同Skill的是状态,而不是靠动作。也就是令动作 A A A和技能 Z Z Z之间尽量不相互依赖。

  3. 把概率分布 p ( z ) p(z) p(z)控制的所有Skill看做一个混合策略,最大化这个策略的条件熵 H ( A ∣ S )

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值