CN112771542A - 以学习的视觉实体为基础的强化学习神经网络 - Google Patents

以学习的视觉实体为基础的强化学习神经网络 Download PDF

Info

Publication number
CN112771542A
CN112771542A CN201980063799.XA CN201980063799A CN112771542A CN 112771542 A CN112771542 A CN 112771542A CN 201980063799 A CN201980063799 A CN 201980063799A CN 112771542 A CN112771542 A CN 112771542A
Authority
CN
China
Prior art keywords
neural network
data
reinforcement learning
action
subsystem
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201980063799.XA
Other languages
English (en)
Other versions
CN112771542B (zh
Inventor
卡他林-杜米特鲁·约内斯库
泰亚斯·达塔特拉亚·库尔卡尼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DeepMind Technologies Ltd
Original Assignee
DeepMind Technologies Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by DeepMind Technologies Ltd filed Critical DeepMind Technologies Ltd
Publication of CN112771542A publication Critical patent/CN112771542A/zh
Application granted granted Critical
Publication of CN112771542B publication Critical patent/CN112771542B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/56Information retrieval; Database structures therefor; File system structures therefor of still image data having vectorial format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/285Selection of pattern recognition techniques, e.g. of classifiers in a multi-classifier system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/092Reinforcement learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/778Active pattern-learning, e.g. online learning of image or video features
    • G06V10/7784Active pattern-learning, e.g. online learning of image or video features based on feedback from supervisors
    • G06V10/7788Active pattern-learning, e.g. online learning of image or video features based on feedback from supervisors the supervisor being a human, e.g. interactive learning with a human teacher
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/87Arrangements for image or video recognition or understanding using pattern recognition or machine learning using selection of the recognition techniques, e.g. of a classifier in a multiple classifier system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/96Management of image or video recognition tasks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Medical Informatics (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

一种强化学习神经网络系统,在该强化学习神经网络系统中内部表示和策略以从图像像素得出的视觉实体为基础,该强化学习神经网络系统包括视觉实体标识神经网络子系统,该视觉实体标识神经网络子系统被配置成处理图像数据以确定表示相应离散视觉实体的空间图的集合。强化学习神经网络子系统处理来自空间图的集合的数据和环境奖励数据,以提供用于选择动作以执行任务的动作数据。

Description

以学习的视觉实体为基础的强化学习神经网络
背景技术
本申请涉及强化学习。
在强化学习系统中,代理通过执行动作来与环境交互,所述动作是由强化学习系统响应于接收到表征所述环境当前状态的观测而选择的。
一些强化学习系统根据神经网络的输出响应于接收到给定的观测来选择将由所述代理执行的动作。
神经网络是机器学习模型,其采用一个或多个层的非线性单元来预测针对接收到的输入的输出。一些神经网络是深度神经网络,其除了输出层外还包括一个或多个隐藏层。每个隐藏层的输出用作所述网络中下一层——即,下一个隐藏层或输出层——的输入。所述网络的每一层根据相应的参数的集合的当前值从接收到的输入生成输出。
发明内容
强化学习神经网络系统能够学习执行复杂的任务,但是通常以人类难以理解的方式在系统内对选择动作所基于的基础进行编码。本说明书描述强化学习系统,其中内部表示和策略以从图像像素得出的视觉实体为基础。这些视觉实体能够被询问,例如显示,以使人类更容易理解系统选择动作所基于的基础。
本说明书中描述的系统中的一些使用基于选项的强化学习技术。通常选项可以是指一系列单独或“原子”动作。在发起之后的一些实例中,例如基于发起条件,选项可以具有当选择动作时遵循的内部策略以及终止条件。可以采用强化学习方法来学习内部策略。然而,基于选项的方法不是实现本文描述的技术中的一些所必要的。
在一个方面中,提供了一种强化学习神经网络系统。该系统可以作为计算机程序被实现为在一个或多个位置中的一个或多个计算机上。
该系统可以包括用于接收定义环境的观测的观测数据的输入。观测可以包括例如单色或彩色图像、短图像序列,例如级联的;或视频。同一或另一输入可以从环境接收环境奖励数据,该环境奖励数据定义(由代理)响应于执行动作而接收的外在奖励。该系统可以具有输出以提供用于选择要由在环境中行动的代理所执行的动作的动作数据。
该系统还可以包括诸如卷积神经网络(CNN)的视觉实体标识神经网络子系统,该视觉实体标识神经网络子系统被配置成处理观测数据以针对一个或多个图像确定(K个)空间图的集合。每个空间图可以表示可以由系统学习的(K个)离散视觉实体的集合中的一个离散视觉实体。每个空间图可以包括多个图像素,这些图像素通过潜在地以不同的例如较低的分辨率与图像像素相对应。因此每个图像素可以标识一个或多个图像的对应区域是否和与空间图相对应的离散视觉实体相关联,即表示与空间图相对应的离散视觉实体。
该系统还可以包括强化学习神经网络子系统,该强化学习神经网络子系统被配置成处理来自空间图的集合的数据和环境奖励数据以提供动作数据。通常强化学习神经网络子系统还将接收并处理观测数据。
在广义上每个空间图都可以表示,更特别地可以学习表示可用于强化学习但以观测,即以图像,为基础的概念。该概念可以包括诸如墙壁、对象等的视觉元素的特征、与环境内的代理和/或对象的运动相关的特征以及可能潜在地受环境中的动作影响的特征中的一个或多个的组合。因此视觉实体可以提供对观测的抽象或部分抽象的表示,但是由于其空间性质可以由人类容易地可视化,例如作为图。以这种方式,可以对增强学习系统的操作获得一些洞悉。这对监管和其他目的来说可以是有用的;例如如果能够鉴别自主系统的动作的动机,则更容易信任这样的系统。
在一些实施方式中,可以将每个像素或像素组指派给K个视觉实体的集合中的一个视觉实体。空间图的集合然后可以定义图像分段掩码的集合,其中每个掩码对应于视觉实体中的一个的空间映射,从而指示在观测中哪里存在实体,从而有效地映射(部分抽象的)视觉实体。
在一些实施方式中,为了执行指派实体编码神经网络被配置成将观测数据编码成每个图像素的激活。矢量量化器(VQ)然后可以将每个图像素的激活指派给表示离散视觉实体中的一个的嵌入矢量,以将图像素分类为K个离散视觉实体中的1个。例如可以标识与表示激活的激活矢量最接近的嵌入矢量,并且与此矢量相对应的矢量量化器输出(空间图像素)用1标记,此像素的其他输出(在其他空间图中)为0。
可以使用无监督学习技术来学习实体编码神经网络和/或嵌入矢量的参数。在一些实施方式中,可以与强化学习(RL)神经网络子系统的参数分开地学习它们。然而视觉实体标识子系统能够为强化学习(RL)神经网络子系统提供相对丰富的训练梯度源,尤其在RL子系统处于早期、探索阶段中并且外在奖励相对稀少时。因此,如稍后更详细地描述的,该系统能够在相对早期阶段学习动作的集合或选项,并且这些中的一些此后可以由强化学习系统用作更高级的控制命令,其中结果是它们对接收外在奖励有用。
如先前描述的,可以训练视觉实体标识神经网络/VQ子系统以表示空间图(掩码或图像分段),所述空间图表示图像/环境外观、对象运动和环境的动作可变方面的特征。
因此该系统可以包括图像外观编码神经网络,该图像外观编码神经网络耦合到观测数据输入以提供与图像素空间上相对应的编码图像外观数据。这然后可以用于训练视觉实体标识神经网络/VQ子系统以生成表示图像外观的特征的空间图,例如通过对来自一个或多个颜色通道的数据进行编码的颜色。例如颜色能够帮助区分环境的元素,诸如墙壁、地面、对象等。视觉实体标识子系统训练器可以被配置成用取决于编码图像外观数据的分布与每个图像素的激活之间的差异的损失函数来训练视觉实体标识神经网络子系统。例如,能够从在空间图与编码图像外观之间空间上对准和不对准的图像补片生成正训练示例和负训练示例。可以采用交叉熵损失。
该系统可以附加地或替换地包括帧编码神经网络,该帧编码神经网络被配置成将空间图的集合编码成当前帧的帧嵌入数据,其中帧可以表示一个或多个图像。视觉实体标识子系统训练器可以被配置成训练视觉实体标识神经网络子系统(和帧编码神经网络)以例如使用分类损失来区分在与当前帧相距稍后称为“展开”的时间窗帧数内部和外部的帧。这些帧之间的差异表示诸如运动的变化,因此子系统可以学习映射帧的可能移动的元素。
该系统可以附加地或替换地包括动作编码神经网络,该动作编码神经网络被配置成对动作数据进行编码以用于训练视觉实体标识神经网络子系统。视觉实体标识子系统训练器可以被配置成取决于在时间窗内和外部的帧之间的差异并取决于所采取的动作,更具体地编码动作数据,而训练视觉实体标识神经网络子系统(和动作编码神经网络)。可以基于时间窗内采取/未采取的动作使用分类损失来训练系统;时间窗可以是单个帧,即可以处理连续的帧。这些帧之间的差异表示由于代理动作而导致的变化,并且因此子系统可以学习映射帧的代理可控元素和/或根据帧来预测可以通过代理动作改变什么元素。
在一些实施方式中,可以训练视觉实体标识神经网络子系统或与强化学习神经网络系统一起使用的另一图像预处理子系统,以表示特定于诸如控制自主或半自主载具的特定任务的视觉实体。例如,视觉实体标识子系统训练器可以被配置成取决于一个或多个任务相关对象在图像中的存在与否而用分类或其他损失函数来训练视觉实体标识神经网络子系统。这些可能包括例如诸如路标的静态对象、诸如交通灯或门架安装式显示器的变化对象和/或诸如行人或骑自行车的人的移动对象。
在实施方式中,空间图(稍后称为掩码)用于生成内在,即内部,奖励,这些奖励能够由RL子系统使用来学习选项,在实施方式中一系列动作目的旨在使内在奖励最大化。
因此内在奖励生成子系统可以被配置成处理空间图(掩码)中的每一个以生成内部、内在奖励数据。在实施方式中内在奖励是从空间图的一个或多个几何特性得出的。例如在空间图包括(二元)掩码的情况下,此类几何特征可以包括掩码在x或y方向上的最大或最小位置、掩码的最大或最小面积、掩码的质心位置等。例如,使面积最大化可以对应于接近对象或其他环境特征。在空间图的内容,即图像素,未定义二元掩码的情况下,可以使用类似的度量。通常内在奖励的几何特征可以包括空间图的仿射几何特征。
存在对于每个视觉实体(e)且对于每个几何特征(m)的内在奖励。视觉实体(e)和几何特征(m)的组合可以标识RL子系统的选项(e,m)。强化学习神经网络子系统可以被配置成针对选项处理内部奖励数据,以确定选项的对应的状态动作Q值(稍后“选项Q值”)的集合。选项Q值可以被用于在执行与选项相关联的一系列动作时针对选项的动作选择策略。该一系列动作中的动作可以试图在执行选项的同时使预测的(时间折扣的)内在奖励最大化。
选项本身与空间图的几何特征相关联,即与已学习的视觉实体的几何特征相关联,这些已学习的视觉实体的几何特征本身可以表示视觉外观,从而削弱无关/背景特征,并且突出代理可操纵的特征。以环境的图像为基础,可以将选项所基于的实体,更特别地空间图,表示为图像,这能够促进人们对其内容的领会,从而促进对RL系统的行为的理解。
在实施方式中,强化学习神经网络子系统被配置成在可以由选项控制器实现的选项中的一个与可以由任务控制器实现的原子动作之间选择。选择可以由元控制器做出;选择可以是响应于元Q值,所述元Q值取决于响应于执行原子动作的选项而来自环境的预测的(时间折扣的)外在奖励,更一般地响应于针对将来的元控制器选择步骤贯彻基于元Q值的动作选择策略的预测的(时间折扣的)外在奖励。在一些实施方式中当一个选项被选择时,它被贯彻直到终止条件为止,该终止条件可以是定义数目的动作选择步骤。当一个原子动作(任务)被选择时可以对于相同数目的动作选择步骤执行原子动作,例如基于当遵循任务动作选择策略时预测的(时间折扣的)外在奖励来根据状态-动作的任务Q值进行选择。通常动作/选项选择策略可以是epsilon-贪婪,在1-ε的概率情况下选择具有最大Q值的动作,而在概率ε情况下选择随机动作;可以在训练期间随时间而减小策略的ε的值。
在一些实施方式中,强化学习(RL)神经网络子系统(代理)可以具有RL代理结构,该RL代理结构包括后面有一个或多个循环神经网络层的一个或多个卷积神经网络层,例如包括一个或多个LSTM(长短期记忆)层。RL神经网络子系统可以被配置成接收观测数据和环境奖励数据,并且可以输出用于选择要执行的动作的动作数据。可以在控制对选项/原子任务的选择的元控制器、基于外在奖励控制对原子任务的选择的任务控制器以及被配置成控制对在所选选项内的原子任务的选择的一个或多个选项控制器之间共享RL神经网络子系统。因此RL神经网络子系统可以具有单独的头以为单独的策略提供元Q值、任务Q值和选项Q值。可以通过提供表征Q值的分布的参数来提供Q值。RL神经网络子系统还可以包括缓冲器以存储表示内部奖励数据、环境奖励数据、观测数据和动作数据的经验数据,以供在训练强化学习神经网络子系统时使用。强化学习(RL)神经网络子系统可以具有诸如IMPALA(Importance-Weighted Actor-Learner,重要性加权的行动者-学习者)架构(Espeholt2018arXiv 1802.01561)的分布式架构。
在一些实施方式中,可以在彼此通信的不同子系统之间划分或者完全地拆分强化学习神经网络系统。例如,视觉实体标识神经网络子系统和/或RL神经网络子系统的功能可以每一个作为API被提供。如上所述的视觉实体标识神经网络子系统可以独立于RL神经网络子系统被使用,例如作为机器学习系统的预处理前端。类似地,如上所述的RL神经网络子系统可以采用不同类型的系统来生成用于确定内在奖励的几何特征的空间图。
还提供了一种训练如上所述的视觉实体标识神经网络子系统的方法。该方法可以包括通过视觉实体标识神经网络子系统反向传播损失函数中的一个或多个的梯度,以例如使用随机梯度下降来学习视觉实体标识神经网络子系统的参数和/或表示离散视觉实体的嵌入矢量。
还提供了一种训练如上所述的强化学习神经网络系统的方法。该方法可以包括反向传播一个或多个损失函数以学习提供选项Q值和/或元Q值和/或任务Q值的RL神经网络子系统的参数。
在广义上强化学习系统可以是选择要由与环境交互的强化学习代理执行的动作的系统。为让代理与环境交互,系统接收表征环境的当前状态的数据并且响应于所接收到的数据而选择要由代理执行的动作。在本说明书中将表征环境的状态的数据称为观测。
在一些实施方式中,环境是真实世界环境并且代理是与真实世界环境交互的机械代理。例如,代理可以是与环境交互以完成具体任务例如以定位环境中的感兴趣对象或者以将感兴趣对象移动到环境中的指定位置的机器人;或者代理可以是导航通过环境的自主或半自主陆地或空中载具。
除图像外,观测还可以包括例如对象位置数据和传感器数据中的一种或多种,以随着代理随着它与环境交互而捕获观测,例如来自图像、距离或位置传感器或来自致动器的传感器数据。在这些实施方式中,动作可以是用于控制机器人或自主或半自主陆地或空中载具的控制输入。
例如在机器人的情况下,观测还可以包括以下各项中的一个或多个:关节位置、关节速率、关节力、扭矩或加速度例如重力补偿的扭矩反馈、以及由机器人握住的物品的全局或相对姿态。
在机器人或其他机械代理或载具的情况下,观测还可以类似地包括代理的一个或多个部分的位置、线速度或角速度、力、扭矩或加速度和全局或相对姿态中的一个或多个。可以在1、2或3个维度上定义观测,并且观测可以是绝对观测和/或相对观测。
观测还可以包括例如诸如电机电流或温度信号的感测电子信号;以及例如来自相机或LIDAR传感器的图像或视频数据。
来自连续动作空间的动作数据可以包括例如机器人的一个或多个关节或另一机械代理的部分的位置、速率或力/扭矩/加速度数据。动作数据可以附加地或替换地包括电子控制数据,诸如电机控制数据或更一般地用于控制环境内的一个或多个电子设备的数据,对所述电子设备的控制对环境的观测状态有影响。例如在自主或半自主陆地或空中载具的情况下,动作可以包括用于控制载具的导航例如转向以及载具的移动例如制动和/或加速的动作。
在一些实施方式中,环境是模拟环境并且代理被实现为与该模拟环境交互的一个或多个计算机。
例如模拟环境可以是对机器人或载具的模拟,并且可以在该模拟上训练强化学习系统。例如,模拟环境可以是运动模拟环境,例如驾驶模拟或飞行模拟,并且代理是通过运动模拟导航的模拟载具。在这些实施方式中,动作可以是用于控制模拟用户或模拟载具的控制输入。
在另一示例中,模拟环境可以是视频游戏并且代理可以是玩视频游戏的模拟用户。
在另一个示例中,环境可以是蛋白质折叠环境,使得每个状态是蛋白质链的相应的状态。代理可以是用于确定如何折叠蛋白质链的计算机系统。在此示例中,动作是用于折叠蛋白质链的可能的折叠动作并且要实现的结果可以包括例如折叠蛋白质,使得蛋白质是稳定的并且使得它实现特定生物学功能。作为另一示例,代理可以是在没有人类交互的情况下自动地执行或控制由系统选择的蛋白质折叠动作的机械代理。观测可以包括蛋白质的状态的直接或间接观测和/或可以是从模拟得出的。例如观测可以包括来自模拟的蛋白质链的状态的图像。
以类似的方式环境可以是药物设计环境,使得每个状态是潜在制药化学药物的相应的状态并且代理是用于确定制药化学药物的元素和/或用于制药化学药物的合成途径的计算机系统。可以例如在模拟中基于从药物的目标得出的奖励来设计药物/合成。作为另一示例,代理可以是执行或控制药物的合成的机械代理。观测可以包括药物的状态的图像,其可以是从物理药物和/或从模拟得出的。
通常在模拟环境的情况下,观测可以包括先前描述的观测或观测类型中的一种或多种的模拟版本,并且动作可以包括先前描述的动作或动作类型中的一种或多种的模拟版本。
强化学习系统可以是作为一个或多个计算机程序实现在一个或多个位置中的一个或多个计算机上的系统,其中实现了下述系统、组件和技术。
能够在特定实施例中实现本说明书中描述的主题以便实现以下优点中的一个或多个。
如本文所描述的强化学习神经网络系统能够学习视觉实体的集合,其能够表示环境外观、对象运动以及代理操纵环境的诸如对象的各部分的能力。这些能够形成内部奖励的基础,这些奖励促进与动作的序列相关联的选项的集合的原则性构造。RL子系统或元控制器然后能够从这些中选择以使预测的外在奖励最大化。这样的系统能够学习执行其他RL系统认为难以或不可能学习的任务。因此这样的系统能够提供学习任务所需要的存储器和处理功率方面的相当大的节省。例如系统可以能够使在环境中空间上相距较远的对象/动作特征和地标特征相关联。例如已学习的视觉实体能够提供行为选项的集合,这些行为选项可由代理(RL系统)在探索期间使用以改善探索,从而产生快速更高效的学习,同时减少资源使用并改善最终结果。系统的一些示例还可以更容忍环境中或所捕获的环境的观测中的变化。这能够促进系统跨任务或跨用于实现强化学习神经网络系统的硬件更加通用。例如系统的实施方式可以更容忍传感器、致动器或用于在环境中捕获观测和/或执行动作的其他硬件中的变化。
强化学习神经网络系统的一些实施方式还能够为由系统使用的动作选择策略提供内部基础的人类可解释的表示。可以将这些单独地或与系统的观测和/或动作的表示相结合地呈现给用户,以促进用户理解动作的基础。例如,可以将取决于具体和更抽象的特征的合集的空间图或掩码呈现为视觉图。可以将这样的图单独地呈现或在从中得出特征的图像上重叠到表达通过空间图或掩码编码的概念的区域上,例如作为图像着色或以其他方式指示的分段。以这种方式,能够将由RL系统使用来指导其动作的概念在视觉上表达给人类用户。此类信息对安全和诊断目的来说可能是特别重要的。例如它可以用于确定RL系统是否正在以安全方式表现或很可能以安全方式表现和/或者它可以用于确定系统是否在正确地/按预期表现,例如用于查找故障。在例如在自主或半自主载具或机器人应用中使用该系统的情况下,这可能是重要的。例如它可以潜在地用于确定载具是否知道道路标志、交通灯、行人等。
本说明书的主题的一个或多个实施例的细节在附图和以下描述中阐明。根据说明书、附图和权利要求书,本主题的其他特征、方面和优点将变得显而易见。
附图说明
图1示出以经学习的视觉实体为基础的强化学习神经网络系统。
图2示出用于图1的强化学习神经网络系统的示例视觉实体标识神经网络子系统的细节。
图3示出用于图1的强化学习神经网络系统的示例强化学习神经网络子系统。
图4示出图1的强化学习神经网络系统的示例实施方式的细节。
图5示出用于使用图1的强化学习神经网络系统来执行任务的过程的流程图。
图6示出用于训练图1的强化学习神经网络系统的过程的流程图。
在各种附图中,相同的附图标记和标号指示相同的元件。
具体实施方式
图1示出作为计算机程序实现在一个或多个位置中的一个或多个计算机上的强化学习神经网络系统100。该系统的一些实施方式目的旨在学习系统在其中操作的环境的人类可解释的内部表示。强化学习神经网络系统100的行为因此可以以学习的视觉实体为基础。
强化学习神经网络系统100在多个时间步中的每个时间步处选择要由与环境110交互的代理102执行的动作104。为让代理102与环境110交互,系统100接收表征环境的当前状态的观测的观测数据106并且响应于所接收到的观测数据106而提供用于选择要由代理102执行的动作104的动作数据。可以例如根据动作值从预定动作的集合中选择动作104。
在每个时间步,系统100还基于环境110的当前状态和代理102在该时间步的动作104来接收表征外部奖励的环境奖励数据108。通常,外部奖励是反映执行动作104对代理102完成特定任务的效果的数值。例如,系统100可以基于朝向代理102完成诸如导航到目标位置或相对于环境中的对象执行动作的任务的进度来接收针对给定时间步的外部奖励108。
在实施方式中观测数据包括环境的一个或多个图像,该环境可以是真实世界或模拟环境。图像可以是彩色图像,例如RGB图像,但是颜色不需要对应于光或光的可见波长。
在一些应用中代理102包括与真实世界环境交互的机械代理。例如,代理102可以是与环境110交互以完成特定任务的机器人,或者代理102可以是导航通过环境的自主或半自主载具。在这些情况下,动作104可以是用于控制机器人或自主载具的控制输入。
强化学习神经网络系统100包括耦合到强化学习神经网络子系统130的视觉实体标识神经网络子系统120。视觉实体标识神经网络子系统120被配置成将环境的图像处理为观测数据以确定空间图122的集合。每个空间图通常对应于图像,可选地以不同的分辨率,并且映射离散视觉实体——即空间图的像素标识视觉实体在图像中的对应位置处的存在与否。视觉实体对应于图像像素的空间分组和/或时间分组。这些往往与环境中诸如墙壁、地板、可操纵对象、背景等的人类可解释的实体相关。它们还往往承载强化学习任务的语义含义。
强化学习神经网络子系统130接收并处理空间图122的集合和环境奖励数据108,并且在实施方式中还接收并处理观测数据106,以确定用于选择动作104的动作数据。强化学习神经网络子系统130可以直接输出动作,或者它可以参数化用于选择动作的动作选择策略的一个或多个分布,或者它可以确定用于选择动作的动作值(Q值)的集合。它可以作为诸如IMPALA(Importance-Weighted Actor-Learner),Espholt et al.,arXiv:1802.01561(Espholt等人arXiv:1802.01561的IMPALA(重要性加权演员学习者))的分布式强化学习系统被实现。强化学习神经网络子系统130使用经映射的视觉实体来为动作选择打基础。在实施方式中,动作选择涉及在选项之间选择,每个选项定义许多时间步要遵循的动作选择策略,并且因此涉及组成选项模型。
训练引擎140根据稍后描述的目标函数来控制强化学习神经网络系统100的训练。训练引擎140可以包括用于视觉实体标识神经网络子系统120和用于强化学习神经网络子系统130的单独的训练引擎,如稍后描述的。
图2示出示例视觉实体标识神经网络子系统120的细节。包括图像的观测106被提供给矢量量化器200。在一些实施方式中,这包括被配置成对于与图像相对应的空间网格204(V)的每个像素确定K路分类值的实体编码神经网络202。也就是说,空间网格的每个位置被赋予将像素标识为属于K个视觉实体中的一个的范围[1,…,K]内的值。以这种方式对像素进行分组提供图像的视觉抽象。图2示出示例输入图像106a以及视觉实体204a的对应图。
实体编码神经网络202可以包括卷积神经网络编码器,所述卷积神经网络编码器具有以与图像相同的分辨率定义空间网格的输出。可以如van den Oord 2017,“NeuralDiscrete Representation Learning”,arXiv:1711.00937(van den Oord 2017,“神经离散表示学习”,arXiv:1711.00937)中所描述的那样执行矢量量化。可以使用其他矢量量化技术;在一些实施方式中,可以在不使用矢量量化的情况下生成视觉实体的空间图。
空间图122的集合可以包括K个视觉实体中的每一个的一个空间图。例如视觉实体的独热编码可以定义实体掩码206的集合,一个相应的掩码针对每个视觉实体。例如矢量量化器200可以将每个图像素的激活指派给表示离散视觉实体中的一个的嵌入矢量。可以标识与表示激活的激活矢量最接近的嵌入矢量,并且与此矢量相对应的空间图像素用1标记;在其他空间图中针对此像素的其他输出可以用0标记以提供二元掩码。实体掩码206的集合如稍后所描述的那样被用于为强化学习神经网络子系统130确定内在奖励。
矢量量化器200被配置成基于观测来学习对视觉实体消歧。因此在实施方式中,视觉实体标识神经网络子系统120包括视觉实体标识子系统训练器240以基于来自包括全局信息、局部信息和可控信息中的一个或多个的观测的信息来训练矢量量化器200。
在实施方式中,视觉实体标识神经网络子系统120包括帧编码神经网络210,例如卷积神经网络,以处理矢量量化器200的输出,例如空间图的集合,以生成包括帧级嵌入矢量Gt的帧嵌入数据212。第一分类损失I(Gt,Gt+Δ)可以用于训练视觉实体标识神经网络子系统120,更特别地矢量量化器200,以区分从当前帧起在时间窗帧数Δ内部和外部的帧(即图像观测)。帧数Δ可以被随机地选取,但是可以被约束成大于从当前帧起的最小时间窗。最小时间窗可以定义长时间段,例如>10个帧或>20个帧;它可以具有与强化学习神经网络子系统130的展开长度或选项中的步数(稍后描述)相对应的长度。以这种方式,视觉实体标识神经网络子系统120可以学习表征“全局”信息,该“全局”信息区分与环境的状态的不同轨迹相对应的观测,即图像帧,同时忽略无关信息,例如环境中的“背景”元素。
在实施方式中,视觉实体标识神经网络子系统120还包括动作编码神经网络220,例如卷积神经网络,以处理由强化学习神经网络子系统130选择的动作104以生成包括动作嵌入222的编码动作数据。第二分类损失I((Gt,Gt+1),At)可以用于训练视觉实体标识神经网络子系统120,更特别地矢量量化器200,以区分在由(Gt,Gt+1)表示的帧之间转变的在时间步t采取的动作At和未选择的动作。以这种方式,视觉实体标识神经网络子系统120可以学习表征环境的图像观测中的可控信息。
在实施方式中,视觉实体标识神经网络子系统120还包括图像外观编码神经网络230,例如卷积神经网络,以处理包括图像的观测106以提供编码图像外观数据232。在实施方式中,编码图像外观数据232包括以与图像或空间网格204相同的空间分辨率的图像的局部颜色和/或纹理的嵌入C;图像232a示出嵌入C的示例。第三分类损失I(Vt,Ct)可以用于训练视觉实体标识神经网络子系统120,更特别地矢量量化器200,以在与在时间t处的嵌入C,Ct,对准时在时间t处的空间网格204,Vt,和在空间上未对准时在时间t处的空间网格204,Vt之间进行区分。以这种方式,视觉实体标识神经网络子系统120可以学习表征环境的图像观测中的局部信息,例如图像的具有一致颜色的区域。这能够帮助在全局和可控信息相对静态时鼓励探索环境。
第一分类损失、第二分类损失和第三分类损失可以被例如以加权和组合,并且由视觉实体标识子系统训练器240用于视觉实体标识神经网络子系统120的无监督训练。例如视觉实体标识子系统训练器240的组合损失函数,Lobs,可以是
Lobs=-αg log q(Gt+Δ|Gt)-αc log q(At|(Gt,Gt+1))-αa log q(Ct|Vt)其中αa,αa,αa表示用于全局信息项、可控信息项和外观信息项的相应的权重并且每个q(·)是分类损失。在一些实施方式中,可以将q(Gt+Δ|Gt)建模为嵌入上的余弦相似度。可选地可以在从Δ开始的一系列时间步上对log q(Gt+Δ|Gt)求平均。可以在时间步的集合上对组合损失函数求平均。
仅仅作为示例,在一个实施方式中实体编码神经网络202包括一组具有3x3核以及64个特征的3个卷积层,每个卷积层后面是ReLU非线性。这些后面是具有8个输出的1x1卷积层以及L2正则化。在一些实施方式中,空间网格204定义8个视觉实体的值。在实施方式中,卷积核的步幅为1并且空间网格204具有与输入图像相同的空间维度。帧编码神经网络210可以包括3x3卷积的堆叠,后面是用于降低输出的分辨率的具有步幅2的2x2最大池化和ReLU非线性。然后可以使输出平摊(flatten)以提供帧嵌入212。图像外观编码神经网络230可以包括具有ReLU非线性的两层8滤波器卷积神经网络。
图3示出示例强化学习神经网络子系统130。在实施方式中,视觉实体的空间图由内在奖励生成子系统300处理以生成为强化学习神经网络子系统130定义一个或多个内在奖励的内部奖励数据。内在奖励取决于空间图的几何特性并且可以从实体掩码206确定。例如几何特性可以包括视觉实体的(二元)空间图的质心的笛卡尔坐标和空间图的面积。在空间图为空的情况下,质心可以位于(0,0)并且可以将面积设定为零。可以定义奖励以用于使这些中的每一个最大化和/或最小化,在示例实施方式中为每个视觉实体定义内在奖励基于的六个几何特征。在实施方式中存在E×M个内在奖励,其中E是视觉实体的数目并且M是几何特征的数目。可以根据环境来选取视觉实体的数目;可以存在例如在范围1-20个内的视觉实体。
此类内在奖励的使用可以帮助强化学习神经网络子系统学习行为原语,诸如到达对象(使面积最大化)、避开对象(使面积最小化)、远离对象向左移动(使x最小化)等。
强化学习子系统被配置成使用内在奖励来学习选项分数,例如每个几何特征-视觉实体组合的选项Q值,这些定义选项库302。可以使用离线策略学习来训练选项Q值。选项Q值对应于强化学习子系统的相应的选项。选项根据由该选项的选项Q值所确定的动作选择策略可以对应于响应于针对N个时间步的集合的一系列观测系列而执行的一系列动作。实际上可以将选项视为包括针对该时间步的集合执行的原子动作的集合的动作原语。动作选择策略可以由选项控制器304实现以响应于观测数据106而选择动作104。动作选择策略可以包括epsilon贪婪策略;时间步的集合可以是固定数目的时间步,例如N=20个时间步。在实施方式中,动作104是从预定动作的集合中选择的。
强化学习神经网络子系统130包括元控制器310,该元控制器基于元Q值Qmeta提供在时间步输出的元动作
Figure BDA0002995012050000171
所述元动作
Figure BDA0002995012050000172
每N个时间步被重新评估(即
Figure BDA0002995012050000173
可以在N个时间步内被固定然后重新评估)。元动作选择E×M+1个可能的动作中的一个。也就是说,每N个时间步元控制器310选择E×M个选项中的一个以在接下来N个时间步执行,或者元控制器310确定应该对于接下来N个时间步执行一系列单独“原子”任务。在一些其他实施方式中,元控制器可以在对原子任务的每次选择之后重新评估。E×M个选项中的每一个均具有相应的选项Q值Qθ,m
原子任务选择可以由任务控制器320实现,该任务控制器被配置成响应于观测数据106和任务分数或Q值Qtask而选择动作104。
元Q值、任务Q值和选项Q值可以由Q值神经网络子系统330响应于观测数据106而确定。Q值神经网络子系统330可以具有核神经网络,所述核神经网络包括后面是诸如LSTM层的循环神经网络层的一个或多个卷积神经网络层。在一些实施方式中,Qmeta、Qtask和Qe,m的值可以由核神经网络的单独的头或层提供。
分数或Q值可以作为来自神经网络的输出被提供,或者神经网络可以提供定义可以从中选择分数或Q值的概率分布的输出。可以通过选取具有最高分数或Q值的选择来做出取决于分数或Q值的选择。替换地,可以针对预定的集合的每个可能的选择确定概率以定义跨可能的选择的概率分布,例如通过用softmax函数来处理相应的分数或Q值,并且可以通过从这种概率分布采样来做出选择。可以根据epsilon-贪婪策略做出由选项控制器304、元控制器310或任务控制器320做出的选择,该epsilon-贪婪策略在概率∈情况下做出随机选择,而在概率1-∈情况下基于确定的分数或Q值做出选择。
强化学习神经网络子系统130由强化学习训练引擎340使用离线策略学习基于存储在共享重放缓冲器342中的数据来被端对端训练,该共享重放缓冲器存储历史观测数据、动作数据和来自环境的外部奖励数据。在实施方式中,强化学习训练引擎340被配置成异步地训练Q值,即对应的策略和或值函数。Q值神经网络子系统330被训练以使通过奖励数据108表征的来自环境的预期的(折扣的)外部奖励最大化。选项Q值输出被训练以使内在奖励rint最大化。可以使用一系列强化学习技术中的任一种。在训练中的早期,选项库用作有用的探索策略,其经验稍后被Qtask函数纳入以使用共享重放缓冲器来学习外在任务离线策略。
在一些实施方式中,Q值神经网络子系统330为Qmeta、Qtask确定Q值并且为Qe,m确定E×M个Q值。每个Q值具有对应的动作选择策略πmeta、πtask、πe×m;每N步使用Qmeta,同时在每一步使用Qtask和Qθ,m。可以将在时间t的Q值定义如下:
Figure BDA0002995012050000181
其中γ是小于1的折扣系数,rt′是在时间t′来自环境的外部奖励,
Figure BDA0002995012050000191
是在时间t′的内在奖励,并且通过对于Qmeta遵循πmeta、通过对于Qtask遵循πtask并通过对于Qe,m遵循πe×m来评估期望。
可以通过使对应的损失函数Lmeta、Ltask
Figure BDA0002995012050000192
最小化来训练从Q值神经网络子系统330输出的每个Q值。可以使用先前存储在重放缓冲器342中的数据来执行训练。所存储的数据可以包括表征元组(st,(et,mt,at),rt,st+1)的数据,其中st包括表征在时间t的观测的数据,例如图像,(et,mt)表征在时间t选择的选项(其中et=E+1可以表示一系列原子动作),at表征在时间t采取的动作,该动作导致状态转变为st+1并且来自环境的奖励由rt表征。对于来自在时间τ存储的重放缓冲器的数据的样本,Ltask损失的估计由下式给出
Figure BDA0002995012050000193
其中U是展开长度,即在计算中使用的超出τ的时间步的数目,Qtask是从Q值神经网络子系统330输出的估计Q值,并且最大值是在时间t+U可用动作上的Qtask的最大值。用Qmeta和Qe,m取代Qtask,能够类似地确定Lmeta
Figure BDA0002995012050000194
的估计。对于强化学习神经网络子系统130,可以将这些损失组合成总强化学习损失LRL
Figure BDA0002995012050000195
其中λtask、λmeta和λbank是权重。
图4示出图1-3的强化学习神经网络系统100的示例实施方式的细节,其中与先前描述的元素相似的元素具有相似的附图标记。图4示出观测图像106a的空间图204a的集合;在图像204a中每个区域对应于具有对视觉实体的时间一致标签的像素。诸如图像204a的一个或多个图像可以由系统提供以促进人类对系统的行为的理解,因为已学习的行为以视觉实体为基础,即可以理解系统在它执行任务时“看到”什么。在实施方式中,由强化学习神经网络子系统130处理的空间图可以由除图2中图示的以外的视觉实体标识神经网络子系统提供,例如由外部视觉子系统提供。仅仅作为示例,在一个实施方式中Q值神经网络子系统330包括具有后面是LSTM层的512个隐藏单元输出的三层卷积堆叠,并且每个Q值由dueling网络架构(Wang等人arXiv1511.06581)提供。
图5示出用于使用图1-4的强化学习神经网络系统100来执行任务的过程的流程图。过程接收包括环境的图像的观测(步骤500)并且用视觉实体标识神经网络子系统120来处理图像以确定视觉实体空间图的集合(步骤502)。视觉实体空间图的集合和观测然后由强化学习神经网络子系统130处理以选择动作序列的选项或一系列单独动作(步骤504)。系统然后根据选择输出动作数据以用于控制代理102执行动作(步骤506),并且过程循环回到开始。
图6示出用于训练图1-4的强化学习神经网络系统100的过程的流程图。由系统接收包括环境的图像的观测数据(步骤600)。基于此,Q值神经网络子系统330确定Qmeta的值,并且元控制器310例如与epsilon-贪婪策略一起使用Qmeta,以确定元动作以选择选项或一系列单独任务(步骤602)。
过程然后在接下来N个时间步执行选项或单独任务。因此图像被处理以确定图像中的视觉实体的空间图的集合,其进而用于确定如先前所描述的内在奖励的集合(步骤604)。过程然后使用针对所选选项的动作选择策略——即基于对应的选项Q值——或者如果一系列单独任务被选择为元动作,则使用单独任务的Q值,Qtask,来选择动作。过程然后输出所选动作的动作数据以控制代理执行动作(步骤608),并且对于环境的下一个状态,接收观测数据,即另一图像,和奖励数据(步骤610)。然后将表征转变的元组的数据存储在重放缓冲器342中(步骤612)。
过程然后可以反向传播观测损失Lobs的梯度以更新视觉实体标识神经网络子系统120的神经网络参数,并且可以反向传播强化学习损失LRL的梯度以更新强化学习神经网络子系统130的神经网络参数(步骤614)。在执行步骤604-614N次之后,过程循环回到步骤602以选择下一个元动作。在一些实施方式中,可以在每N步之后而不是在每一步之后反向传播梯度。
对于要配置以执行特定操作或动作的一个或多个计算机的系统,意味着该系统已在其上安装了软件、固件、硬件或它们的组合,所述软件、固件、硬件或它们的组合在操作中导致系统执行操作或动作。对于将被配置以执行特定操作或动作的一个或多个计算机程序,意味着该一个或多个程序包括指令,该指令在由数据处理装置执行时使该装置执行该操作或动作。
本说明书中描述的主题和功能操作的实施例可用数字电子电路、用有形地具体实现的计算机软件或固件、用计算机硬件包括本说明书中公开的结构及其结构等同物或者用它们中的一个或多个的组合加以实现。本说明书中描述的主题的实施例可作为一个或多个计算机程序——即在有形非暂时性存储介质上编码以供由数据处理装置执行或者控制数据处理装置的操作的计算机程序指令的一个或多个模块——被实现。可替选地或此外,可将程序指令编码在人工生成的传播信号上,所述传播信号例如为机器生成的电、光学或电磁信号,该信号被生成来对信息进行编码以便传输到适合的接收器装置以供由数据处理装置执行。计算机储存介质可以是机器可读储存设备、机器可读储存基板、随机或串行存取存储器设备,或它们中的一个或多个的组合。计算机储存介质然而不是传播信号。
术语“数据处理装置”包含用于处理数据的所有种类的装置、设备和机器,作为示例包括可编程处理器、计算机或多个处理器或计算机。装置可包括专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。装置除了包括硬件之外还可包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。
计算机程序(其还可以被称为或者描述为程序、软件、软件应用、模块、软件模块、脚本或代码)可用任何形式的编程语言编写,所述编程语言包括编译或解释语言,或声明性或过程语言,并且它可被以任何形式部署,包括作为独立程序或者作为模块、组件、子例行程序或适合于在计算环境中使用的其它单元。计算机程序可以但不必对应于文件系统中的文件。可在保持其它程序或数据(例如,存储在标记语言文档中的一个或多个脚本)的文件的一部分中、在专用于所述程序的单个文件中或者在多个协调文件(例如,存储一个或多个模块、子程序或代码的部分的文件)中存储程序。可将计算机程序部署成在一个计算机上或者在位于一个站点处或者跨越多个站点分布和通过通信网络互连的多个计算机上执行。
如本说明书中所使用的,“引擎”或“软件引擎”指代提供与输入不同的输出的软件实现的输入/输出系统。引擎可以是功能性的编码块,诸如库、平台、软件开发套件(“SDK”)或对象。可将每个引擎实现在包括一个或多个处理器和计算机可读介质的任何适当类型的计算设备上,所述计算设备例如为服务器、智能电话、平板计算机、笔记本计算机、音乐播放器、电子书阅读器、膝上型或台式计算机、PDA、智能电话或其它固定或便携式设备。附加地,可以将这些引擎中的两个或更多个实现在相同的计算设备上或者在不同的计算设备上。
本说明书中描述的过程和逻辑流程可通过执行一个或多个计算机程序的一个或多个可编程计算机来执行以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可由专用逻辑电路执行,并且装置还可作为专用逻辑电路被实现,所述专用逻辑电路例如为FPGA(现场可编程门阵列)或ASIC(专用集成电路)。例如,处理和逻辑流程可以由图形处理单元(GPU)执行并且装置也可以被实现为图形处理单元(GPU)。
适合于执行计算机程序的计算机作为示例包括可基于通用微处理器或专用微处理器或两者,或任何其它种类的中央处理单元。一般地,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的元件是用于执行或者实行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。一般地,计算机还将包括或者在操作上耦合以从用于存储数据的一个或多个大容量储存设备——例如,磁盘、磁光盘或光盘——接收数据,或者将数据转移到所述一个或多个大容量储存设备,或者兼而有之。然而,计算机不必具有此类设备。此外,计算机可被嵌入在另一设备中,所述另一设备例如为移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或便携式储存设备,例如,通用串行总线(USB)闪存驱动器等等。
适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,作为示例包括半导体存储器设备,例如,EPROM、EEPROM和闪速存储器设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD ROM和DVD-ROM盘。处理器和存储器可由专用逻辑电路补充,或者并入在专用逻辑电路中。
为了提供与用户的交互,可在计算机上实现本说明书中描述的主题的实施例,所述计算机具有用于向用户显示信息的显示设备以及用户可用来向该计算机提供输入的键盘和指点设备,所述显示设备例如CRT(阴极射线管)或LCD(液晶显示器)监视器,所述指点设备例如鼠标或轨迹球。其它种类的设备也可用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以任何形式接收来自用户的输入,包括声学、语音或触觉输入。此外,计算机可通过向由用户使用的设备发送文档并且从由用户使用的设备接收文档来与用户交互;例如,通过响应于从web浏览器接收到的请求而向用户的客户端设备上的web浏览器发送web页面。
可在计算系统中实现本说明书中描述的主题的实施例,所述计算系统包括后端组件(例如,作为数据服务器),或者包括中间件组件(例如,应用服务器),或者包括前端组件(例如,具有用户可用来与本说明书中描述的主题的实施方式交互的图形用户界面或Web浏览器的客户端计算机),或者包括一个或多个此类后端、中间件或前端组件的任何组合。系统的组件可通过任何形式或介质的数字数据通信(例如,通信网络)来互连。通信网络的示例包括局域网(LAN)和广域网(WAN),例如互联网。
计算系统可包括客户端和服务器。客户端和服务器一般地彼此远离并且通常通过通信网络来交互。客户端和服务器的关系借助于在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。
虽然本说明书包含许多具体实施方式细节,但是这些不应该被解释为对任何发明的或可能要求保护的东西的范围构成限制,而是相反被解释为可以特定于特定发明的特定实施例的特征的描述。还可在单个实施例中相结合地实现在本说明书中在单独的实施例的上下文中描述的某些特征。相反地,还可单独地或者按照任何适合的子组合在多个实施例中实现在单个实施例的上下文中描述的各种特征。此外,尽管特征可以在上面被描述为按照某些组合起作用并且甚至最初如此要求保护,然而来自要求保护的组合的一个或多个特征可在一些情况下被从该组合中除去,并且要求保护的组合可以针对子组合或子组合的变体。
类似地,虽然按照特定次序在附图中描绘操作,但是这不应该被理解为要求按照所示的特定次序或者按照顺序次序执行此类操作,或者执行所有图示的操作以实现所希望的效果。在某些情况下,多任务处理和并行处理可以是有利的。此外,上述的实施例中的各种系统模块和组件的分离不应该被理解为在所有实施例中要求这种分离,并且应该理解的是,所描述的程序组件和系统一般地可被一起集成在单个软件产品中或者包装到多个软件产品中。
已经描述了主题的特定实施例。其它实施例在以下权利要求的范围内。例如,权利要求中叙述的动作可被以不同的次序执行并仍然实现所希望的结果。作为一个示例,附图中描绘的过程不一定要求所示的特定次序或顺序次序以实现所希望的结果。在某些实施方式中,多任务处理和并行处理可以是有利的。
要求保护的是:

Claims (18)

1.一种强化学习神经网络系统,包括:
用于接收定义环境的观测的观测数据的输入,其中,所述观测包括一个或多个图像;
用于从所述环境接收环境奖励数据的输入,所述环境奖励数据定义响应于执行动作而接收到的外在奖励;
提供动作数据以用于选择要由在所述环境中行动的代理执行的动作的输出;
视觉实体标识神经网络子系统,所述视觉实体标识神经网络子系统被配置成处理所述观测数据以确定针对所述一个或多个图像的空间图的集合,每个空间图表示学习的离散视觉实体的集合中的一个学习的离散视觉实体,每个空间图包括图像素,其中,每个图像素标识所述一个或多个图像的对应区域是否与针对所述空间图的所述离散视觉实体相关联;以及
强化学习神经网络子系统,所述强化学习神经网络子系统被配置成处理来自所述空间图的集合的数据和所述环境奖励数据以提供所述动作数据。
2.根据权利要求1所述的强化学习神经网络系统,其中,所述视觉实体识别神经网络子系统包括实体编码神经网络以及矢量量化器,所述实体编码神经网络被配置成将所述观测数据编码为每个图像素的激活,所述矢量量化器被配置成将每个图像素的所述激活指派给表示所述离散视觉实体中的一个离散视觉实体的嵌入矢量以将该图像素分类为所述离散视觉实体的集合中的所述一个离散视觉实体。
3.根据权利要求2所述的强化学习神经网络系统,进一步包括图像外观编码神经网络以及视觉实体标识子系统训练器,所述图像外观编码神经网络被配置成将来自所述观测数据的图像外观数据编码为与所述图像素相对应的编码图像外观数据,所述视觉实体标识子系统训练器被配置成利用损失函数来训练所述视觉实体标识神经网络子系统,所述损失函数取决于所述编码图像外观数据的分布与每个图像素的所述激活之间的差异。
4.根据权利要求2或3所述的强化学习神经网络系统,进一步包括帧编码神经网络以及视觉实体标识子系统训练器,所述帧编码神经网络被配置成将所述空间图的集合编码为当前帧的帧嵌入数据,所述视觉实体标识子系统训练器被配置成训练所述视觉实体标识神经网络子系统以区分在与所述当前帧相距运动时间窗帧数内部和外部的帧。
5.根据权利要求2、3或4所述的强化学习神经网络系统,进一步包括帧编码神经网络,动作编码神经网络以及视觉实体标识子系统训练器,所述帧编码神经网络被配置成将所述空间图的集合编码为当前帧的帧嵌入数据,所述动作编码神经网络被配置成将所述动作数据编码为表示在动作时间窗内采取的一个或多个动作的编码动作数据,所述视觉实体标识子系统训练器被配置成利用取决于所述编码动作数据的损失函数来训练所述视觉实体标识神经网络子系统。
6.根据任一项前述权利要求所述的强化学习神经网络系统,进一步包括内在奖励生成子系统,所述内在奖励生成子系统被配置成处理来自所述空间图的集合的所述数据以生成一个或多个内在奖励的内部奖励数据,其中,所述一个或多个内在奖励取决于所述空间图的内容的一个或多个几何特性,并且其中,所述强化学习神经网络子系统被配置成处理所述内部奖励数据以提供所述动作数据。
7.根据权利要求6所述的强化学习神经网络系统,其中,所述内在奖励生成子系统被配置成针对每个空间图生成所述内部奖励数据,并且其中,所述一个或多个内在奖励包括所述空间图的图像素值的面积、位置、以及质心中的一个或多个的度量。
8.根据权利要求6或7所述的强化学习神经网络系统,其中,所述强化学习神经网络子系统被配置成针对每个空间图的所述几何特性中的每一个确定选项Q值;并且选择由空间图中的一个和所述几何特性中的一个的组合定义的选项,并且响应于一系列观测而提供一系列动作的动作数据,其中,所述一系列动作中的动作使用所选择的选项的所述选项Q值来选择。
9.根据权利要求8所述的强化学习神经网络系统,其中,所述强化学习神经网络子系统被配置成,每N个动作选择步骤,评估元Q值,所述元Q值取决于来自针对所述选项中的每个选项和针对单独动作的所述外在奖励的预测返回,并且根据所述元Q值确定是选择一系列动作的所述选项中的一个还是一系列单独动作。
10.根据权利要求8或9所述的强化学习神经网络系统,其中,所述强化学习神经网络子系统包括一个或多个卷积神经网络层连同一个或多个循环神经网络层、提供所述Q值的神经网络头的集合、以及用于存储表示用于训练所述强化学习神经网络子系统的所述内部奖励数据、所述环境奖励数据、所述观测数据和所述动作数据的经验数据的缓冲器。
11.根据任一项前述权利要求所述的强化学习神经网络系统,所述强化学习神经网络系统被配置成输出所述空间图中的一个或多个以用于人类解释。
12.根据权利要求1至11中的任一项所述的视觉实体标识神经网络子系统。
13.根据权利要求1至11中的任一项所述的强化学习神经网络子系统,包括用于接收所述观测数据和环境奖励数据的一个或多个输入,用于提供所述动作数据的输出以及用于接收定义所述空间图的集合的数据的输入。
14.一种使用根据权利要求1-11中的任一项所述的强化学习神经网络系统的强化学习的方法,其中,所述代理是在现实世界环境中行动的机械代理。
15.一种训练根据权利要求3-5中的任一项所述的视觉实体标识神经网络子系统的方法,所述方法包括通过所述视觉实体标识神经网络子系统反向传播所述损失函数中的一个或多个的梯度以学习所述视觉实体标识神经网络子系统的参数和表示所述离散视觉实体的嵌入矢量。
16.一种训练根据权利要求8-11中的任一项所述的强化学习神经网络系统的方法,所述方法包括反向传播一个或多个损失函数以学习一个或多个神经网络的参数,所述一个或多个神经网络具有表示所述选项Q值和/或所述元Q值的输出。
17.一种包括一个或多个计算机和一个或多个存储设备的系统,所述存储设备存储指令,所述指令在由所述一个或多个计算机执行时,使所述一个或多个计算机执行根据权利要求14-16中的任一项所述的相应方法的操作。
18.一个或多个存储指令的计算机存储介质,所述指令在由一个或多个计算机执行时,使所述一个或多个计算机实现根据权利要求1-13中的任一项所述的系统或执行根据权利要求14-16中的任一项所述的方法的操作。
CN201980063799.XA 2018-09-27 2019-09-27 以学习的视觉实体为基础的强化学习神经网络 Active CN112771542B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862737850P 2018-09-27 2018-09-27
US62/737,850 2018-09-27
PCT/EP2019/076154 WO2020064994A1 (en) 2018-09-27 2019-09-27 Reinforcement learning neural networks grounded in learned visual entities

Publications (2)

Publication Number Publication Date
CN112771542A true CN112771542A (zh) 2021-05-07
CN112771542B CN112771542B (zh) 2024-03-05

Family

ID=68136366

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980063799.XA Active CN112771542B (zh) 2018-09-27 2019-09-27 以学习的视觉实体为基础的强化学习神经网络

Country Status (4)

Country Link
US (1) US10748039B2 (zh)
EP (1) EP3834138A1 (zh)
CN (1) CN112771542B (zh)
WO (1) WO2020064994A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115319739A (zh) * 2022-08-02 2022-11-11 中国科学院沈阳自动化研究所 一种基于视觉机械臂抓取工件方法

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018083667A1 (en) * 2016-11-04 2018-05-11 Deepmind Technologies Limited Reinforcement learning systems
US11604941B1 (en) * 2017-10-27 2023-03-14 Deepmind Technologies Limited Training action-selection neural networks from demonstrations using multiple losses
WO2019241145A1 (en) 2018-06-12 2019-12-19 Intergraph Corporation Artificial intelligence applications for computer-aided dispatch systems
US11120303B2 (en) * 2018-12-17 2021-09-14 King Fahd University Of Petroleum And Minerals Enhanced deep reinforcement learning deep q-network models
US11308362B2 (en) * 2019-03-26 2022-04-19 Shenzhen Keya Medical Technology Corporation Method and system for generating a centerline for an object, and computer readable medium
US20200394553A1 (en) * 2019-06-13 2020-12-17 International Business Machines Corporation Predicting functional tags of semantic role labeling
US11715117B2 (en) * 2019-12-11 2023-08-01 Paypal, Inc. Assessing technologies using image-based learning algorithms
CN111597224B (zh) * 2020-04-17 2023-09-15 北京百度网讯科技有限公司 结构化信息的生成方法、装置、电子设备和存储介质
CN111524187B (zh) * 2020-04-22 2023-06-02 北京三快在线科技有限公司 一种视觉定位模型的训练方法及装置
CN111738886B (zh) * 2020-06-30 2021-04-30 上海松鼠课堂人工智能科技有限公司 基于神经网络的学习报告分析系统
CN114474742A (zh) * 2022-02-11 2022-05-13 哈尔滨工业大学 一种基于深度强化学习的电路自动3d打印方法
WO2023222884A1 (en) * 2022-05-19 2023-11-23 Deepmind Technologies Limited Machine learning systems with counterfactual interventions

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120114178A1 (en) * 2010-11-09 2012-05-10 Juri Platonov Vision system and method of analyzing an image
US20140180598A1 (en) * 2007-02-16 2014-06-26 Bodymedia, Inc. Systems and method using an individuals predicted type to diagnose a medical condition
US20160025499A1 (en) * 2014-07-22 2016-01-28 Toyota Motor Engineering & Manufacturing Notlh America, lnc. Intelligent mobility aid device and method of navigating and providing assistance to a user thereof
CN106056213A (zh) * 2015-04-06 2016-10-26 谷歌公司 使用目标和观察来选择强化学习动作
CA2901596A1 (en) * 2015-08-26 2017-02-26 Applied Brain Research Inc. Methods and systems for performing reinforcement learning in hierarchical and temporally extended environments
CN106970615A (zh) * 2017-03-21 2017-07-21 西北工业大学 一种深度强化学习的实时在线路径规划方法
CN107203753A (zh) * 2017-05-25 2017-09-26 西安工业大学 一种基于模糊神经网络和图模型推理的动作识别方法
CN108227735A (zh) * 2016-12-22 2018-06-29 Tcl集团股份有限公司 基于视觉飞行自稳定的方法、计算机可读介质和系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6473851B1 (en) * 1999-03-11 2002-10-29 Mark E Plutowski System for combining plurality of input control policies to provide a compositional output control policy
CN108701252B (zh) * 2015-11-12 2024-02-02 渊慧科技有限公司 使用优先化经验存储器训练神经网络
CN117371492A (zh) * 2016-11-04 2024-01-09 渊慧科技有限公司 一种计算机实现的方法及其系统
US11417235B2 (en) * 2017-05-25 2022-08-16 Baidu Usa Llc Listen, interact, and talk: learning to speak via interaction
US10366166B2 (en) * 2017-09-07 2019-07-30 Baidu Usa Llc Deep compositional frameworks for human-like language acquisition in virtual environments
US11562287B2 (en) * 2017-10-27 2023-01-24 Salesforce.Com, Inc. Hierarchical and interpretable skill acquisition in multi-task reinforcement learning

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140180598A1 (en) * 2007-02-16 2014-06-26 Bodymedia, Inc. Systems and method using an individuals predicted type to diagnose a medical condition
US20120114178A1 (en) * 2010-11-09 2012-05-10 Juri Platonov Vision system and method of analyzing an image
US20160025499A1 (en) * 2014-07-22 2016-01-28 Toyota Motor Engineering & Manufacturing Notlh America, lnc. Intelligent mobility aid device and method of navigating and providing assistance to a user thereof
CN106056213A (zh) * 2015-04-06 2016-10-26 谷歌公司 使用目标和观察来选择强化学习动作
CA2901596A1 (en) * 2015-08-26 2017-02-26 Applied Brain Research Inc. Methods and systems for performing reinforcement learning in hierarchical and temporally extended environments
CN108227735A (zh) * 2016-12-22 2018-06-29 Tcl集团股份有限公司 基于视觉飞行自稳定的方法、计算机可读介质和系统
CN106970615A (zh) * 2017-03-21 2017-07-21 西北工业大学 一种深度强化学习的实时在线路径规划方法
CN107203753A (zh) * 2017-05-25 2017-09-26 西安工业大学 一种基于模糊神经网络和图模型推理的动作识别方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
TEJAS D. KULKARNI.ET.: "Hierarchical Deep Reinforcement Learning: Integrating Temporal Abstraction and Intrinsic Motivation", 《MACHINE LEARNING (CS.LG)》, pages 1 - 14 *
柯圣财等: "一种基于视觉词典优化和查询扩展的图像检索方法", 《自动化学报》, no. 01, pages 101 - 107 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115319739A (zh) * 2022-08-02 2022-11-11 中国科学院沈阳自动化研究所 一种基于视觉机械臂抓取工件方法

Also Published As

Publication number Publication date
CN112771542B (zh) 2024-03-05
US20200104645A1 (en) 2020-04-02
WO2020064994A1 (en) 2020-04-02
EP3834138A1 (en) 2021-06-16
US10748039B2 (en) 2020-08-18

Similar Documents

Publication Publication Date Title
CN112771542B (zh) 以学习的视觉实体为基础的强化学习神经网络
US20210192358A1 (en) Graph neural network systems for behavior prediction and reinforcement learning in multple agent environments
CN110651279B (zh) 利用学徒来训练动作选择神经网络
US11663441B2 (en) Action selection neural network training using imitation learning in latent space
US20210271968A1 (en) Generative neural network systems for generating instruction sequences to control an agent performing a task
EP3709271A1 (en) Image depth prediction neural networks
JP7087006B2 (ja) 画像埋め込みを使用するロボティックエージェントのためのポリシーコントローラの最適化
CN112292693A (zh) 强化学习系统训练返回函数的元梯度更新
JP7471397B2 (ja) 道路シーンにおける多様な長期将来軌道のシミュレーション
US11580429B2 (en) Reinforcement learning using a relational network for generating data encoding relationships between entities in an environment
US11714996B2 (en) Learning motor primitives and training a machine learning system using a linear-feedback-stabilized policy
CN112106073A (zh) 使用网格代码执行导航任务
KR20220058598A (ko) 멀티-에이전트 시뮬레이션들
KR20230035403A (ko) 준-지도된(semi-supervised) 키포인트 기반 모델
KR20230025885A (ko) 관측 임베딩을 제어하는 보조 태스크를 사용한 액션 선택 신경망 트레이닝
CN112840359A (zh) 通过使用时间值传递在长时间尺度上控制代理
CN115066686A (zh) 使用对规划嵌入的注意操作生成在环境中实现目标的隐式规划
US20230061411A1 (en) Autoregressively generating sequences of data elements defining actions to be performed by an agent
CN115867918A (zh) 使用相对熵q学习训练动作选择系统
WO2024056892A1 (en) Training policy neural networks in simulation using scene synthesis machine learning models
AU2022335654A1 (en) Autoregressively generating sequences of data elements defining actions to be performed by an agent
CN117859135A (zh) 自回归地生成定义要由代理执行的动作的数据元素序列

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant