CN110730970B - 优化策略控制器的方法和系统 - Google Patents

优化策略控制器的方法和系统 Download PDF

Info

Publication number
CN110730970B
CN110730970B CN201880038469.0A CN201880038469A CN110730970B CN 110730970 B CN110730970 B CN 110730970B CN 201880038469 A CN201880038469 A CN 201880038469A CN 110730970 B CN110730970 B CN 110730970B
Authority
CN
China
Prior art keywords
image
robot
embedding
presentation
agent
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.)
Active
Application number
CN201880038469.0A
Other languages
English (en)
Other versions
CN110730970A (zh
Inventor
Y.切博塔
P.塞尔马尼特
H.林奇
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of CN110730970A publication Critical patent/CN110730970A/zh
Application granted granted Critical
Publication of CN110730970B publication Critical patent/CN110730970B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • 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/008Artificial life, i.e. computing arrangements simulating life based on physical entities controlled by simulated intelligence so as to replicate intelligent life forms, e.g. based on robots replicating pets or humans in their appearance or behaviour
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0205Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • G05B13/027Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using neural networks only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Robotics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mechanical Engineering (AREA)
  • Medical Informatics (AREA)
  • Automation & Control Theory (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Manipulator (AREA)
  • Feedback Control In General (AREA)

Abstract

提供了用于优化策略控制器以控制与环境交互以执行机器人任务的机器人代理的系统、方法和装置。方法之一包括使用神经网络优化策略控制器,该神经网络生成环境图像的数字嵌入和执行机器人任务的变体的另一代理的演示图像的演示序列。

Description

优化策略控制器的方法和系统
对相关申请的交叉引用
本申请要求于2017年9月20日提交的美国临时专利申请序列号No.62/561,133的优先权,其公开内容通过引用整体并入本文。
技术领域
本说明书涉及强化学习。
背景技术
在强化学习系统中,代理响应于接收表征环境的当前状态的观察,通过执行由强化学习系统选择的动作来与环境交互。
一些强化学习系统根据神经网络的输出,响应于接收给定的观察,选择要由代理执行的动作。神经网络是机器学习模型,它使用一层或多层非线性单元来预测接收的输入的输出。一些神经网络除输出层外还包括一个或多个隐藏层。每个隐藏层的输出用作网络中下一层、即下一隐藏层或输出层的输入。网络的每个层根据相应的参数集合的当前值从接收的输入生成输出。
发明内容
本说明书描述了一种系统,该系统被实现为在一个或多个位置的一个或多个计算机上的计算机程序,其优化策略控制器,该策略控制器用于选择将由与环境交互的机器人代理执行的动作。具体地,策略控制器可以用于选择动作,使得机器人代理可以成功地执行机器人任务,例如,对象抓取任务、对象移动任务、导航任务或需要代理与真实环境交互以用于一些特定目的的其他任务。在一些情况下,策略控制器是以轨迹为中心的控制器,例如时变高斯控制器。在其他情况下,策略控制器是深度神经网络。
可以在特定实施例中实现本说明书中描述的主题,以实现以下优点中的一个或多个。本说明书中描述的系统可以利用神经网络,其被训练来生成数字嵌入,该数字嵌入对于某些变换是不变的,例如对于诸如视点、遮挡、运动模糊、照明、背景或对象实例的变换是不变的,以有效地优化策略控制器,以选择要由机器人代理执行的操作。因此,系统可以仅使用原始视频演示进行监视来优化控制器,即无需任何明确的联合级别对应关系或其他标记的数据。具体地,该系统既可以训练生成嵌入的时间对比神经网络,又可以仅使用原始视频数据来优化策略控制器。例如,对诸如视图变换的因素的学习的不变性可以改善其他代理在模仿运动时的性能。具体地,所描述的系统可以优化策略控制器,以便即使在机器人代理执行任务时仅仅由机器人代理拍摄的第一人图像可用时,控制代理仅从执行该任务的另一代理的第三人图像来执行任务。即,在代理执行任务时,即使当演示图像的视点与由机器人代理捕获的图像的视点不同时,系统也可以有效地优化策略控制器。
本说明书的主题的一个或多个实施例的细节在附图和以下描述中阐述。根据说明书、附图和权利要求书,本主题的其他特征、方面和优点将变得显而易见。
附图说明
图1示出了示例强化学习系统。
图2示出了被配置为训练时间对比神经网络的示例训练系统。
图3示出了由两个不同模态捕获的观察的示例三元组。
图4示出了观察的另一示例三元组,包括由单个模态捕获的锚(anchor)观察、肯定观察和否定观察。
图5是用于训练时间对比神经网络的示例处理的流程图。
图6是用于优化策略控制器的示例处理的流程图。
在各个附图中,相同的附图标记和标号表示相同的元件。
具体实施方式
图1示出了示例强化学习系统100,其优化用于控制机器人代理112的策略控制器110。强化学习系统100是被实现为实现在下面描述的系统、组件和技术的一个或多个位置中的一个或多个计算机上的计算机程序的系统的示例。机器人代理112可以是例如机器人臂或更复杂的机器人。
策略控制器110是用于在机器人代理112与环境交互时选择将由机器人代理112执行的动作的控制器。具体地,策略控制器110接收表征环境的当前状态的数据,并生成定义将由机器人代理112执行的动作的输出。数据可以是当前状态的特征,并且输出可以定义机器人代理的控制输入,例如要施加到机器人代理的一个或多个关节的扭矩。例如,对于每个关节,输出可以是可以从中采样扭矩的分布的参数。
在一些情况下,当前状态的特征是表征环境的状态的低维特征,例如,低维特征向量或特征矩阵,并且策略控制器110是以轨迹为中心的控制器,例如,时变高斯控制器。例如,特征可以包括对于机器人代理112的每个关节的相应的当前关节角度和当前关节速度。在一些情况下,当前状态的特征还可以包括表征代理外部的环境的特征,例如特征向量。例如,特征向量可以是由代理112的相机捕获的环境的图像的嵌入,例如,由时间对比(timecontrastive)神经网络130生成的嵌入,这将在下面更详细地描述。
在一些其他情况下,当前状态的特征是高维特征,例如当代理与环境交互时由机器人代理112捕获的图像,并且策略控制器110是深度神经网络,例如卷积神经网络或循环(recurrent)神经网络。
对于策略控制器110来说,控制机器人代理112意味着系统100或另一系统使机器人代理112执行由策略控制器110的输出所定义的动作,即通过向机器人代理112或机器人代理112的控制系统提供控制输入。
系统100优化策略控制器110,使得策略控制器110能够被用于控制机器人代理112以使机器人代理112成功执行机器人任务,例如,对象抓取任务、对象移动任务(例如,将水从一个容器倒入另一容器或将一个容器从一个位置移到另一位置)、导航任务或需要代理与现实世界环境进行交互以用于一些特定目的的另一任务。
具体地,系统100使用执行指定任务的变体的另一代理(例如,另一机器人代理或人类演示者)的演示图像120的演示序列来优化策略控制器110。即,每个演示图像120是在另一代理执行特定任务的变体时捕获的另一代理的图像。通常,演示序列将包括从另一代理首先开始执行任务时开始到另一代理成功完成任务结束的图像。例如,可以在演示代理执行任务的同时以规则的时间间隔捕获序列中的演示图像120。指定任务的变体可以与要由机器人代理112执行的指定任务相同,或者可以在某些方面不同于要由机器人代理112执行的任务。例如,如果要被控制器优化的任务是将对象移动到环境中的目标位置,则在演示图像中执行的任务的变体可以移动与机器人代理112将要执行移动任务的对象稍有不同的对象,例如与代理112将执行移动任务的对象具有不同的颜色、具有不同的形状或具有其他不同属性的对象。
系统100使用时间对比神经网络130处理演示序列中的每个演示图像120,以生成每个演示图像的相应演示嵌入132。
时间对比神经网络120是以下神经网络:其已经被训练以接收环境的输入图像并处理输入图像,以生成表征如输入图像中所描绘的环境的状态的输入图像的数字嵌入,例如向量或数字值的其他有序集合。由于时间对比神经网络130已经被训练的方式,因此由神经网络130生成的数字嵌入表征在输入图像中描绘的场景的性质,而对于某些变换(例如,诸如视点、遮挡、运动模糊、照明、背景或对象实例的变换)不变。将在下面参考图2-5更详细地描述训练时间对比神经网络130以实现这一点。
然后,系统100可以使用演示嵌入132来迭代更新策略控制器110。
具体地,在优化处理的每次迭代中,系统100通过执行使用当前策略控制器(即,当前迭代的策略控制器)选择的动作,获得执行指定任务的机器人代理的机器人图像140的机器人序列。机器人序列中的每个机器人图像140对应于演示序列中的相应演示图像,即,在执行任务期间与演示图像之一大致同时地拍摄的。系统100可以通过使(或通过另一系统使)机器人代理112执行由当前策略控制器的输出定义的动作来获得机器人序列。
然后,系统100使用时间对比神经网络130来处理机器人序列中的每个机器人图像140,以为每个机器人图像生成相应的机器人嵌入142。
然后,优化引擎150使用演示嵌入132和机器人嵌入142来更新当前策略控制器。具体地,优化引擎150通过执行强化学习技术的迭代来更新当前策略控制器,以优化奖励函数,奖励函数对于每个演示图像120取决于演示图像120的演示嵌入132与对应机器人图像140的机器人嵌入142之间的距离。下面将参考图6更详细地描述基于这些距离更新策略控制器。
通过以这种方式迭代地更新策略控制器110,系统100使得对应的演示与机器人或机器人嵌入之间的距离减小,并且机器人代理112对指定任务的性能得以改善。换句话说,策略控制器110被更新,使得由机器人代理112执行的动作准确地“模仿”在演示图像120中由演示代理执行的动作。由于演示代理成功地执行了任务,因此准确地模仿由演示代理执行的动作使机器人代理112成功执行任务。
一旦满意机器人代理112对机器人任务的执行(例如,对应演示和机器人嵌入之间的距离满足一个或多个预定准则)或当达到一些其他终止准则(例如,指定时间量已过去)时,系统100可以终止此迭代更新。
如下面将要描述的,时间对比神经网络130已经以无监督方式被训练,即完全根据未标记的图像序列被训练。然后,训练后的时间对比神经网络130用于提供对策略控制器110的优化的监督,而无需任何外部监督。因此,机器人代理112仅根据执行任务的另一代理的视频或其他图像序列数据就可以实现对机器人任务的高质量执行,而无需任何外部监督。因此可以提高处理效率。
由于上述数字嵌入的属性,例如对视点不变,所以即使从与演示图像120不同的视角捕获机器人图像140,系统100也可以有效地更新策略控制器110。因此可以改进该系统的使用。在图1的示例中,机器人图像140来自第一人视角,即,当机器人代理112执行任务时由代理112的相机捕获的视图。另一方面,演示图像120是从第三人视角捕获的,即,正观察在演示图像120中描绘的代理的第二代理将看到的视图。但是,在一些其他情况下,可以从同一视点捕获机器人图像和演示图像。
一旦控制器110已经被优化,则系统可以在代理执行机器人任务时使用优化的控制器110来控制代理112,或者可以将指定优化后的控制器110的数据——例如,指定优化后的控制器110的参数或权重的数据——提供给用于控制代理112的另一系统。
图2示出了示例训练系统200,该示例训练系统200使用时间对比损失的梯度来训练时间对比神经网络130。训练系统200可以被实现为在一个或多个位置的一个或多个计算机上的计算机程序。
具体地,如上所述,时间对比神经网络130被配置为接收表征环境的状态的输入观察,并处理输入观察以生成环境的状态的数字嵌入。数字嵌入是数字值的有序集合,例如,浮点值或量化浮点值的向量。表征环境的状态的观察可以是环境的图像,或从环境的视频中截取的帧。在一些实施方式中,观察还可以包括从环境收集的其他种类的数据,例如,触觉传感器数据或音频数据。通常,环境包括正在环境中移动或与环境中的其他对象交互以执行特定任务(例如,机器人操纵任务、液体倒入任务或机器人模仿任务)的代理(例如,机器人代理或人类)。
系统200可以在代理与环境交互的同时收集的训练数据上训练神经网络130。代理可以是机器人代理112、在演示图像中描绘的演示代理,也可以是其他代理。
通常,一旦已训练了时间对比神经网络130,系统200或系统100就可以使用训练后的时间对比神经网络130来优化图1的策略控制器110。
时间对比神经网络130包括深度神经网络204,其后是嵌入神经网络层206。嵌入神经网络层206是全连接神经网络层,例如具有等于嵌入中的数值数量的多个单元的全连接层。
在一些实施方式中,深度神经网络204可以包括Inception模型的一部分,随后是一个或多个卷积神经网络层、空间softmax层和全连接层。在深度神经网络204中包含的Inception模型的一部分可以是直到“Mixed_5d”层为止的Inception模型,该模型在https://github.com/tensorflow/models/blob/master/research/slim/nets/inception_v3.py上可用的开源代码中示出。在C.Szegedy等人的文章“Rethinkingtheinception architecture for computer vision.”CoRR,abs/2522.00567,2025中详细描述了Inception模型的示例,其内容至少涉及到Inception模型,通过引用并入本文。对于从先前层接收的激活图中的每个特征尺寸(例如,在209x209x32激活图中,图像为209x209且存在32个特征尺寸),空间softmax层被配置为输出被最大激活特征的空间坐标。在C.Finn等人中的文章“Learning visual feature spaces for robotic manipulationwith deep spatialautoencoders.”CoRR,abs/2509.06293,2025中详细描述了空间softmax层的示例,其内容至少涉及空间softmax层,以引用方式并入本文。
在一些情况下,系统200可以从头开始训练时间对比神经网络130。在一些其他情况下,可以对时间对比神经网络130的一部分进行预训练并将其用作进一步训练的基准(baseline)(例如,深度神经网络204可以具有来自在对象识别任务上训练的Inception模型的预训练权重)。
作为训练时间对比神经网络130的一部分,训练系统200获得训练输入数据,包括训练观察的多个“三元组”。在一些情况下,训练观察包括通过多个模态从多个不同视点捕获的观察。在其他情况下,训练观察包括通过单个模态从单个视点捕获的观察。通常,模态指定输入捕获设备,输入捕获设备从特定视点捕获表征环境的状态的观察(例如,图像、音频或视频)。输入捕获设备可以是例如相机、音频捕获设备、视频记录器或触觉输入捕获设备。
具体地,在一些实施方式(以下称为多视图实施方式)中,观察的每个三元组包括:(i)由第一模态捕获的锚观察208;(ii)由第二不同模态捕获的与锚观察208共同出现(即基本上在同一时间发生)的肯定观察210;以及(iii)由第一模态捕获的与锚观察不共同出现的否定观察212。在一些情况下,观察是图像,其中第一模态是在第一视点处的相机,并且第二模态是在第二不同视点处的相机。然而,通常,第一模态和第二模态可以是相同或不同类型的两个不同模态,例如,相机、音频捕获设备、触觉输入捕获设备等。在图3中示出了由两个模态在两个不同视点捕获的锚观察、肯定观察和否定观察的示例(如下所述)。
在一些实施方式中,对于包括在训练输入数据中的观察的所有三元组,第一模态和第二模态对是相同的。
在一些实施方式中,可以通过第一模态和第二模态对来捕获训练输入数据中的观察的一些三元组,而通过不同的第一模态和第二模态对来捕获训练输入数据中的观察的一些其他三元组。即,在模态是在各个位置处的相机的示例中,捕获到肯定观察和否定观察的相机的相对位置可以在不同的三元组之间变化。
在一些其他实施方式(以下称为单视图实施方式)中,观察的每个三元组包括:(i)模态捕获的锚观察208,(ii)模态捕获的肯定观察210,位于锚观察208的裕量时间邻域(或边界范围)内,以及(iii)模态捕获的否定观察212,位于第一观察的裕量时间邻域之外,即,否定观察212在第一观察的否定范围内。锚观察208的裕量范围定义锚观察208周围的预定时间窗。例如,假设锚观察208在时间步(timestep)t被捕获,则锚观察208的裕量范围包括从时间步t-n到时间步t+n捕获的观察,其中n是时间步的预定数量。n可以是少量的时间步,诸如一、二、五或十秒。换句话说,(裕量)时间邻域或裕量范围表示预定时间窗,该预定时间窗定义锚观察被捕获时周围的时间窗或时间段(即,时间步t周围的时间窗)。肯定观察210在该预定时间窗内由模态来捕获(即,在该示例中,在t-n与t+n之间的时间步捕获)。否定观察212在该预定时间窗之外由模态捕获(即,在该示例中,在时间步t-n之前或在时间步t+n之后被捕获)。在图4中示出了在单个视点处由单个模态捕获的锚观察、肯定观察和否定观察的示例(如下所述)。
训练系统200在训练输入数据中的三元组上训练时间对比神经网络130,以通过最小化“三元组损失”从参数的初始值确定时间对比神经网络130的参数的训练后的值。对于观察的给定的三元组,三元组损失取决于肯定观察和否定观察的嵌入之间的距离以及肯定观察和锚观察的嵌入之间的距离。具体地,在一些实施方式中,系统200训练时间对比神经网络130以最小化以下损失函数:
其中f()表示时间对比神经网络130,即f(x)是时间对比神经网络130针对给定观察x生成的嵌入。时间对比神经网络130可以将观察x嵌入到诸如d维欧几里得空间的嵌入空间中。是锚观察208,/>是肯定观察210,并且/>是否定观察。N是训练输入数据中观察的三元组的数目。α是常数值,它定义损失函数中两个距离之间的期望裕量。
该三元组损失在本说明书中也将被称为“镜损失(mirror loss)”或“时间对比损失”。
具体地,对于包括锚观察、肯定观察和否定观察的给定三元组,训练系统200确定三元组损失的梯度,然后使用该梯度来更新时间对比神经网络130的参数的值。
具体地,系统200根据网络参数的当前值,使用时间对比神经网络130处理锚观察208,以生成第一嵌入214。系统200根据网络参数的当前值,使用时间对比神经网络130处理肯定观察210,以生成第二嵌入216。系统200根据网络参数的当前值,使用时间对比神经网络130处理否定观察212,以生成第三嵌入218。
系统200然后根据(i)第一嵌入214和第二嵌入216之间的第一距离以及(ii)第一嵌入214和第三嵌入218之间的第二距离来确定三元组损失220。
系统200可以使用常规的神经网络训练技术,例如基于梯度下降的训练技术,调整网络参数的当前值。例如,系统反向传播目标函数的梯度,即三元组损失的梯度,以确定时间对比神经网络130的每个网络参数的相应更新值。
通过更新网络参数的值以最小化三元组损失,系统200确保训练后的时间对比神经网络130能够生成对于某些变换(例如,视点、遮挡、运动模糊、照明、背景或对象实例)不变的数字嵌入。因此,由训练后的时间对比神经网络130生成的嵌入可以被用来改进需要环境状态的准确表征的各种任务(包括上面参考图3描述的任务)的性能。对于诸如视点、遮挡、运动模糊、照明、背景或对象实例的变换的不变性因此可以改进机器人代理的性能。
图3示出了观察的示例三元组,包括用于训练时间对比神经网络102的锚观察302、肯定观察304和否定观察306。观察302-306是由两个不同模态(和从两个不同的角度)拍摄的图像。与例如涉及人标记的布置相比,这种布置可以更便宜、更简单并且更实用。
在该示例中,第一相机从第一视点捕获将液体倒入杯中的(代理的)手的图像序列308。代理可以是人类或机器人代理。第一视点(视图1)可以是第一人视角,即,由将液体倒入杯中的第一代理的相机将看到的捕获的视图。同时,第二相机从第二视点捕获同一只手的图像序列310。第二视点(视图2)可以是第三方视图,即正在观察将液体倒入杯中的第一代理的第二代理将看到的视图。
从图像序列308中选择第一图像作为锚图像302。可以从图像序列308中随机选择锚图像302。与锚图像302同时被拍摄、但是由第二相机拍摄的第二图像被选择为肯定图像304。从图像序列308中选择第三图像作为否定图像306。可以从第一相机在锚图像302的时间邻域内(即,在预定时间窗内)捕获的图像——例如,在锚图像302之后的两秒、五秒或十秒拍摄的图像——中随机选择否定图像306。
如图3所示,在时间步t捕获第一图像或锚图像302,并且在时间步t+2捕获第三图像或否定图像306,其在锚图像302的时间邻域内。否定图像306与锚图像302处于相同的序列308。通过在锚图像302、肯定图像304和否定图像306的三元组上进行训练,时间对比神经网络102可以学习捕获随时间变化但在各视图(诸如手的姿势和倒入的液体的量)之间保持一贯、同时对诸如背景或照明的无关变换不变的性质。
图4示出了观察的另一示例三元组,包括由单个模态(从单个视点)捕获的锚观察402、肯定观察404和否定观察406。
在该示例中,单个相机从单个视点(视图1,其是自视图)捕获将液体倒入目标容器中的手的图像序列408。来自序列408的第一图像被选择作为锚图像402。从在锚图像402周围的裕量范围内的图像中选择第二图像或肯定图像404。可以在裕量范围内随机选择肯定图像404。锚图像402的裕量范围定义锚图像402周围的预定时间窗。例如,如图4所示,在时间步tanchor处捕获锚图像402,并且锚图像402的裕量范围包括从时间步tanchor-2到时间步tanchor+2捕获的图像。
从锚图像402的否定范围、即锚图像402的裕量范围之外的范围内的图像中选择第三图像或否定图像406。
图像402、404和406的三元组可以被用作训练输入数据,以使用上面参考图2详细描述的技术来训练时间对比神经网络130。通过使用以这种方式选择的图像来训练时间对比神经网络130,系统100确保神经网络130可以学习每个观察中的属性以及交互的性质。在图4的示例中,神经网络130可以学习区分手的不同姿势,例如,手是否接触白杯子。神经网络130还可以学习白杯子的倾斜度,或当前目标容器中的液体量或其粘度。
图5是用于使用由多个模态捕获的观察来训练时间对比神经网络的示例处理500的流程图。神经网络被配置为接收表征环境的状态的输入观察,并处理输入观察以生成环境的状态的数字嵌入。为了方便起见,处理500被描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,根据本说明书适当编程的训练系统,例如,图2的训练系统200,可以执行处理500。
系统可以在观察的不同的三元组上重复执行处理500以训练神经网络。
系统获得由第一模态捕获的第一(或锚)观察(步骤502)。第一观察可以是图像,并且所述第一模态可以是在第一视点处的相机。
系统获得与第一观察同时发生并被第二不同模态捕获的第二(或肯定)观察(步骤504)。第二观察可以是图像,并且第二模态可以是在第二视点处的相机。
系统获得由第一模态捕获的不与第一观察同时发生的第三(或否定)观察(步骤506)。
在一些情况下,系统可以从由第一模态捕获的、在第一观察的时间邻域内的观察中随机选择第三观察。
在一些其他情况下,系统可以从第一模态在第一观察的时间邻域内捕获的观察序列中,选择相对于第一观察为硬否定(hard negative)的观察作为第三观察。硬否定观察是在时间邻域内具有距离第一观察的嵌入最远的嵌入的观察。
系统确定三元组损失,该三元组损失使用第一观察作为锚示例,使用第二观察作为肯定示例,并使用第三观察作为否定示例(步骤508)。
具体地,系统根据网络参数的当前值使用神经网络处理第一观察以生成第一嵌入。系统根据网络参数的当前值使用神经网络处理第二观察,以生成第二嵌入。系统根据网络参数的当前值使用神经网络处理第三观察,以生成第三嵌入。系统根据(i)第一嵌入和第二嵌入之间的第一距离以及(ii)第一嵌入和第三嵌入之间的第二距离来确定三元组损失。
例如,对于观察的给定的三元组,系统可以如下确定三元组损失:
其中,f()是将观察x嵌入到嵌入空间(例如d维欧几里得空间)中并且可以表示正在训练的神经网络的嵌入函数,是锚观察,/>是肯定观察,而/>是否定观察。
然后,系统更新网络参数的值以最小化三元组损失(步骤510)。系统可以使用常规的神经网络训练技术,例如基于梯度下降的训练技术,来更新网络参数的值。例如,系统反向传播三元组损失的梯度以确定神经网络的每个网络参数的相应更新值。
图6是用于优化策略控制器的示例处理600的流程图。为了方便起见,处理600被描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,根据本说明书适当编程的强化学习系统,例如,图1的强化学习系统100,可以执行处理600。
系统获得演示序列,演示序列包括执行指定任务的变体的另一代理的演示图像(步骤602)。如上所述,其他代理可以是精通执行任务的任何适当的代理。例如,另一代理可以是人类演示者或已被训练执行任务或已被硬编码以执行任务的另一机器人代理。指定任务的变体可以与要由代理执行的指定任务相同,或可以在某些方面不同于要由代理执行的任务。例如,如果任务是将对象移动到环境中的目标位置,则在演示图像中执行的任务的变体可以移动与机器人代理将要执行移动任务的对象略有不同的对象。
系统使用训练后的时间对比神经网络来处理演示序列中的每个演示图像,以为每个演示图像生成相应演示嵌入(步骤604)。演示嵌入是相应演示图像的数字嵌入,其中,演示嵌入表征在相应演示图像中所描绘的环境状态。
然后,系统重复执行步骤606至610,以优化策略控制器,该策略控制器用于在机器人代理执行机器人(指定的)任务时控制机器人代理。
系统获得机器人序列(步骤606)。机器人序列是通过执行使用当前策略控制器选择的动作来执行指定任务的机器人代理的机器人图像序列。例如,该系统或另一系统可以使机器人代理(i)通过使用当前策略控制器重复选择动作并指示机器人代理执行每个选择的动作来执行任务,以及(ii)在执行任务的同时,使用机器人代理的相机传感器定期捕获图像。机器人序列中的每个机器人图像对应于演示序列中的相应演示图像,即,在执行任务期间与演示图像中的一个大约同时拍摄的。
系统使用时间对比神经网络来处理机器人序列中的每个机器人图像,以为每个机器人图像生成相应机器人嵌入(步骤608)。机器人嵌入是相应机器人图像的数字嵌入,其中,机器人嵌入表征在相应机器人图像中所描绘的环境状态。
系统更新当前策略控制器(步骤610)。具体地,系统通过执行强化学习技术的迭代来更新策略控制器,以优化、即最大化奖励功能,对于每个演示图像,该奖励功能取决于演示图像的演示嵌入与对应机器人图像的机器人嵌入之间的距离。也就是说,当对应嵌入之间的距离更短时,给定演示图像–对应机器人图像对的奖励就更高。这种奖励函数可以使能有效的强化学习,这对于现实世界的机器人应用是实用的。
换句话说,系统为每个演示图像-对应机器人图像对生成奖励,并使用强化学习技术,将奖励作为输入以更新当前策略控制器,即,使用强化学习技术来更新当前策略控制器,其更新策略控制器以增加收到的奖励。系统可以使用将奖励作为输入的任何适当的强化学习技术来执行优化步骤。例如,强化学习技术可以是例如PI2的无模型技术、例如LQR的基于模型的技术、或例如PILQR的组合基于模型和无模型算法的技术。
在一些实施方式中,对演示图像和对应机器人图像的奖励基于演示图像的演示嵌入与对应机器人图像的机器人嵌入之间的欧几里得距离。例如,奖励函数可以包括作为欧几里得距离的平方的欧几里得距离项。作为另一示例,奖励函数可以包括Huber型损失项,该Huber型损失项是常数值与欧几里得距离的平方之间的和的平方根,该欧几里得距离是演示图像的演示嵌入与对应机器人图像的机器人嵌入之间的欧几里得距离。在这些实施方式中的一些中,奖励函数R是欧几里得距离项与Huber型损失项的加权和,并满足:
其中,vt是演示序列中第t位置的演示图像的演示嵌入,wt是机器人序列中第t位置的机器人图像的机器人嵌入,α和β是固定的加权参数,并且γ是小的正常数值(smallpositive constant value)。
对于要配置为执行特定操作或动作的一个或多个计算机的系统,意味着系统已在其上安装了软件、固件、硬件或它们的组合,其在操作中使系统执行操作或动作。对于要配置为执行特定操作或动作的一个或多个计算机程序,意味着一个或多个程序包括当由数据处理装置执行时使装置执行操作或动作的指令。
本说明书中描述的主题和功能操作的实施例可以在数字电子电路中、在有形体现的计算机软件或固件中、在计算机硬件中实现,包括本说明书中公开的结构及其结构等同物,或者以它们中的一个或多个的组合体现。本说明书中描述的主题的实施例可以实现为一个或多个计算机程序,即,在有形非暂时性存储介质上编码的一个或多个计算机程序指令模块,用于由数据处理装置执行或控制数据处理装置的操作。替代地或另外地,程序指令可以在例如机器生成的电、光或电磁信号的人工生成的传播信号上编码,其被生成以编码信息,用于传输到合适的接收器设备以由数据处理装置执行。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备、或它们中的一个或多个的组合。然而,计算机存储介质不是传播信号。
术语“数据处理装置”包括用于处理数据的所有类型的装置、设备和机器,包括例如可编程处理器、计算机或多个处理器或计算机。该装置可以包括专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除了硬件之外,该装置还可以包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、或者它们的一个或多个的组合的代码。
计算机程序(也可以被称为或描述为程序、软件、软件应用、应用程序、模块、软件模块、脚本或代码)可以用任何形式的编程语言编写,包括编译或解释语言、或声明或过程性语言;并且它可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程或适用于计算环境的其他单元。程序可以但不必对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分中,例如,存储在标记语言文档中的一个或多个脚本,专用于所讨论的程序的单个文件中,或者存储在多个协调文件中,所述协调文件例如存储一个或多个模块、子程序或代码部分的文件。可以部署计算机程序以在一个计算机上或在位于一个站点上或跨多个站点分布并通过数据通信网络互连的多个计算机上执行。
如本说明书中所用,“引擎”或“软件引擎”是指软件实现的输入/输出系统,其提供与输入不同的输出。引擎可以是编码的功能块,诸如库、平台、软件开发工具包(“SDK”)或对象。可以在包括一个或多个处理器和计算机可读介质的任何适当类型的计算设备(例如,服务器、移动电话、平板电脑、笔记本计算机、音乐播放器、电子书阅读器、便携式计算机或台式计算机、PDA、智能电话或其他固定或便携式设备)上实现每个引擎。另外,两个或更多个引擎可以在同一计算设备上或在不同的计算设备上实现。
本说明书中描述的处理和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过对输入数据进行操作并生成输出来执行功能。处理和逻辑流程也可以实现为专用逻辑电路(例如FPGA(现场可编程门阵列)或ASIC(专用集成电路))。例如,处理和逻辑流程可以由装置执行,并且装置可以实现为图形处理单元(GPU)。
适合于执行计算机程序的计算机例如可以基于通用或专用微处理器或两者,或任何其他种类的中央处理单元。通常,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行或运行指令的中央处理单元和用于存储指令和数据的一个或多个存储器设备。通常,计算机将包括或可操作地耦合以从用于存储数据的一个或多个大容量存储设备接收数据或将数据传输到一个或多个大容量存储设备或两者,所述大容量存储设备例如磁盘、磁光盘或光盘。但是,计算机不必需这样的设备。此外,计算机可以嵌入在例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或便携式存储设备(例如,通用串行总线(USB)闪存驱动)等的另一设备中。
适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD ROM和DVD-ROM盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。
为了提供与用户的交互,本说明书中描述的主题的实施例可以在计算机上实现,所述计算机具有:显示设备,例如CRT(阴极射线管)或LCD(液晶显示器)监视器,用于向用户显示信息;以及键盘和指示设备(例如,鼠标或轨迹球),用户可通过其向计算机提供输入。其他类型的设备也可用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以以包括声学、语音或触觉输入的任何形式接收来自用户的输入。另外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档,例如,通过响应于从web浏览器接收的请求将网页发送到用户设备上的web浏览器,与用户交互。
本说明书中描述的主题的实施例可以在计算系统中实现,该计算系统包括:后端组件,例如作为数据服务器;或者包括中间件组件,例如应用服务器;或者包括前端组件,例如,具有图形用户界面或网络浏览器的客户端计算机,用户可通过其与本说明书中描述的主题的实现进行交互;或者包括一个或多个这样的后端、中间件或前端组件的任何组合。系统的组件可以通过例如通信网络的任何形式或介质的数字数据通信互连。通信网络的示例包括局域网(LAN)和广域网(WAN),例如因特网。
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且典型地通过通信网络进行交互。客户端和服务器的关系借助于在各个计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。
虽然本说明书包含许多具体的实现细节,但是这些不应被解释为对任何发明的范围或可能要求保护的范围的限制,而是作为可以特定于特定发明的特定实施例的特征的描述。在单独实施例的上下文中在本说明书中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合在多个实施例中实现。此外,尽管特征可以在上面描述为以某些组合起作用并且甚至最初如此要求保护,但是在一些情况下可以从组合中切除来自要求保护的组合的一个或多个特征,并且要求保护的组合可以针对子组合或子组合的变化。
类似地,虽然以特定顺序在附图中描绘并且在权利要求中叙述了操作,但是这不应该被理解为要求以所示的特定顺序或按顺序执行这些操作,或者执行所有示出的操作以达到期望的效果。在某些情况下,多任务处理和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中都需要这种分离,并且应当理解,所描述的程序组件和系统通常可以集成在单个软件产品中或打包成多个软件产品。
已经描述了主题的特定实施例。其他实施例在所附权利要求的范围内。例如,权利要求中记载的动作可以以不同的顺序执行并且仍然实现期望的结果。作为一个示例,附图中描绘的处理不一定需要所示的特定顺序或按顺序来实现期望的结果。在一些情况下,多任务处理和并行处理可能是有利的。

Claims (23)

1.一种优化策略控制器的方法,该策略控制器用于选择要由与环境交互的机器人代理执行以执行指定任务的动作,该方法包括:
获得执行指定任务的变体的另一代理的演示图像的演示序列;
使用时间对比神经网络处理演示序列中的每个演示图像,以生成每个演示图像的相应演示嵌入,其中时间对比神经网络已被训练为接收环境的输入图像并处理输入图像以生成输入图像的数字嵌入,其表征在输入图像中所描绘的环境的状态;
通过执行使用当前策略控制器选择的动作,获得执行指定任务的机器人代理的机器人图像的机器人序列,其中,机器人代理在指定任务的执行期间的时间处的每个机器人图像对应于所述另一代理在指定任务的变体的执行期间的相应演示图像;
使用时间对比神经网络处理机器人序列中的每个机器人图像,以为每个机器人图像生成相应机器人嵌入;以及
通过执行强化学习技术的迭代来更新当前策略控制器,以优化奖励函数,对于每个演示图像,奖励函数取决于演示图像的演示嵌入与对应机器人图像的机器人嵌入之间的距离。
2.根据权利要求1所述的方法,其中,另一代理是人类演示者。
3.根据权利要求1所述的方法,其中,另一代理是不同的机器人代理。
4.根据权利要求1至3中的任一项所述的方法,其中,策略控制器是以轨迹为中心的控制器。
5.根据权利要求4所述的方法,其中,策略控制器是时变高斯控制器。
6.根据权利要求1至3中任一项所述的方法,其中,强化学习技术是PILQR技术。
7.根据权利要求1至3中任一项所述的方法,其中,奖励函数包括欧几里得距离项,该欧几里得距离项是演示图像的演示嵌入与对应机器人图像的机器人嵌入之间的欧几里得距离的平方。
8.根据权利要求1至3中任一项所述的方法,其中,奖励函数包括Huber型损失项,该Huber型损失项是常数值与欧几里得距离的平方之间的和的平方根,该欧几里得距离是演示图像的演示嵌入和对应机器人图像的机器人嵌入之间的欧几里得距离。
9.根据权利要求1至3中的任一项所述的方法,其中,奖励函数满足:
其中vt是演示序列中第t位置的演示图像的演示嵌入,wt是机器人序列中第t位置的机器人图像的机器人嵌入,α和β是固定权重参数,并且γ是小的正常数值。
10.根据权利要求1至3中任一项所述的方法,其中,从与机器人序列中的图像不同的视点捕获演示序列中的图像。
11.根据权利要求10所述的方法,其中,从相对于另一代理的第三方视角捕获演示序列中的图像,并且从相对于机器人代理的第一方视角捕获机器人序列中的图像。
12.根据权利要求1至3中任一项所述的方法,其中,对应机器人图像是在机器人序列中与演示图像在演示序列中的位置处于相同位置的机器人图像。
13.根据权利要求1至3中任一项所述的方法,其中,时间对比神经网络具有多个网络参数,并且其中,所述方法还包括:
训练时间对比神经网络以生成数字嵌入,包括:
获得由第一模态捕获的环境的第一图像;
获得其捕获与第一图像的捕获同时出现并由第二不同模态捕获的第二图像;
获得由第一模态捕获的其捕获与第一图像的捕获不同时出现的第三图像;
确定使用第一图像作为锚示例、第二图像作为肯定示例且第三图像作为否定示例的三元组损失的梯度;以及
使用三元组损失的梯度来更新网络参数的当前值。
14.根据权利要求13所述的方法,其中,第一模态是在第一视点处的相机,并且其中,第二模态是在第二不同视点处的相机。
15.根据权利要求13所述的方法,其中,第三图像在第一图像的时间邻域内。
16.根据权利要求15所述的方法,其中,获得第三图像包括:
从在第一图像的时间邻域内由第一模态捕获的图像中随机选择第三图像。
17.根据权利要求15所述的方法,其中,获得第三图像包括:
从在第一图像的时间邻域内由第一模态捕获的图像中选择相对于第一图像为硬否定的图像。
18.根据权利要求13所述的方法,其中,确定三元组损失的梯度包括:
根据网络参数的当前值,使用时间对比神经网络处理第一图像,以生成第一嵌入;
根据网络参数的当前值,使用时间对比神经网络处理第二图像,以生成第二嵌入;
根据网络参数的当前值,使用时间对比神经网络处理第三图像,以生成第三嵌入;以及
根据(i)第一嵌入和第二嵌入之间的第一距离以及(ii)第一嵌入和第三嵌入之间的第二距离来确定三元组损失。
19.根据权利要求13所述的方法,其中,第一图像、第二图像和第三图像是与环境交互的所述另一代理的图像。
20.根据权利要求13所述的方法,其中,第一图像、第二图像和第三图像是与环境交互的机器人代理的图像。
21.根据权利要求1所述的方法,还包括使用优化后的策略控制器来控制机器人代理。
22.一种优化策略控制器的系统,包括一个或多个计算机和一个或多个存储设备,所述存储设备存储指令,当所述指令由一个或多个计算机执行时,使所述一个或多个计算机执行权利要求1-21中任一项的相应方法的操作。
23.一种或多种计算机存储介质,存储指令,当所述指令被一个或多个计算机执行时,使所述一个或多个计算机执行权利要求1-21中任一项的相应方法的操作。
CN201880038469.0A 2017-09-20 2018-09-20 优化策略控制器的方法和系统 Active CN110730970B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762561133P 2017-09-20 2017-09-20
US62/561,133 2017-09-20
PCT/US2018/052078 WO2019060632A1 (en) 2017-09-20 2018-09-20 OPTIMIZING POLICY CONTROL DEVICES FOR ROBOTIC AGENTS USING IMAGE INTEGRATIONS

Publications (2)

Publication Number Publication Date
CN110730970A CN110730970A (zh) 2020-01-24
CN110730970B true CN110730970B (zh) 2024-03-05

Family

ID=63794721

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880038469.0A Active CN110730970B (zh) 2017-09-20 2018-09-20 优化策略控制器的方法和系统

Country Status (5)

Country Link
US (2) US11559887B2 (zh)
EP (1) EP3616129A1 (zh)
JP (1) JP7087006B2 (zh)
CN (1) CN110730970B (zh)
WO (1) WO2019060632A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7035734B2 (ja) * 2018-03-30 2022-03-15 富士通株式会社 強化学習プログラム、強化学習方法、および強化学習装置
GB2577312B (en) * 2018-09-21 2022-07-20 Imperial College Innovations Ltd Task embedding for device control
KR102194282B1 (ko) * 2019-05-17 2020-12-23 네이버 주식회사 포즈 유사도 판별 모델 생성방법 및 포즈 유사도 판별 모델 생성장치
CN110900598B (zh) * 2019-10-15 2022-09-23 合肥工业大学 机器人三维运动空间动作模仿学习方法和系统
US11501165B2 (en) * 2020-03-04 2022-11-15 International Business Machines Corporation Contrastive neural network training in an active learning environment
JP6725930B1 (ja) * 2020-04-08 2020-07-22 株式会社エクサウィザーズ 液体秤量方法、制御装置、コンピュータプログラム及び学習方法
US20230330846A1 (en) * 2020-10-01 2023-10-19 Deepmind Technologies Limited Cross-domain imitation learning using goal conditioned policies
CN112847362B (zh) * 2021-01-05 2022-09-20 江汉大学 一种基于图像矩的搬运机器人视觉伺服控制方法
CN112975968B (zh) * 2021-02-26 2022-06-28 同济大学 基于第三视角可变主体演示视频的机械臂模仿学习方法
WO2023025607A1 (en) * 2021-08-24 2023-03-02 Deepmind Technologies Limited Autoregressively generating sequences of data elements defining actions to be performed by an agent
CN113838042B (zh) * 2021-09-30 2023-11-10 清华大学 双机械臂操作问答方法、装置、电子设备和存储介质
DE102021211185B4 (de) 2021-10-05 2024-05-02 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung und Verfahren zum Steuern eines Roboters

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE602009000644D1 (de) * 2009-02-27 2011-03-03 Honda Res Inst Europe Gmbh Roboter mit automatischer Auswahl von aufgabenspezifischen Darstellungen zur Imitationserlernung
WO2017019555A1 (en) * 2015-07-24 2017-02-02 Google Inc. Continuous control with deep reinforcement learning
US10127694B2 (en) * 2016-11-18 2018-11-13 Adobe Systems Incorporated Enhanced triplet embedding and triplet creation for high-dimensional data visualizations
US10322510B2 (en) * 2017-03-03 2019-06-18 Futurewei Technologies, Inc. Fine-grained object recognition in robotic systems
US20180260414A1 (en) * 2017-03-10 2018-09-13 Xerox Corporation Query expansion learning with recurrent networks
CN106897714B (zh) * 2017-03-23 2020-01-14 北京大学深圳研究生院 一种基于卷积神经网络的视频动作检测方法
US10832062B1 (en) * 2018-09-28 2020-11-10 Zoox, Inc. Image embedding for object tracking

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Pierre Sermanet 等.Time-Contrastive Networks: Self-Supervised Learning from Multi-View Observation.《CORNELL UNIVERSITY LIBRARY》.2017,第486-487页. *
童亮 等.强化学习在机器人路径规划中的应用研究.《计算机仿真》.2013,第357-361页. *

Also Published As

Publication number Publication date
WO2019060632A1 (en) 2019-03-28
EP3616129A1 (en) 2020-03-04
JP7087006B2 (ja) 2022-06-20
US11559887B2 (en) 2023-01-24
CN110730970A (zh) 2020-01-24
US20230150127A1 (en) 2023-05-18
JP2020530602A (ja) 2020-10-22
US20200276703A1 (en) 2020-09-03

Similar Documents

Publication Publication Date Title
CN110730970B (zh) 优化策略控制器的方法和系统
US11734847B2 (en) Image depth prediction neural networks
CN110062934B (zh) 使用神经网络确定图像中的结构和运动
US11557085B2 (en) Neural network processing for multi-object 3D modeling
CN110168560B (zh) 用于场景理解和生成的方法、系统和介质
CN113039563A (zh) 学习生成用于训练神经网络的合成数据集
US11714996B2 (en) Learning motor primitives and training a machine learning system using a linear-feedback-stabilized policy
US11853895B2 (en) Mirror loss neural networks
CN112313043B (zh) 自我监督的机器人对象交互
JP2019523504A (ja) ドメイン分離ニューラルネットワーク
US20230419521A1 (en) Unsupervised depth prediction neural networks
JP2020502665A (ja) ターゲット・ドメイン画像へのソース・ドメイン画像の変換
US20210073997A1 (en) Future semantic segmentation prediction using 3d structure
CN110268338B (zh) 使用视觉输入进行代理导航
US20230281966A1 (en) Semi-supervised keypoint based models
JP7494316B2 (ja) ブートストラッピングされた潜在表現を使用する自己教師付き表現学習
EP4191545A1 (en) Device and method with gaze estimating
CN117408866A (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