第15卷第5期 智能系统学报 Vol.15 No.5 2020年9月 CAAI Transactions on Intelligent Systems Sep.2020 D0:10.11992/tis.202002020 网络出版地址:http:/kns.cnki.net/kcms/detail/23.1538.tp.20200413.1849.002.html 记忆神经网络在机器人导航领域的应用与研究进展 王作为2,徐征,张汝波,洪才森',王殊 (1.天津工业大学计算机科学与技术学院,天津300387,2.天津工业大学机械工程学院博士后工作站,天津 300387,3.天津动核芯科技有限公司,天津300350,4.天津职业技术师范大学汽车与交通学院,天津300222,5.大 连民族大学机电工程学院,辽宁大连116600) 摘要:记忆神经网络非常适合解决时间序列决策问题.将其用于机器人导航领域是非常有前景的新兴研究领 域。本文主要讨论记忆神经网络在机器人导航领域的研究进展。给出几种基本记忆神经网络结合导航任务的 工作机理,总结了不同模型的优缺点;对记忆神经网络在导航领域的研究进展进行简要综述:进一步介绍导航 验证环境的发展:最后梳理了记忆神经网络在导航问题所面临的复杂性挑战,并预测了记忆神经网络在导航领 域未来的发展方向。 关键词:记忆神经网络:机器人导航:深度强化学习:可微神经计算机:可微神经字典:深度学习:强化学习:记 忆网络 中图分类号:TP183 文献标志码:A文章编号:1673-4785(2020)05-0835-12 中文引用格式:王作为,徐征,张汝波,等.记忆神经网络在机器人导航领域的应用与研究进展J几.智能系统学报,2020, 15(5):835-846. 英文引用格式:VANG Zuowei,,XU Zheng,ZHANG Rubo,.etal.Research progress and application of memory neural network in robot navigation[Jl.CAAI transactions on intelligent systems,2020,15(5):835-846. Research progress and application of memory neural network in robot navigation WANG Zuowei,XU Zheng,ZHANG Rubo,HONG Caisen',WANG Shu' (1.School of Computer Science and Technology,Tianjin Polytechnic University,Tianjin 300387,China;2.College of Mechanical Engineering Post-doctoral Research Station,Tianjin Polytechnic University,Tianjin 300387,China;3.DongHexin Technology Co., Ltd.,Tianjin 300350,China;4.College of Automobile and Transportation,Tianjin University of Technology and Education,Tianjin 300222,China:5.College of Mechanical and Electrical Engineering,Dalian Minzu University,Dalian 116600,China) Abstract:Memory networks are a relatively new class of models designed to alleviate the problem of learning long-term dependencies in sequential data,by providing an explicit memory representation for each token in the sequence,and they can be used for learning navigation policies in an unstructured terrain,which is a complex task.Memory neural net- works are highly suitable for solving time series decision-making problems,and their application in robot navigation is a very promising and emerging research field.The research progress of memory neural networks in the field of robot nav- igation is primarily discussed in this paper.First,the working mechanism of several basic memory neural networks used for robot navigationis introduced,and the advantages and disadvantages of different models are summarized.Then,the research progress of memory neural network in navigation field is briefly reviewed,and the development of navigation verification environment is discussed.Finally,the complex challenges faced by memory neural networks in navigation are summarized,and the future development of memory neural networks in navigation field is predicted. Keywords:memory neural network;robot navigation:deep reinforcement learning:differentiable neural computer;dif- ferentiable neural dictionary;deep learning;reinforcement learning;memory networks 收稿日期:2020-02-27.网络出版日期:2020-04-14. 自主机器人导航所在环境一般是未知的、动 基金项目:国家自然科学基金面上项目(61972456):天津市教 委科研计划项目(2019KJ018);天津工业大学学位与 态的、部分可观测的。自主机器人导航需要具备 研究生教育改革项目(Y20180104). 通信作者:王作为.E-mail:wangzuowei@126.com 以下能力:探索未知环境、构建地图、目标导航的
DOI: 10.11992/tis.202002020 网络出版地址: http://kns.cnki.net/kcms/detail/23.1538.tp.20200413.1849.002.html 记忆神经网络在机器人导航领域的应用与研究进展 王作为1,2,徐征3,4,张汝波5 ,洪才森1 ,王殊1 (1. 天津工业大学 计算机科学与技术学院,天津 300387; 2. 天津工业大学 机械工程学院博士后工作站,天津 300387; 3. 天津动核芯科技有限公司,天津 300350; 4. 天津职业技术师范大学 汽车与交通学院,天津 300222; 5. 大 连民族大学 机电工程学院,辽宁 大连 116600) 摘 要:记忆神经网络非常适合解决时间序列决策问题,将其用于机器人导航领域是非常有前景的新兴研究领 域。本文主要讨论记忆神经网络在机器人导航领域的研究进展。给出几种基本记忆神经网络结合导航任务的 工作机理,总结了不同模型的优缺点;对记忆神经网络在导航领域的研究进展进行简要综述;进一步介绍导航 验证环境的发展;最后梳理了记忆神经网络在导航问题所面临的复杂性挑战,并预测了记忆神经网络在导航领 域未来的发展方向。 关键词:记忆神经网络;机器人导航;深度强化学习;可微神经计算机;可微神经字典;深度学习;强化学习;记 忆网络 中图分类号:TP183 文献标志码:A 文章编号:1673−4785(2020)05−0835−12 中文引用格式:王作为, 徐征, 张汝波, 等. 记忆神经网络在机器人导航领域的应用与研究进展 [J]. 智能系统学报, 2020, 15(5): 835–846. 英文引用格式:WANG Zuowei, XU Zheng, ZHANG Rubo, et al. Research progress and application of memory neural network in robot navigation[J]. CAAI transactions on intelligent systems, 2020, 15(5): 835–846. Research progress and application of memory neural network in robot navigation WANG Zuowei1,2 ,XU Zheng3,4 ,ZHANG Rubo5 ,HONG Caisen1 ,WANG Shu1 (1. School of Computer Science and Technology, Tianjin Polytechnic University, Tianjin 300387, China; 2. College of Mechanical Engineering Post-doctoral Research Station, Tianjin Polytechnic University, Tianjin 300387, China; 3. DongHexin Technology Co., Ltd., Tianjin 300350, China; 4. College of Automobile and Transportation, Tianjin University of Technology and Education, Tianjin 300222, China; 5. College of Mechanical and Electrical Engineering, Dalian Minzu University, Dalian 116600, China) Abstract: Memory networks are a relatively new class of models designed to alleviate the problem of learning long-term dependencies in sequential data, by providing an explicit memory representation for each token in the sequence, and they can be used for learning navigation policies in an unstructured terrain, which is a complex task. Memory neural networks are highly suitable for solving time series decision-making problems, and their application in robot navigation is a very promising and emerging research field. The research progress of memory neural networks in the field of robot navigation is primarily discussed in this paper. First, the working mechanism of several basic memory neural networks used for robot navigationis introduced, and the advantages and disadvantages of different models are summarized. Then, the research progress of memory neural network in navigation field is briefly reviewed, and the development of navigation verification environment is discussed. Finally, the complex challenges faced by memory neural networks in navigation are summarized, and the future development of memory neural networks in navigation field is predicted. Keywords: memory neural network; robot navigation; deep reinforcement learning; differentiable neural computer; differentiable neural dictionary; deep learning; reinforcement learning; memory networks 自主机器人导航所在环境一般是未知的、动 态的、部分可观测的。自主机器人导航需要具备 以下能力:探索未知环境、构建地图、目标导航的 收稿日期:2020−02−27. 网络出版日期:2020−04−14. 基金项目:国家自然科学基金面上项目 (61972456);天津市教 委科研计划项目(2019KJ018);天津工业大学学位与 研究生教育改革项目(Y20180104). 通信作者:王作为. E-mail:wangzuowei@126.com. 第 15 卷第 5 期 智 能 系 统 学 报 Vol.15 No.5 2020 年 9 月 CAAI Transactions on Intelligent Systems Sep. 2020
·836· 智能系统学报 第15卷 路径规划与执行、环境变化的适应性。 传统的导航方法基于全局定位与地图构建 记忆 记忆 记忆 (simultaneous localization and mapping,SLAM), SLAM由于定位飘移、传感器噪音、环境改变以 下文 上下文 下文 及有限的计算规划能力使得该方法很难推广到实 CN N 际应用四。近年来,由于神经网络的强大的表征 能力,尤其是强化学习与深度神经网络的结合使 得深度强化学习(deep reinforcement learning, MON RMON FRMQN DRL)广泛应用到机器人导航领域[21。然而 图1 MemNN-+DRL结构 DRL基于当前感知做出决策,很难具有泛化性和 Fig.1 MemNN+DRL structure 推理能力,并且很难应用于部分观测环境中。递 MemNN+DRL结构采用一个递归控制器 归神经网络(recurrent neural network,RNN)和长短 DRL与外部记忆MemNN进行交互,基于时间上 时记忆神经网络(long short--term memory,.LSTM) 下文实现寻址机制,有效处理了部分观测、长时 与DRL相结合在机器人导航领域虽然取得了一 依赖导航策略以及相似地图的知识迁移问题。 定进展,然而隐藏节点和权重所能记住的数据 MemNN+DRL的导航工作机理如下:将机器人最 十分有限,且只能记住一些有一定内在规律和特 近遇到的M步观察经过编码写入到MemNN中, 征的信息,对于长程记忆则显得无能为力。 相当于M步的情节记忆,采用强化学习算法端对 为了解决神经网络长程记忆的问题,近3年 端训练参数,最终获得导航能力。读写机制如图2 涌现出了各种的记忆神经网络(memory neural net-. 所示。 works,MNN)模型,MNN采用外部记忆矩阵实 p. D 现,将记忆与计算分离开来,采用可微的读写机 Soft max 制访问外部记忆网络,整个系统可微,允许端对 端的训练。MNN与DRL结合非常适合解决时间 序列决策问题,将其用于导航领域是非常有前景 (a写人 (b)读取 的新兴研究领域8。 图2 MemNN读写机制 Fig.2 Read and write mechanism of MemNN 1MNN结合导航任务的工作机理 具体模块功能如下。 近年来将MNN用于导航领域主要有3种神 1)编码模块 经网络模型:MemNN(memory networks)、DNC(dif- 将原始的图像信息提取出高层特征信息。将 ferentiable neural computer)DND(differentiable 一个c通道的h×w维的图像X,编码成一个e维 neural dictionary),下面分别介绍将其用于导航领 特征向量e 域的工作机理。 e=(X) (1) 1.1 MemNN在导航中的应用 2)写记忆操作 Sukhbaatar等io首先提出MemNN,这是一种 将最近M步的观察实现矩阵转换,以键记忆 模块和值记忆模块形式分别存储到记忆中,如式 无写操作的记忆结构,记忆存储是固定的。网络 (2)、(3): 学到的内容是如何从固定记忆池中去访问和读取 Mey =WheyE (2) 信息,而不是如何去改写内容。该模型被广泛用 M =WaE (3) 于情感分析山、对话训练等领域。Oh等1首 式中:矩阵M和M分别代表了键记忆模块和 次将MemNN与DRL相结合并在三维Mine- 值记忆模块;Wg和W是相应的线性转移矩阵; craft环境中实现导航任务。相继提出了:记忆 E,是最近M次观察的特征向量序列。 Q网络(memory Q-network,MQN)、循环记忆Q网 3)读记忆操作 络(recurrent memory Q-network,RMQN)以及反馈 机器人导航过程中,根据最近几步的观测值 循环记忆Q网络(feedback recurrent memory Q-net- 计算上下文向量h,然后通过计算上下文向量 work,FRMQN),如图1所示。 ,和键记忆模块My之间的内积,再归一化后得
路径规划与执行、环境变化的适应性。 传统的导航方法基于全局定位与地图构建 (simultaneous localization and mapping,SLAM), SLAM 由于定位飘移、传感器噪音、环境改变以 及有限的计算规划能力使得该方法很难推广到实 际应用[1]。近年来,由于神经网络的强大的表征 能力,尤其是强化学习与深度神经网络的结合使 得深度强化学习 (deep reinforcement learning, DRL) 广泛应用到机器人导航领域[ 2 - 5 ]。然而 DRL 基于当前感知做出决策,很难具有泛化性和 推理能力,并且很难应用于部分观测环境中。递 归神经网络 (recurrent neural network,RNN) 和长短 时记忆神经网络 (long short-term memory, LSTM) 与 DRL 相结合在机器人导航领域虽然取得了一 定进展[6-7] ,然而隐藏节点和权重所能记住的数据 十分有限,且只能记住一些有一定内在规律和特 征的信息,对于长程记忆则显得无能为力。 为了解决神经网络长程记忆的问题,近 3 年 涌现出了各种的记忆神经网络 (memory neural networks,MNN) 模型,MNN 采用外部记忆矩阵实 现,将记忆与计算分离开来,采用可微的读写机 制访问外部记忆网络,整个系统可微,允许端对 端的训练。MNN 与 DRL 结合非常适合解决时间 序列决策问题,将其用于导航领域是非常有前景 的新兴研究领域[8-9]。 1 MNN 结合导航任务的工作机理 近年来将 MNN 用于导航领域主要有 3 种神 经网络模型:MemNN(memory networks)、DNC(differentiable neural computer) 以及 DND(differentiable neural dictionary),下面分别介绍将其用于导航领 域的工作机理。 1.1 MemNN 在导航中的应用 Sukhbaatar 等 [10] 首先提出 MemNN,这是一种 无写操作的记忆结构,记忆存储是固定的。网络 学到的内容是如何从固定记忆池中去访问和读取 信息,而不是如何去改写内容。该模型被广泛用 于情感分析[11] 、对话训练[12] 等领域。Oh 等 [13] 首 次将 MemNN 与 DRL 相结合并在三维 Minecraft 环境中实现导航任务。相继提出了:记忆 Q 网络 (memory Q-network,MQN)、循环记忆 Q 网 络 (recurrent memory Q-network,RMQN) 以及反馈 循环记忆 Q 网络 (feedback recurrent memory Q-network,FRMQN),如图 1 所示。 Q CNN MQN xt 记忆 上下文 Q CNN RMQN xt 记忆 上下文 Q CNN FRMQN xt 记忆 上下文 图 1 MemNN+DRL 结构 Fig. 1 MemNN+DRL structure MemNN+DRL 结构采用一个递归控制器 DRL 与外部记忆 MemNN 进行交互,基于时间上 下文实现寻址机制,有效处理了部分观测、长时 依赖导航策略以及相似地图的知识迁移问题。 MemNN+DRL 的导航工作机理如下:将机器人最 近遇到的 M 步观察经过编码写入到 MemNN 中, 相当于 M 步的情节记忆,采用强化学习算法端对 端训练参数,最终获得导航能力。读写机制如图 2 所示。 Wkey Wval M blocks Soft max φ Xt ht pt ot Wval t Mval t Mkey t Wkey t (a) 写入 (b) 读取 图 2 MemNN 读写机制 Fig. 2 Read and write mechanism of MemNN 具体模块功能如下。 1) 编码模块 将原始的图像信息提取出高层特征信息。将 一个 c 通道的 h×w 维的图像 Xt 编码成一个 e 维 特征向量 et: et = φ enc (Xt) (1) 2) 写记忆操作 将最近 M 步的观察实现矩阵转换,以键记忆 模块和值记忆模块形式分别存储到记忆中,如式 (2)、(3): M key t = WkeyEt (2) Mval t = WvalEt (3) M key t Mval t Wkey Wval 式中:矩阵 和 分别代表了键记忆模块和 值记忆模块; 和 是相应的线性转移矩阵; Et 是最近 M 次观察的特征向量序列。 3) 读记忆操作 M key t 机器人导航过程中,根据最近几步的观测值 计算上下文向量 ht,然后通过计算上下文向量 ht 和键记忆模块 之间的内积,再归一化后得 ·836· 智 能 系 统 学 报 第 15 卷
第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,即实现了注意力机制 (attention 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·
·838· 智能系统学报 第15卷 多级LSTM结构。 此具有更好的不同环境间的知识迁移能力及适应 2)读操作 动态环境的能力。然而DNC学到的参数较多,除 上下文向量q,基于当前输入3,和,得到,利 了学习控制器网络参数外,还要学习读写操作的 用上下文向量q,和地图M,中的每一个位置特征 交互参数E。 M,”做内积得到一个得分a,9。得分正则化处 1.3DND在导航中的应用 理后得到在地图上所有位置的一个概率分布,即 Pritzel等P)提出了神经情节控制模型(neural 实现了软注意力机制。这个概率分布用来计算在 episodic control,.NEC),用于实现机器人导航。作 所有位置特征M,”上的一个加权平均和c,。这 者指出当前的深度强化学习模型存在共同的弊 里读操作将神经地图看做联想记忆:机器人提供 端:所有深度强化学习模型(包括MemNN、 了一些不完全的信息q,读操作将返回一个与 DNC)都是参数化模型,需要采用随机梯度下降 4,最匹配的完整的记忆信息,类似于机器人可以 法学习参数矩阵,如果参数矩阵较多,收敛速度 回忆起当前的观察与记忆中的某些路标相似的东 缓慢,尤其是导航领域存在稀疏回报问题,整个 过程很难收敛。而强化学习算法本身,尤其是 西。注意力权重公式和输出公式如式(8)所示, Q学习是通过值迭代学习最优策略,而表格形式 其中W是权重矩阵: 是最适合强化学习的知识表示形式。如果能将缓 q=W[sr,d=qM 慢更新的状态表征用深度网络表示,将迅速更新 的值函数用表格的形式表示,则更为有效。因此 (8) 提出了一种无参数的记忆机构一可微神经字 G= aM 典(DND)。类似于Key-Value记忆模型,将参数 表示的键(状态S)与表格表示的值(行为值函数 3)写操作 )相结合,并在机器人选择行为期间使用基于上 给定机器人当前时刻1的位置(xy,写操作 下文的软注意力机制来检索有用的值函数。允许 的输入为:当前感知向量s,全局读向量,上下 自由读写,并且采用了追加写操作,使得写操作 文读向量c,和当前的神经地图中(xy)的特征向 更加简单。每个行为a都有对应的DND记忆模 量M,通过一个深度神经网络人产生一个新 块,学习采用N步Q强化学习算法,同时采用了 的c维向量w=f(s,r,c,M])。这个向量 类似于DQN中的回放机制。 作为新的局部(x)写候选向量。 1)NEC结构 写操作利用新的特征向量”:替换机器人 NEC结构如图4所示。该结构分成3个部 神经地图中(x)位置的特征向量,这是一种强写 分:卷积神经网络;一系列DND记忆模块(即行 入机制。写操作修改了1+1时刻的神经地图 为记忆模块M):以及一个最终的网络,该网络将 M#1。M+1除了位置(xy,)上的特征信息有所改 动作记忆模块的读出转换成Q值。卷积神经网 变,其余与旧神经地图一致,这是一个局部写入 络将视觉感知s,转换成关键字h,。每个行为对应 操作,如式(9)所示: 一个行为记忆模块M。,每个行为记忆模块M。由 M= w(a,b)=() 键记忆模块h,和值记忆模块Q,组成。记忆模块 M,(a,b)≠(,) (9) 从关键字h映射到值Q,是一个联想关系,与数据 4)注意力机制 字典类似,根据当前关键字h,在记忆模块M,中 读出相应的值Q,记忆模块M。的输出即为对应 DNC构建了3种注意力机制:基于内容的注 行为a的Q(s,ad)值,不同的记忆M,共享相同的卷 意力机制、时间机制和动态记忆分配机制。其中 积网络。机器人根据最高的Q值估计来决定在 基于内容寻址和动态记忆分配的方式决定写入记 每一步中执行哪个动作,然后根据N步Q学习更 忆的位置;基于内容寻址和时间链接矩阵决定读 新值函数和相应的权值。 出记忆位置。注意力机制由交互向量参数E,决定。 实验在三维ViZDoom环境下验证,对于更加 Q(s,a)=∑Q 复杂的迷宫环境,其长时记忆能力、泛化性能力 均优于FRMON。这是由于环境越来越大,越来 k(h,h) 越复杂,需要记忆的知识越来越多,MemNN记忆 ∑k(h,h) 结构只能记忆M步历史,而DNC可以记忆整个 图4NEC结构 地图,并且可以根据环境改变动态修改地图,因 Fig.4 NEC structure
多级 LSTM 结构。 2) 读操作 Mt (x,y) at (x,y) Mt (x,y) 上下文向量 qt 基于当前输入 st 和 rt 得到,利 用上下文向量 qt 和地图 Mt 中的每一个位置特征 做内积得到一个得分 。得分正则化处 理后得到在地图上所有位置的一个概率分布,即 实现了软注意力机制。这个概率分布用来计算在 所有位置特征 上的一个加权平均和 ct。这 里读操作将神经地图看做联想记忆:机器人提供 了一些不完全的信息 qt,读操作将返回一个与 qt 最匹配的完整的记忆信息,类似于机器人可以 回忆起当前的观察与记忆中的某些路标相似的东 西。注意力权重公式和输出公式如式(8)所示, 其中 W 是权重矩阵: qt = W [st ,rt],a (x,y) t = qt · M (x,y) t , α (x,y) t = e a (x,y) t ∑ (w,z) e a (w,z) t ct = ∑ (x,y) α (x,y) t M (x,y) t (8) 3) 写操作 M (xt ,yt) t w (xt ,yt) t+1 = fw ([st ,rt , ct , M (xt ,yt) t ]) 给定机器人当前时刻 t 的位置 (xt ,yt ),写操作 的输入为:当前感知向量 st,全局读向量 rt,上下 文读向量 ct,和当前的神经地图中 (xt ,yt ) 的特征向 量 ,通过一个深度神经网络 fw 产生一个新 的 c 维向量 。这个向量 作为新的局部 (xt ,yt ) 写候选向量。 w (xt ,yt) 写操作利用新的特征向量 t+1 替换机器人 神经地图中 (xt ,yt ) 位置的特征向量,这是一种强写 入机制。写操作修改 了 t+1 时刻的神经地 图 Mt+1。Mt+1 除了位置 (xt ,yt ) 上的特征信息有所改 变,其余与旧神经地图一致,这是一个局部写入 操作,如式(9)所示: M (a,b) t+1 = w (xt ,yt) t+1 , (a,b) = (xt , yt) M (a,b) t , (a,b) , (xt , yt) (9) 4) 注意力机制 DNC 构建了 3 种注意力机制:基于内容的注 意力机制、时间机制和动态记忆分配机制。其中 基于内容寻址和动态记忆分配的方式决定写入记 忆的位置;基于内容寻址和时间链接矩阵决定读 出记忆位置。注意力机制由交互向量参数 Et 决定。 实验在三维 ViZDoom 环境下验证,对于更加 复杂的迷宫环境,其长时记忆能力、泛化性能力 均优于 FRMQN。这是由于环境越来越大,越来 越复杂,需要记忆的知识越来越多,MemNN 记忆 结构只能记忆 M 步历史,而 DNC 可以记忆整个 地图,并且可以根据环境改变动态修改地图,因 此具有更好的不同环境间的知识迁移能力及适应 动态环境的能力。然而 DNC 学到的参数较多,除 了学习控制器网络参数外,还要学习读写操作的 交互参数 Et。 1.3 DND 在导航中的应用 Pritzel 等 [27] 提出了神经情节控制模型 (neural episodic control,NEC),用于实现机器人导航。作 者指出当前的深度强化学习模型存在共同的弊 端:所有深度强化学习模 型 (包 括 MemNN 、 DNC) 都是参数化模型,需要采用随机梯度下降 法学习参数矩阵,如果参数矩阵较多,收敛速度 缓慢,尤其是导航领域存在稀疏回报问题,整个 过程很难收敛。而强化学习算法本身,尤其是 Q 学习是通过值迭代学习最优策略,而表格形式 是最适合强化学习的知识表示形式。如果能将缓 慢更新的状态表征用深度网络表示,将迅速更新 的值函数用表格的形式表示,则更为有效。因此 提出了一种无参数的记忆机构−可微神经字 典 (DND)。类似于 Key-Value 记忆模型,将参数 表示的键 (状态 S) 与表格表示的值 (行为值函数 V) 相结合,并在机器人选择行为期间使用基于上 下文的软注意力机制来检索有用的值函数。允许 自由读写,并且采用了追加写操作,使得写操作 更加简单。每个行为 a 都有对应的 DND 记忆模 块,学习采用 N 步 Q 强化学习算法,同时采用了 类似于 DQN 中的回放机制。 1)NEC 结构 NEC 结构如图 4 所示。该结构分成 3 个部 分:卷积神经网络;一系列 DND 记忆模块 (即行 为记忆模块 Ma );以及一个最终的网络,该网络将 动作记忆模块的读出转换成 Q 值。卷积神经网 络将视觉感知 st 转换成关键字 ht。每个行为对应 一个行为记忆模块 Ma,每个行为记忆模块 Ma 由 键记忆模块 hi 和值记忆模块 Qi 组成。记忆模块 从关键字 hi 映射到值 Qi 是一个联想关系,与数据 字典类似,根据当前关键字 ht 在记忆模块 Ma 中 读出相应的值 Qt,记忆模块 Ma 的输出即为对应 行为 a 的 Q(s,a) 值,不同的记忆 Ma 共享相同的卷 积网络。机器人根据最高的 Q 值估计来决定在 每一步中执行哪个动作,然后根据 N 步 Q 学习更 新值函数和相应的权值。 s h hi Qi Q (s, a)=∑ωiQi i ∑k (h, hi ) ωi= k (h, hi ) j 图 4 NEC 结构 Fig. 4 NEC structure ·838· 智 能 系 统 学 报 第 15 卷
第5期 王作为,等:记忆神经网络在机器人导航领域的应用与研究进展 ·839· 2)读操作 调整,是一种无参数记忆结构。 读操作就是在DND上将当前关键字h映射 4)参数更新 为输出值Q(s,a),如式(10)所示: 类似于DQN的回放机制,将每次的转移实 ∑w0,w,= k(h,h;) 例(s,a,)存储在回放缓冲区中,其中Qm(s,a (s,a)= (10) k(h,h) 作为目标函数。从回放缓冲区中随机取出的小批 量样本用于反向误差更新,这里的神经网络参数 这里h,是键记忆模块的第i个元素,Q,是值 的更新率较小。因此是一种缓慢更新的卷积网络 记忆模块的第i个元素。K(xy)是一个相似度函 和迅速更新的值函数相结合的结构,该模型大大 数。因此DND的读操作相当于在记忆中搜索与 提高了数据有效性、提高收敛速度。 h最匹配的那些记忆,输出是记忆中对应Q,值的 该方法类似于基于实例的学习,在Atari游戏 加权和,这是一种基于内容的注意力机制,没有 中验证,在数据有效性和收敛速度方面,优于DQN、 考虑时间相关性。从大容量的记忆里读取采用最 A3C、Prioritised DQN算法。 近邻方法(k-d树,详情介绍见文献[28])。 1.4不同记忆神经网络的优缺点 3)写操作 3种记忆结构都采用了软关注度机制,利用 查找结束后,将一个新的键-值对写人记忆。 DRL实现误差反向传播,整个过程均是可微的、 写入的过程是一个追加(append-only)写操作,即 端对端的结构。用于部分可观测导航任务均取得 将键-值对分别写入到键记忆模块和值记忆模块 了优于LSTM+DRL的效果。笔者分析了不同记 的末尾,无需计算写入位置,简化写入操作。如 忆神经网络的写操作、读操作、注意力机制、存储 果键已经存在记忆中,则对应的值函数Q,根据 知识、训练参数、记忆结构,以及将其应用于导航 N步Q学习更新,写入操作如式(11): 领域的各自优缺点,如表1所示。从表1可以看 2←Q+a(Q(s,a)-Q) 出,MemNN与DND存储知识是情节记忆,即存 gg0=∑gy+yame0s (11) 储了大量的经验序列,而DNC存储的是真正的空 间地图。在训练时间上,DNC训练参数最多,训 这里的写操作类似于Q表更新,只不过这里 练时间长,因此将其用于导航领域常常出现不收 的Q表示随着时间动态增长的。学习率α设置 敛的问题;而DND训练参数少,训练时间快,与 较大,类似于快门式学习,学习过程不涉及参数 基于实例的机器学习类似。 表1不同记忆结构的对比 Table 1 Comparisons of different memory structures 记忆神经网络 写操作 读操作 注意力机制存储知识 训练参数 记忆结构 解决难题 存在问题 矩阵参数 部分观测 根据内积 基于时间 固定写入 Wkgy、Wa Key-Value 长时记忆、 难以适应动 MemNN 运算求得 上下文注 情节记忆 形。、W,以及 M步观察 相似度 意力机制 神经网络 结构 相似地图的 态环境 迁移学习 参数 基于内容的 部分观测、 适应性写操 注意力机制 控制器网络 神经网铬 长时记忆、 根据内积 作、局部写 时间链接注 参数、决定读 控制器+ 不同地图间 DNC 运算求得 空间地图 参数收敛慢 操作、软写 意力机制、动 写的交互 矩阵记忆 的迁移学习、 相似度 入机制 态记忆分 参数E 结构 动态环境的 配机制 适应性 数据有效性, 相似度函 快门式学习 简单追加 卷积神经网提高收敛速 记忆空间大、 数+基于k-d 基于内容的 逐渐增加的无参数记忆、 DND (append- 络+无参数 度、部分观如何压缩 树最近邻 注意力机制 情节记忆 卷积神经网 only)写操作 记忆结构 测、 记忆 方法 络参数 延迟回报
2) 读操作 读操作就是在 DND 上将当前关键字 h 映射 为输出值 Q(s,a),如式(10)所示: Q(s,a) = ∑ i wiQi ,wi = ∑ k(h,hi) j k(h,hj) (10) 这里 hi 是键记忆模块的第 i 个元素,Qi 是值 记忆模块的第 i 个元素。K(x,y) 是一个相似度函 数。因此 DND 的读操作相当于在记忆中搜索与 h 最匹配的那些记忆,输出是记忆中对应 Qi 值的 加权和,这是一种基于内容的注意力机制,没有 考虑时间相关性。从大容量的记忆里读取采用最 近邻方法 (k-d 树,详情介绍见文献 [28])。 3) 写操作 查找结束后,将一个新的键−值对写入记忆。 写入的过程是一个追加 (append-only) 写操作,即 将键−值对分别写入到键记忆模块和值记忆模块 的末尾,无需计算写入位置,简化写入操作。如 果键已经存在记忆中,则对应的值函数 Qi 根据 N 步 Q 学习更新,写入操作如式(11): Qi ← Qi +α(Q (N) (s,a)− Qi) Q (N) (st ,a) = ∑N−1 j=0 γ j rt+j +γ Nmax a ′ Q(st+N,a ′ ) (11) α 这里的写操作类似于 Q 表更新,只不过这里 的 Q 表示随着时间动态增长的。学习率 设置 较大,类似于快门式学习,学习过程不涉及参数 调整,是一种无参数记忆结构。 4) 参数更新 Q (N) (s,a) 类似于 DQN 的回放机制,将每次的转移实 例 (st , at , rt ) 存储在回放缓冲区中,其中 作为目标函数。从回放缓冲区中随机取出的小批 量样本用于反向误差更新,这里的神经网络参数 的更新率较小。因此是一种缓慢更新的卷积网络 和迅速更新的值函数相结合的结构,该模型大大 提高了数据有效性、提高收敛速度。 该方法类似于基于实例的学习,在 Atari 游戏 中验证,在数据有效性和收敛速度方面,优于 DQN、 A3C、Prioritised DQN 算法。 1.4 不同记忆神经网络的优缺点 3 种记忆结构都采用了软关注度机制,利用 DRL 实现误差反向传播,整个过程均是可微的、 端对端的结构。用于部分可观测导航任务均取得 了优于 LSTM+DRL 的效果。笔者分析了不同记 忆神经网络的写操作、读操作、注意力机制、存储 知识、训练参数、记忆结构,以及将其应用于导航 领域的各自优缺点,如表 1 所示。从表 1 可以看 出,MemNN 与 DND 存储知识是情节记忆,即存 储了大量的经验序列,而 DNC 存储的是真正的空 间地图。在训练时间上,DNC 训练参数最多,训 练时间长,因此将其用于导航领域常常出现不收 敛的问题;而 DND 训练参数少,训练时间快,与 基于实例的机器学习类似。 表 1 不同记忆结构的对比 Table 1 Comparisons of different memory structures 记忆神经网络 写操作 读操作 注意力机制 存储知识 训练参数 记忆结构 解决难题 存在问题 MemNN 固定写入 M步观察 根据内积 运算求得 相似度 基于时间 上下文注 意力机制 情节记忆 矩阵参数 Wkey、Wval、 Wh、Wq以及 神经网络 参数 Key-Value 结构 部分观测、 长时记忆、 相似地图的 迁移学习 难以适应动 态环境 DNC 适应性写操 作、局部写 操作、软写 入机制 根据内积 运算求得 相似度 基于内容的 注意力机制、 时间链接注 意力机制、动 态记忆分 配机制 空间地图 控制器网络 参数、决定读 写的交互 参数Et 神经网络 控制器+ 矩阵记忆 结构 部分观测、 长时记忆、 不同地图间 的迁移学习、 动态环境的 适应性 参数收敛慢 DND 简单追加 (appendonly)写操作 相似度函 数+基于k-d 树最近邻 方法 基于内容的 注意力机制 逐渐增加的 情节记忆 快门式学习 无参数记忆、 卷积神经网 络参数 卷积神经网 络+无参数 记忆结构 数据有效性、 提高收敛速 度、部分观 测、 延迟回报 记忆空间大、 如何压缩 记忆 第 5 期 王作为,等:记忆神经网络在机器人导航领域的应用与研究进展 ·839·