Advertisement

Deep reinforcement learning with relational inductive biases 笔记

阅读量:

文章目录

  • 前言

  • 背景

  • Method

    • RL方法
    • 输入模块
    • 关系模块
    • 输出模块
  • 实验

    • BOX-WORLD
  • Results

前言

这是一个使用结构化特征上关系推理的机制帮助model-free的深度强化学习的方法,提高了表现、学习有效性、泛化性、可解释性。这篇文章的主要贡献就是介绍一种技术,通过关系归纳偏置来表征和推理深度强化学习中agent的状态。

背景

深度强化学习在一些具有挑战性的问题上实现非凡的效果很大程度上是因为其在如何学习和利用潜藏在观察和奖赏信号下的统计数据结构的灵活性。这样的灵活性也会带来低采样效率和除了训练环境特性之外的糟糕的迁移。相比之前在DRL中使用关系归纳偏置,作者不使用问题结构的先验知识,并且不知道需要考虑的特定关系。

Method

RL方法

使用A2C

输入模块

在这里插入图片描述
将图像作为输入,使用CNN处理。使用CNN进行下采样就会产生feature map,大小为m\times n \times f。这就意味着单个filter产生 m\times n 的feature map,一共有 f 个filter。CNN返回的是 embedded state representation,记为 S
然后通过reshape,得到 大小为 (m\cdot n) \times f 的entity vectors,记为 E。使得 E 中的每行 e_i 对应 S 中的某个 s_{x,y}x,y 是embeded scene中的位置。
这么做允许 entities 间非局部的计算,不受他们在空间 feature map 中的坐标的限制。又因为去除了空间 map 中的坐标,使得后续计算无法获得空间信息,因此作者通过将 e_i 与对应的空间坐标 x,y 串联起来保留空间信息。

关系模块

下面介绍一下单步 relational reasoning。首先使用多头注意力点积机制(MHDPA),将 E 中的 entities 映射为 Q,K,V 三个矩阵,对每个 \mathbf{q}_i 通过点积计算其与 \mathbf{k}_{j=1:N} 两两之间的相似性,再通过 softmax 归一化得到权值 \mathbf{w}_i,然后计算成对交互作用项 \mathbf{p}_{i,j}=w_{i,j}\mathbf{v}_j。然后把这些加起来 \mathbf{a}_i=\sum_{j=1:N}\mathbf{p}_{i,j}。又因为使用多头,因此updated entities为 \mathbf{\tilde{e}}_i=g_{\theta}(\mathbf{a}_i^{h=1:H})\mathbf{a}_i^{h=1:H} 是各个头的串联。可以迭代地进行通过shared (recurrent) or unshared (deep) parameters。这一步称为 relational block,多个block堆叠就是module。

输出模块

大小为 N\times f\tilde{E} 通过max-pooling降维成 f,再用一个MLP计算 \pi 和baseline value estimate B,得到 (c+1) 维的向量,c 是动作空间的大小,通过softmax计算动作概率,得到 \pi。最后一维是标量,代表 B

实验

BOX-WORLD

在这里插入图片描述
黑灰的是agent,他拿到loose key,然后找颜色一致的lock,消消乐,拿到content,一致消消乐,直到拿到白色的gem。开锁序列是唯一的,还会有干扰项,因此只要一步错,就是fail。
可以通过三种方式调整难度:

  1. 序列长度
  2. 干扰分叉数
  3. 干扰分叉的长度

这个任务计算上是困难的,因为:
4. 一个钥匙只能用一次,因此必须分辨干扰项。
5. key和box随机分布,因此需要有能力基于他们的抽象关系推断key和box,而不是空间距离。

Results

权重具有可解释性,学到了key 与 lock之间的抽象关系,可 zero-shot 泛化。

全部评论 (0)

还没有任何评论哟~