正在加载图片...
第5期 王作为,等:记忆神经网络在机器人导航领域的应用与研究进展 ·837· 到一组注意力权重p,即实现了注意力机制(at- 特征向量,利用这个特征向量0,产生相应的Q值 tention mechanism)。通过这种软注意力机制,机 输出,实现动作选择。这里的4,是一个估计的状 器人可以找到与当前观测向量五,相关的那一部 态行为值函数,用MLP多重前向网络实现。如 分记忆,即环境中的定位过程。读操作的输出0, 式(7所示: 利用注意力权重P,和值记忆模块M求出线性累加 g:=f(Whh,+0.) (7) 和。其中注意力权重公式和输出式分别为 q=Wag 式中:W、W是其权值,最后一层利用softmax作 exp(h'Mi] Pu= (4) 为输出。利用目标值函数和当前值函数的误差来 ∑exp(kM) 训练整个模型,整个过程数据流通非常平滑,全 程可微,此模型可以利用误差反向传播进行训 0 MY P (5) 练,最终优化Wo、W、W、W9矩阵。 4)注意力机制 1.2DNC在导航中的应用 注意力机制在文本识别、图像识别、问答系 Google DeepMind在Nature首次提出了 统、机器翻译中被广泛深入研究1。注意力机 DNC模型2o,。其强大的推理能力使其在自然语 制由一个注意力权重表示,越大的权重代表对应 言理解、算法推理、视觉推理中被广泛深人研 位置ⅰ越重要。在导航问题中,注意力机制不仅 究2-21。DNC具有递归神经控制器,可以通过执 关注当前观测值与记忆模块的匹配度,而且考虑 行可微的读操作和写操作去访问外部记忆资源。 之前几步观测序列与记忆模块的匹配度,因此是 DNC结构如图3所示。a为递归控制器模块,其 一种基于时间序列的注意力机制。在FRMON 输入为外部输入向量和从记忆中读出R维向量, 中,采用LSTM结构的注意力机制,如式(6)所示: 输出为外部输出向量和交互参量,这些交互参量 [hc]=LSTM([ero-1].h1.cm1) (6) 用来确定读、写操作的参数。b为多个读头和一 其中,上一步召回的记忆o1作为LSTM输入的 个写头,用来实现对记忆的读写操作。℃为记忆 一部分,这允许FRMON不仅根据当前的观测序 模块,是一个N×W的记忆矩阵。d是每个记忆位 列还根据之前检索到的记忆来实现多级推理过 置的使用度向量,用来记录目前每个记忆位置的 程,这与MemNN中的多级跳结构非常类似。 使用情况,其中时间链接矩阵记录了写入的顺 5)预测行为值函数 序,时间顺序用箭头表示。Parisotto!261首次将 记忆模块的输出是0,它表示了概率统计上 DNC用于导航任务,将记忆模块看作神经地图 的机器人的记忆模块和当前上下文输入最相关的 (neural map),下面分别对每个模块进行说明。 a.递归控制器 b.读写头 c.记忆体d.时间链接矩阵 输出 写向量 擦除向量 写操作 写关键字 交互 参量 读关键字 读取模式 读操作1 读出 读关键字 读操作2 ◆ 向量 读取模式 口 输入 读向量 图3DNC结构 Fig.3 DNC structure 1)递归控制器 量,机器人控制器根据当前输入向量S,和,来输 每个时间步1控制器从环境接收当前感知向 出向量c。c,用来得到策略输出π,(ds)。另外,控 量,机器人首先根据当前感知向量5,和当前的 制器也输出一个交互向量E,E,定义了当前时间 全局读向量,产生一个上下文向量q,接着通过 步该如何与记忆交互。控制器可以采用任何神经 读头从上一时刻神经地图M,中读取R维读入向 网络结构实现,例如:CNN结构、LSTM结构或者Mval t 到一组注意力权重 pt,i,即实现了注意力机制 (at￾tention mechanism)。通过这种软注意力机制,机 器人可以找到与当前观测向量 ht 相关的那一部 分记忆,即环境中的定位过程。读操作的输出 ot 利用注意力权重 Pt 和值记忆模块 求出线性累加 和。其中注意力权重公式和输出式分别为 pt,i = exp( h T t M key t [i] ) ∑M j=1 exp( h T t M key t [j] ) (4) ot = Mval t Pt (5) 4) 注意力机制 注意力机制在文本识别、图像识别、问答系 统、机器翻译中被广泛深入研究[14-18]。注意力机 制由一个注意力权重表示,越大的权重代表对应 位置 i 越重要。在导航问题中,注意力机制不仅 关注当前观测值与记忆模块的匹配度,而且考虑 之前几步观测序列与记忆模块的匹配度,因此是 一种基于时间序列的注意力机制。在 FRMQN 中,采用 LSTM 结构的注意力机制,如式 (6) 所示: [ht , ct] = LSTM([et ,ot−1],ht−1, ct−1) (6) 其中,上一步召回的记忆 ot−1 作为 LSTM 输入的 一部分,这允许 FRMQN 不仅根据当前的观测序 列还根据之前检索到的记忆来实现多级推理过 程,这与 MemNN 中的多级跳结构非常类似[19]。 5) 预测行为值函数 记忆模块的输出是 ot,它表示了概率统计上 的机器人的记忆模块和当前上下文输入最相关的 特征向量,利用这个特征向量 ot 产生相应的 Q 值 输出,实现动作选择。这里的 qt 是一个估计的状 态行为值函数,用 MLP 多重前向网络实现。如 式 (7) 所示: gt = f(Whht + ot) qt = Wq gt (7) 式中:W h 、W q 是其权值,最后一层利用 softmax 作 为输出。利用目标值函数和当前值函数的误差来 训练整个模型,整个过程数据流通非常平滑,全 程可微,此模型可以利用误差反向传播进行训 练,最终优化 W key 、W val 、W h 、W q 矩阵。 1.2 DNC 在导航中的应用 Google DeepMind 在 Nature 首次提出了 DNC 模型[20]。其强大的推理能力使其在自然语 言理解、算法推理、视觉推理中被广泛深入研 究 [21-25]。DNC 具有递归神经控制器,可以通过执 行可微的读操作和写操作去访问外部记忆资源。 DNC 结构如图 3 所示。a 为递归控制器模块,其 输入为外部输入向量和从记忆中读出 R 维向量, 输出为外部输出向量和交互参量,这些交互参量 用来确定读、写操作的参数。b 为多个读头和一 个写头,用来实现对记忆的读写操作。c 为记忆 模块,是一个 N×W 的记忆矩阵。d 是每个记忆位 置的使用度向量,用来记录目前每个记忆位置的 使用情况,其中时间链接矩阵记录了写入的顺 序,时间顺序用箭头表示。Parisotto[ 2 6 ] 首次将 DNC 用于导航任务,将记忆模块看作神经地图 (neural map),下面分别对每个模块进行说明。 输出 输入 写向量 擦除向量 写关键字 读关键字 读取模式 读关键字 读取模式 读向量 读操作2 读操作1 写操作 b. 读/写头 c. 记忆体 d. 时间链接矩阵 交互 参量 读出 向量 a. 递归控制器 图 3 DNC 结构 Fig. 3 DNC structure 1) 递归控制器 每个时间步 t 控制器从环境接收当前感知向 量 st,机器人首先根据当前感知向量 st 和当前的 全局读向量 rt 产生一个上下文向量 qt,接着通过 读头从上一时刻神经地图 Mt-1 中读取 R 维读入向 πt (a|s) 量,机器人控制器根据当前输入向量 st 和 rt 来输 出向量 ct。ct 用来得到策略输出 。另外,控 制器也输出一个交互向量 Et,Et 定义了当前时间 步该如何与记忆交互。控制器可以采用任何神经 网络结构实现,例如:CNN 结构、LSTM 结构或者 第 5 期 王作为,等:记忆神经网络在机器人导航领域的应用与研究进展 ·837·
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有