【技术实现步骤摘要】
用于选择动作的系统和方法
[0001]本申请是申请日为2017年10月10日,申请号为201780074261.X,专利技术名称为“用于选择动作的神经网络的系统、方法和存储介质”的专利技术专利申请的分案申请。
[0002]相关申请的交叉引用
[0003]本申请要求2016年10月10日提交的美国临时申请序列号62/406,363的优先权。该在先申请的公开内容被认为是本申请的公开内容的一部分,并且通过引用结合在本申请的公开内容中。
[0004]本说明书涉及选择由强化学习智能体执行的动作。
技术介绍
[0005]强化学习智能体通过接收表征环境的当前状态的观察并且作为响应执行动作来与环境交互。
[0006]一些强化学习系统使用神经网络来选择由智能体响应于接收任何给定观察而执行的动作。
[0007]神经网络是机器学习模型,其使用一个或多个非线性单元层来预测接收的输入的输出。一些神经网络是深度神经网络,其除了输出层之外还包括一个或多个隐藏层。每个隐藏层的输出用作网络中下一层(即下一隐藏层或输出层)的输入。网络的每个层根据相应一组参数的当前值从接收的输入生成输出。
技术实现思路
[0008]本说明书描述了在一个或多个位置中的一个或多个计算机上实现为计算机程序的系统。
[0009]通常,一个创新方面可以体现在包括由一个或多个计算机实现的神经网络系统的系统中。神经网络系统被配置为接收表征机器人智能体与之交互以执行机器人任务的现实世界环境的当前状态的观察,并处理所述观察以 ...
【技术保护点】
【技术特征摘要】
1.一种计算机实现的方法,包括:接收执行机器人任务的机器人智能体的表征正在与其交互的真实世界环境的当前状态的观察;使用神经网络系统处理所述观察以生成策略输出,其中,所述神经网络系统包括深度神经网络(DNN)的序列,其中,所述DNN的序列包括:模拟训练的DNN,其已经在机器人智能体的模拟版本为了执行机器人任务的模拟版本与真实世界环境的模拟版本的交互上进行了训练,其中:所述模拟训练的DNN包括第一多个索引层,以及由一个或多个计算机实现的模拟训练的DNN被配置为接收所述观察并通过第一多个索引层中的每个层处理所述观察,以生成第一多个索引层中的每个层的各自的层输出;以及第一机器人训练的DNN,其已经在机器人智能体为了执行机器人任务与真实世界环境的交互上进行了训练,以在保持模拟训练的DNN的参数的训练值固定的同时确定第一机器人训练的DNN的参数的训练值,其中第一机器人训练的DNN包括第二多个索引层,由一个或多个计算机实现的第一机器人训练的DNN被配置为接收所述观察并通过第二多个索引层中的每个层处理所述观察,以生成策略输出,并且由一个或多个计算机实现的第二多个索引层中的一个或多个层的每个层被配置为接收下列作为输入:(i)由第一机器人训练的DNN的前一层生成的层输出,以及(ii)由模拟训练的DNN的前一层生成的层输出,其中,前一层是其索引比该层的索引小一的层;以及使用策略输出选择要由机器人智能体响应于所述观察而执行的动作。2.根据权利要求1所述的方法,其中,第一机器人训练的DNN具有比模拟训练的DNN更小的容量。3.根据权利要求1所述的方法,其中,对于第二多个索引层中的一个或多个层的每个层,第一多个索引层中具有相同索引的对应层是与第二多个索引层中的层类型相同但维度更大的神经网络层。4.根据权利要求1所述的方法,其中,第一多个索引层和第二多个索引层中的每一个包括各自的循环神经网络层。5.根据权利要求4所述的方法,其中,由一个或多个计算机实现的第二多个索引层中的循环神经网络层被配置为接收下列作为输入:(i)第一多个索引层中的循环神经网络层的前一层的层输出,(ii)第一多个索引层中的循环神经网络层的内部状态,以及(iii)第二多个索引层中的循环神经网络层的前一层的层输出。6.根据权利要求1所述的方法,其中,由一个或多个计算机实现的第二多个索引层中的一个或多个层的每个层被配置为接收下列作为输入:(i)由第一机器人训练的DNN的前一层生成的层输出,以及(ii)由一个或多个计算机实现的模拟训练的DNN的前一层生成的层输出,每个层还被配置为:将各自的第一组参数应用于由第一机器人训练的DNN的前一层生成的层输出;以及将各自的第二组参数应用于由模拟训练的DNN的前一层生成的层输出。7.根据权利要求1所述的方法,其中,所述策略输出定义了机器人智能体的多个自由度
中的每个自由度的各自的位置变化。8.根据权利要求7所述的方法,其中,所述多个自由度包括机器人智能体的一个或多个关节和机器人智能体的一个或多个致动器。9.根据权利要求1所述的方法,其中,所述DNN的序列还包括:第二机器人训练的DNN,其中:第二机器人训练的DNN包括第三多个索引层,并且由一个或多个计算机实现的第三多个索引层中的一个或多个层的每个层被配置为接收下列作为输入:(i)由第一机器人训练的DNN的前一层生成的层输出,(ii)由模拟训练的DNN的前一层生成的层输出,以及(iii)由第二机器人训练的DNN的前一层生成的层输出。10.根据权利要求9所述的方法,其中:由一个或多个计算机实现的第二机器人训练的DNN被配置为接收表征结合所述观察的当前状态的不同数据;以及由一个或多个计算机实现的第二机器人训练的DNN被配置为通过第三多个索引层处理所述不同数据以生成第二策略输出,第二策略输出定义了机器人智能体执行第二不同的机器人任务要执行的动作。11.根据权利要求10所述的方法,其中,所述观察是视觉数据,所述不同数据是本体感受数据。12.一个或多个存储指令的非暂时性计算机可读介质,当由一个或多个计算机执行时,所述指令使得一个或多个计算机执行操作,包括:接收执行机器人任务的机器人智能体进行的表征正在与其交互的真实世界环境的当前状态的观察;使用神经网络系统处理所述观察以生成策略输出,其中,所述神经网络系统包括深度神经网络(DNN)的序列,其中,所述DNN的序列包括:模拟训练的DNN,其已经在机器人智能体的模拟版本为了执行机器人任务的模拟版本与真实世界环境的模拟版本的交互上进行了训练,其中:所述模拟训练的DNN包括第一多个索引层,以及由一个或多个计算机实现的模拟训练的DNN被配置为接收所述观察并通过第一多个索引层中的每个层处理所述观察,以生成第一多个索引层中的每个层的各自的层输出;以及第一机器人训练的DNN,其已经在机器人智能体为了执行机器人任务与真实世界环境的交互上进行了训练,以在保持模拟训练的DNN的参数的训练值固定的同时确定第一机器人训练的DNN的参数的训练值,其中第一机器人训练的DNN包括第二多个索引层,由一个或多个计算机实现的第一机器人训练的DNN被配置为接收所述观察并通过第二多个索引层中的每个层处理所述观察,以生成策略输出,并且由一个或多个计算机实现的第二多个索引层中的一个或多个层的每个层被配置为接收下列作为输入:(i)由第一机器人训练的DNN的前一层生成的层输出,以及(ii)由模拟训练的DNN的前一层生成的层输出,其中,前一层是其索引比该层的索引小一的层;以及使用策略输出选择要由机器人智能体响应于所述观察而执行的动作。
13.一种系统,包括:一个或多个计算机;以及一个或多个存储指令的非暂时性计算机可读介质,当被一个或多个计算机执行时,所述指令使得一个或多个计算机执行操作,包括:接收执行机器人任务的机器人智能体进行的表征正在与其交互的真实世界环境的当前状态的观察;使用神经网络系统处理所述观察以生成策略输出,其中,所述神经网络系统包括深度神经网络(DNN)的序列,其中,所述DNN的序列包括:模拟训练的DNN,其已经在机器人智能体的模拟版本为了执行机器人任务的模拟版本与真实世界环境的模拟版本的交互上进行了训练,其中:所述模拟训练的DNN包括第一多个索引层,以及由一个或多个计算机实现的模拟训练的DNN被配置为接收所述观察并通过第一多个索引层中的每个层处理所述观察,以生成第一多个索引层中的每个层的各自的层输出;以及第一机器人训练的DNN,其已经在机器人智能体为了执行机器人任务与真实世界环境的交互上进行了训练,以在保持模拟训练的DNN的参数的训练值固定的同时确定第一机器人训练的DNN的参数的训练值,其中第一机器人训练的DNN包括第二多个索引层,由一个或多个计算机实现的第一机器人训练的DNN被配置为接收所述观察并通过第二多个索引层中的每个层处理所述观察,以生成策略输出,并且由一个或多个计算机实现的第二多个索引层中的一个或多个层的每个层被配置为接收下列作为输入:(i)由第一机器人训练的DNN的前一层生成的层输出,以及(ii)由模拟训练的DNN的前一层生成的层输出,其中,前一层是其索引比该层的索引小一的层;以及使用策略输出选择要由机器人智能体响应于所述观察而执行的动作。14.一个或多个存储指令的非暂时性计算机可读介质,当由一个或多个计算机执行时,所述指令使得一个或多个计算机执行用于训练神经网络系统的操作,所述神经网络系统包括深度神经网络(DNN)的序列,以确定所述DNN的序列中的一个或多个DNN的参数的训练值,其中,由一个或多个计算机实现的神经网络系统被配置为接收执行机器人任务的机器人智能体进行的表征正在与其交互的真实世界环境的当前状态的观察,并处理所述观察以生成策略输出,该策略输出定义了要由机器人智能体响应于所述观察而执行的动作,其中,所述DNN的序列包括:模拟训练的DNN,其中,由一个或多个计算机实现的模拟训练的DNN包括第一多个索引层,并且被配置为接收所述观察并通过第一多个索引层中的每个层处理所述观察,以生成第一多个索引层中的每个层的各自的层输出;以及第一机器人训练的DNN,其已经在机器人智能体为了执行机器人任务与真实世界环境的交互上进行了训练,以在保持模拟训练的DNN的参数的训练值固定的同时确定第一机器人训练的DNN的参数的训练值,其中第一机器人训练的DNN包括第二多个索引层,由一个或多个计算机实现的第一机器人训练的DNN被配置为接收所述观察并通过第二
多个索引层中的每个层处理所述观察,以生成策略输出,并且由一个或多个计算机实现的第二多个索引层中的一个或多个层的每个层被配置为接收下列作为输入:(i)由第一机器人训练的DNN的前一层生成的层输出,以及(ii)由模拟训练的DNN的前一层生成的层输出,其中,前一层是其索引比该层的索引小一的层,其中,所述操作包括:在机器人智能体为了执行机器人任务与真实世界环境的交互上训练第一机器人训练的DNN,以保持模拟训练的DNN的参数的训练值固定的同时确定第一机器人训练的DNN的参数的训练值。15.根据权利要求14所述的一个或多个非暂时性计算机可读介质,其中,由一个或多个计算机实现的第一机器人训练的DNN的输出层被配置为:接收下列作为输入:(i)由第一机器人训练的DNN的输出层的前一层生成的层输出,以及(ii)由模拟训练的DNN的输出层的前一层生成的层输出;将第一组参数应用于由第一机器人训练的DNN的输出层的前一层生成的层输出;以及将第二组参数应用于由模拟训练的DNN的输出层的前一层生成的层输出,并且其中,所述操作还包括:初始化第二组参数的值,以匹配模拟训练的DNN的输出层的参数的训练值。16.根据权利要求15所述的一个或多个非暂时性计算机可读介质,其中,所述操作还包括:将第一组参数的值初始化为零。17.根据权利要求15所述的一个或多个非暂时性计算机可读介质,其中,所述操作还包括:将除了第一机器人训练的DNN的输出层之外的第一机器人训练的DNN的层的参数值初始化为随机值。18.根据权利要求14所述的一个或多个非暂时性计算机可读介质,其中,所述操作还包括:在机器人智能体的模拟版本为了执行机器人任务的模拟版本与真实世界环境的模拟版本的交互上训练模拟训练的DNN,以确定模拟训练的DNN的参数的训练值。19.根据权利要求18所述的一个或多个非暂时性计算机可读介质,其中,训练模拟训练的DNN包括使用第一强化学习技术在机器人智能体的模拟版本的交互上训练模拟训练的DNN。20.根据权利要求19所述的一个或多个非暂时性计算机可读介质,其中,训练第一机器人训练的DNN包括使用第二强化学习技术在机器人智能体的交互上训练第一机器人训练的DNN。21.一种系统,包括:一个或多个计算机;以及一个或多个存储指令的非暂时性计算机可读介质,当由一个或多个计算机执行时,所述指令使得一个或多个计算机执行用于训练神经网络系统的操作,所述神经网络系统包括深度神经网络(DNN)的序列,以确定所述DNN的序列中的一个或多个DNN的参数的训练值,其中,由一个或多个计算机实现的神经网络系统被配置为接收执行机器人任务的机器人智能
体进行的表征正在与其交互的真实世界环境的当前状态的观察,并处理所述观察以生成策略输出,该策略输出定义了要由机器人智能体响应于所述观察而执行的动作,其中,所述DNN的序列包括:模拟训练的DNN,其中,由一个或多个计算机实现的模拟训练的DNN包括第一多个索引层,并且被配置为接收所述观察并通过第一多个索引层中的每个层处理所述观察,以生成第一多个索引层中的每个层的各自的层输出;以及第一机器人训练的DNN,其已经在机器人智能体为了执行机器人任务与真实世界环境的交互上进行了训练,以在保持模拟训练的DNN的参数的训练值固定的同时确定第一机器人训练的DNN的参数的训练值,其中第一机器人训练的DNN包括第二多个索引层,由一个或多个计算机实现的第一机器人训练的DNN被配置为接收所述观察并通过第二多个索引层中的每个层处理所述观察,以生成策略输出,...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。