CN117441174A - 用于训练用于模仿演示者的行为的神经网络的方法和装置 - Google Patents
用于训练用于模仿演示者的行为的神经网络的方法和装置 Download PDFInfo
- Publication number
- CN117441174A CN117441174A CN202180098842.3A CN202180098842A CN117441174A CN 117441174 A CN117441174 A CN 117441174A CN 202180098842 A CN202180098842 A CN 202180098842A CN 117441174 A CN117441174 A CN 117441174A
- Authority
- CN
- China
- Prior art keywords
- data
- option
- action
- task
- policy
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 95
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 58
- 230000009471 action Effects 0.000 claims abstract description 72
- 230000006399 behavior Effects 0.000 claims abstract description 31
- 230000008569 process Effects 0.000 claims abstract description 30
- 238000005070 sampling Methods 0.000 claims abstract description 6
- 230000006870 function Effects 0.000 claims description 17
- 230000007613 environmental effect Effects 0.000 claims description 15
- 238000003860 storage Methods 0.000 claims description 12
- 230000002787 reinforcement Effects 0.000 claims description 7
- 238000007476 Maximum Likelihood Methods 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 3
- 230000001502 supplementing effect Effects 0.000 claims description 2
- 238000005457 optimization Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000003278 mimic effect Effects 0.000 description 6
- 230000007774 longterm Effects 0.000 description 5
- 238000003062 neural network model Methods 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 2
- 230000003542 behavioural effect Effects 0.000 description 2
- 238000010367 cloning Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000003042 antagnostic effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001364 causal effect Effects 0.000 description 1
- 238000013329 compounding Methods 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000015654 memory Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/092—Reinforcement learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0475—Generative networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/094—Adversarial learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/008—Artificial 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Feedback Control In General (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开内容提供了一种用于训练用于模仿演示者的行为的神经网络(NN)模型的方法。该方法包括:获得表示演示者的用于执行任务的行为的演示数据,演示数据包括状态数据、动作数据和选项数据,其中,状态数据对应于用于执行任务的条件,选项数据对应于任务的子任务,并且动作数据对应于演示者的针对任务执行的动作;基于当前学习的策略来对表示NN模型的用于执行任务的行为的学习者数据进行采样,学习者数据包括状态数据、动作数据和选项数据,其中,状态数据对应于用于执行任务的条件,选项数据对应于任务的子任务,并且动作数据对应于NN模型的针对任务执行的动作,策略由用于确定当前选项的高级策略部分和用于确定当前动作的低级策略部分组成;以及基于演示数据和学习者数据,通过使用生成对抗性模仿学习(GAIL)过程来更新策略。
Description
技术领域
概括而言,本公开内容的各方面涉及人工智能(AI),并且更具体地,本公开内容的各方面涉及训练用于模仿演示者的行为的神经网络(NN)模型。
背景技术
模仿学习(IL)已经被用在许多现实世界应用中,比如自动玩电脑游戏、自动下棋、智能自动驾驶辅助、智能机器人联动等。对于由神经网络模型实现的学习者或智能体来说,从长时程未注释的演示中学习技能仍然是挑战。
存在两种模仿学习方法:行为克隆(BC)和反向强化学习(IRL)。行为克隆虽然看似简单,但是由于复合误差而往往仅在大量数据的情况下才成功。反向强化学习对将整个轨迹优先于其它轨迹的成本函数进行学习,因此复合误差(针对适合单时间步决策的方法的问题)不是问题。相应地,IRL已经在各种各样的问题方面成功,但是许多IRL算法在运行时所需的计算资源极其昂贵。作为IRL的一种实现,生成对抗性模仿学习(GAIL)是一种模仿学习方法,其直接基于专家数据来学习策略,而不学习奖励函数,从而大大减少了计算量。
尽管GAIL表现出不错的性能,但是在用于模仿学习的结构和性能方面的改进将是期望的。
发明内容
本公开内容提出了一种新颖且增强的分层模仿学习框架:选项-GAIL(Option-GAIL),该框架在训练用于在各种实际应用(比如自动驾驶辅助、机器人联动、AI计算机游戏等)中模仿演示者的行为的神经网络模型方面是高效、稳健且有效的。被训练用于模仿演示者的行为的神经网络模型可以被称为智能体、学习者、模仿者等。
根据一个实施例,提供了一种用于训练用于模仿演示者的行为的神经网络(NN)模型的方法,包括:获得表示所述演示者的用于执行任务的行为的演示数据,所述演示数据包括状态数据、动作数据和选项数据,其中,所述状态数据对应于用于执行所述任务的条件,所述选项数据对应于所述任务的子任务,并且所述动作数据对应于所述演示者的针对所述任务执行的动作;基于当前学习的策略来对表示所述NN模型的用于执行所述任务的行为的学习者数据进行采样,所述学习者数据包括状态数据、动作数据和选项数据,其中,所述状态数据对应于用于执行所述任务的条件,所述选项数据对应于所述任务的子任务,并且所述动作数据对应于所述NN模型的针对所述任务执行的动作,所述策略由用于确定当前选项的高级策略部分和用于确定当前动作的低级策略部分组成;以及基于所述演示数据和所述学习者数据,通过使用生成对抗性模仿学习(GAIL)过程来更新所述策略。
根据一个实施例,提供了一种用于训练用于自动驾驶辅助的神经网络(NN)模型的方法,包括:使用如上提及的方法以及使用根据本公开内容的各方面的方法来训练用于自动驾驶辅助的所述NN模型,其中,所述演示数据表示驾驶员的用于驾驶车辆的行为。
根据一个实施例,提供了一种用于训练用于控制机器人联动的神经网络(NN)模型的方法,包括:使用如上提及的方法以及使用根据本公开内容的各方面的方法来训练用于控制机器人联动的所述NN模型,其中,所述演示数据表示演示者的用于执行任务的联动。
根据一个实施例,提供了一种用于利用经训练的神经网络(NN)模型来控制机器的方法,包括:收集与所述机器执行任务相关的环境数据;至少部分地基于所述环境数据来获得针对当前时刻的状态数据和选项数据;利用所述经训练的NN模型,基于针对所述当前时刻的所述状态数据和所述选项数据来推断针对所述当前时刻的动作数据;以及基于针对所述当前时刻的所述动作数据来控制所述机器的动作。
根据一个实施例,提供了一种能够进行自动驾驶辅助的车辆,包括:传感器,其被配置用于收集与所述车辆执行自动驾驶辅助相关的环境数据的至少一部分;一个或多个处理器;以及存储计算机可执行指令的一个或多个存储设备,所述计算机可执行指令在被执行时使得所述一个或多个处理器执行如上提及的方法的操作以及执行根据本公开内容的各方面的方法的操作。
根据一个实施例,提供了一种能够进行自动联动的机器人,包括:传感器,其被配置用于收集与所述机器人执行自动联动相关的环境数据的至少一部分;一个或多个处理器;以及存储计算机可执行指令的一个或多个存储设备,所述计算机可执行指令在被执行时使得所述一个或多个处理器执行如上提及的方法的操作以及执行根据本公开内容的各方面的方法的操作。
根据一个实施例,提供了一种计算机系统,包括:一个或多个处理器;以及存储计算机可执行指令的一个或多个存储设备,所述计算机可执行指令在被执行时使得所述一个或多个处理器执行如上提及的方法的操作以及执行根据本公开内容的各方面的方法的操作。
根据一个实施例,提供了一个或多个存储计算机可执行指令的计算机可读存储介质,所述计算机可执行指令在被执行时使得一个或多个处理器执行如上提及的方法的操作以及执行根据本公开内容的各方面的方法的操作。
根据一个实施例,提供了一种包括计算机可执行指令的计算机程序产品,所述计算机可执行指令当被执行时使得一个或多个处理器执行如上提及的方法的操作以及执行根据本公开内容的各方面的方法的操作。
通过使用分层选项-GAIL训练方法,提高了经训练的神经网络模型的训练效率、稳健性和有效性以及推断准确度。在下文的描述中解释了其它优点和增强。
附图说明
下文将结合附图描述所公开的方面,附图是为了说明所公开的各方面而提供的,而非限制所公开的各方面。
图1示出了根据一个实施例的示例性装置。
图2示出了根据一个实施例的示例性训练过程。
图3示出了根据一个实施例的一步选项模型的示例性概率图。
图4示出了根据一个实施例的等式3与等式5之间的示例性关系。
图5示出了根据一个实施例的用于训练NN模型的示例性过程。
图6示出了根据一个实施例的用于获得演示数据的示例性过程。
图7示出了根据一个实施例的用于更新策略的示例性过程。
图8示出了根据一个实施例的用于利用经训练的NN模型来控制机器的示例性过程。
图9示出了根据一个实施例的示例性计算系统。
具体实施方式
现在将参考若干示例实现方式来讨论本公开内容。将理解,讨论这些实现方式仅是为了使本领域技术人员能够更好地理解并因此实现本公开内容的实施例,而不是暗示对本公开内容的范围的任何限制。
将参考附图详细地描述各个实施例。在可能的情况下,贯穿附图将使用相同的附图标记来指代相同或相似的部分。对特定示例和实施例的引用是为了说明的目的,而不旨在限制本公开内容的范围。
图1是示出根据本公开内容的各方面的示例性装置的框图。
在图1中所示的装置100可以是比如自主车辆的车辆、比如机器人的自我控制机器,或者可以是车辆、机器人等的一部分。在以下描述中,以自主车辆作为图1中的装置的示例。
车辆100可以被配备有用于感测车辆正在行驶的条件的各种传感器110。术语条件也可以被称为环境、状态、上下文等。在图1中所示的示例中,各种传感器110可以包括相机系统、激光雷达系统、雷达系统、声纳、超声传感器、接近传感器、红外传感器、轮速传感器、雨水传感器等。应理解,车辆100的一组传感器110可能包括其它类型的传感器,并且可以不包括所有举例说明的传感器,示例传感器的任何组合都可能被配备在装置100上。
装置100可以包括处理系统120。处理系统120可以以各种方式来实现,例如,处理系统120可以包括一个或多个处理器和/或控制器以及一个或多个存储器,处理器和/或控制器可以执行软件以执行各种操作或功能(比如根据本公开内容的各个方面的操作或功能)。
处理系统120可以从传感器110接收传感器数据,并且通过分析传感器数据来执行各种操作。在图1的示例中,处理系统120可以包括条件检测模块1210、动作确定模块1220。应理解,模块1210-1220可以以各种方式来实现,例如,可以实现为可由处理器和/或控制器执行的软件模块或功能。
条件检测模块1210可以被配置为确定与汽车的操作相关的条件。
与汽车的操作相关的条件可以包括天气、汽车的绝对速度、与前面汽车的相对速度、与前面汽车的距离、与附近汽车的距离、相对于附近汽车的方位角、是否存在障碍物、到障碍物的距离等。应理解,条件可以包括其它类型的数据(比如来自导航系统的导航数据),并且可以不包括所有举例说明的数据。并且条件数据中的一些条件数据可以由传感器模块110直接获得并且提供给处理模块120。
动作确定模块1220根据来自条件检测模块1210的条件数据或状态数据来确定要由汽车执行的动作。动作确定模块1220可以利用经训练的NN模型来实现,该NN模型可以模仿人类驾驶员驾驶汽车的行为。例如,动作确定模块1220可以获得状态数据(比如上文举例说明的针对当前时间步的条件数据),并且基于所获得的状态数据来推断要针对当前时间步执行的动作。
图2是示出根据本公开内容的各方面的示例性训练过程的框图。
在框210处,获得训练数据。训练数据也可以被称为演示数据、专家数据等,其表示演示者或专家的用于执行任务(比如驾驶汽车)的行为。演示数据可以具有轨迹的形式,其包括针对沿着轨迹的一系列时间步的一系列数据实例。例如,轨迹τ=(s0:T,a0:T),其中,30:T表示(s0,…,sT),其表示针对T+1个时间步的多个状态实例;a0:T表示(a0,…,aT),其表示针对T+1个时间步的多个动作实例。训练数据集可以表示为其中,/>是演示数据集,τE是表示专家或演示者的演示数据的轨迹。
状态sn可以在多个维度上进行定义,例如,这些维度可以表示上文举例说明的条件数据类型,比如天气、速度、距离、导航信息等。动作an可以在多个维度上进行定义。例如,这些维度可以表示将由专家驾驶员采取的动作,比如制动、转向、停车等。应理解,由状态和动作组成的轨迹的数据在本领域中是已知的,并且本公开内容不限于此。为了获得演示数据,人类驾驶员可以在现实世界中驾驶如图1所示的汽车以收集演示数据,并且人类驾驶员还可以在模拟器中操纵虚拟汽车来收集演示数据。应理解,对由状态和动作组成的轨迹的演示数据的收集在本领域中是已知的,并且本公开内容不限于此。
在步骤220处,可以利用演示数据来训练NN模型,以模仿专家的用于执行任务(比如举例说明的驾驶任务)的行为。NN模型可以被称为学习者、智能体、模仿者等。在一个实施例中,可以使用新的选项GAIL分层框架来训练智能体模型。将在下文中说明选项GAIL分层框架。
马尔可夫决策过程(MDP)是6元组其中,/>表示状态-动作空间,例如,上文举例说明的轨迹的状态数据s和动作数据a属于状态-动作空间;在由环境确定的给定当前状态/>和动作/>的情况下,/>是下一状态/>的转移概率;当在状态s上采用动作a时,/>返回来自任务的预期奖励;μ0(s)表示初始状态分布,并且γ∈[0,1)是折扣因子。策略π(a|s)的有效性是通过其预期的无限时程奖励来评估的:/>
可以引入选项以对长期任务的策略切换过程进行建模,其中,K表示选项的数量。在一个示例中,选项可以对应于任务的子任务或场景。例如,对于自主驾驶的任务,不同的场景可以包括高速公路、具有高、正常或低交通量的城市道路、山路、崎岖道路、停车场、日间驾驶、夜间驾驶、有条件的天气(比如雨、雪、雾等),或以上场景的某种组合。选项模型被定义为元组/>其中,/>是与MDP相同地表示的;/>表示从其中可以激活选项的初始状态集合;βo(s)=P(b=1|s)是终止函数,其决定在给定状态s上当前选项是否应当终止;πo(a|s)是选项内策略,其确定在选项o内在给定状态上的动作;一旦最后一个选项或前一个选项终止,则通过选项间策略/>以调用和返回方式激活新选项。
生成对抗性模仿学习(GAIL)(Ho,J.和Ermon,S.,Generative adversarialimitation learning,In Proc.Advances in Neural Inf.Process.Syst.,2016)是一种模仿学习方法,其将马尔可夫决策过程(MDP)上的策略学习转化为占用度量匹配问题。在给定专家在特定任务(比如驾驶汽车)上的演示 的情况下,模仿学习旨在找到可以最佳地再现专家的行为的策略π,而无需获得真正的奖励。GAIL将原始的最大熵逆强化学习问题转化为占用度量匹配问题:
其中,Df计算ρπ(s,a)与之间的f-散度,ρπ(s,a)和/>分别是智能体和专家的占用度量。通过引入生成对抗性结构,GAIL经由交替地优化策略和估计的差异来将智能体与专家之间的差异最小化。具体地说,更新通过GAIL中的θ参数化的鉴别器以将专家与智能体之间的差异最大化,并且然后更新策略π,以将沿着智能体所探索的每个轨迹的总体差异最小化。这样的优化过程可以转化为:其中,/>表示智能体在其学习的策略π下的期望,/>表示专家在其专家策略πE下的期望。模拟来自专家的策略π的GAIL等效于匹配其占用度量。当策略与其引起的占用度量一一对应时,这种等效性成立。然而,GAIL不适合于基于长期演示的模仿学习,因为MDP难以捕捉子任务的层次结构。
上文介绍的选项模型可以用于对分层子任务的切换过程进行建模。然而,由于难以确定初始集/>和中断条件βo,直接学习该框架的策略πo和/>是不方便的。
在一个实施例中,该选项模型可以被转换为一步选项,该一步选项被定义为其中,/>由所有选项加上满足o-1三#,β#(s)三1的特殊初始选项类组成。此外,/> 其中/>是指示符函数,并且iffx=少,其等于1,否则为0。在上面的数学符号中,“≡”代表“恒等于”,“三”代表“被定义为”,“iff”代表“当且仅当”。高级策略πH和低级策略πL被定义为:
可以得出,在实际假设下,一步选项模型等效于完整选项模型,即也就是说,每个状态都是可切换的:/>并且每次切换都是有效的:符号/>代表“任何”,“∈”代表“属于”。这个假设断言每个状态对于每个选项都是可切换的,并且一旦切换发生,其就切换到概率为1的不同选项。这样的假设在实践中通常成立,而不牺牲模型表现力。
这种等效性是有益的,因为切换行为可以通过仅查看高级策略πH和低级策略πL来表征,而不需要证明每个选项的确切开始/中断条件。总体策略可以被定义为并且/>表示策略集合。
为了利用一步选项和GAIL,选项-占用度量可以被定义为度量/>可以被解释为由策略/>生成的状态-动作-选项元组在给定的/>和/>上的分布,其中策略/>由高级策略部分πH和低级策略部分πL组成。根据Bellman流约束,可以容易地获得选项-占用度量属于可行的仿射约束集/>
为了基于长期演示(比如长期轨迹数据)训练智能体模仿专家的执行任务的行为,GAIL不再适合于这种情况,因为MDP难以捕捉子任务的层次结构。在一个实施例中,可以经由GAIL上的一步选项来对可以划分为多个子任务的长期任务进行建模,并且通过将专家与智能体之间的占用度量的差异最小化来学习策略
图3展示了一步选项模型的概率图。如图所示,基于先前选项o′(其被示为ot-1)和当前状态s(其被示为st),使用高级策略部分πH来确定当前选项o(其被示为ot)。基于状态转换概率来确定当前状态s(其被示为st)。基于当前选项o和当前状态s,使用低级策略部分πL来确定当前动作a(被示为At)。该组节点ot-1、ot、At、st用于导出选项占用度量。
直观上,对于分层子任务,由智能体确定的动作不仅取决于观察到的当前状态,而且取决于选择的当前选项。通过一步选项的定义,分层策略/>与当前状态、当前动作、上次选项和当前选项的信息相关。在一个实施例中,利用选项-占用度量来代替传统占用度量以描绘专家与智能体之间的差异。事实上,在策略集合/>与仿射约束集合/>之间存在一对一的对应关系。
对于每个其是以下策略的选项-占用度量:
并且是其选项-占用度量为ρ的唯一策略。
利用以上观察结果,优化选项策略相当于优化其引起的选项-占用度量,因为然后,分层模仿学习问题变成:
应注意,在等式(5)上定义的优化问题意味着在等式(3)上定义的优化问题,但并非反之亦然:首先,由于可以推导出其次,当时,解决在等式5上定义的问题就是解决在等式3上定义的问题的上界。图4描绘了等式5与等式3之间的关系。
在一个实施例中,专家选项是可观察的,并且是在训练数据中给出的,因此,选项扩展的专家演示可以用于训练分层策略其中选项扩展的专家演示被表示为其中/>是额外具有选项数据的轨迹。
可以借助于对抗性学习来估计差异,而不是计算选项-占用度量的确切值。参数鉴别器被定义为如果将f-散度指定为Jensen-Shannon散度,则等式(5)可以被转换为最小-最大对策:
等式(6)的内循环是利用专家演示和样本来训练Dθ(s,a,o,o′),其中样本是通过利用所学习的策略/>进行自探索而生成的。应理解,θ表示鉴别器Dθ(s,a,o,o′)的参数,鉴别器是通过优化θ来训练的。等式(6)中的/>还可以被表示为/>其中,/>表示所采样的轨迹/>其中该轨迹是利用所学习的策略/>来生成的。在外循环中,可以使用分层强化学习(HRL)方法来将差异最小化:
其中,c(s,a,o,o′)=log Dθ(s,a,o,o′),并且因果熵 用作策略正则项,其中λ∈[0,1]。成本函数与选项相关,这与许多具有选项不可知的成本/奖励的HRL问题(Zhang,S.和Whiteson,S.DAC:The double actor-criticarchitecture for learning options,In Proc.Advances in NeuralInf.Process.Syst,2019)不同。为了处理与选项相关的成本函数,可以使用与DAC类似的思想来优化等式(7)。
具体地,选项模型可以被表征为两级MDP。对于高级MDP,状态、动作和奖励可以被定义为 对于低级MDP,状态、动作和奖励可以被定义为和/> 其具有后验概率/> 其它项(包括初始状态分布/>和状态转换动力PH和PL)可以类似于DAC来定义。然后,等式7上的HRL任务可以分为具有增强MDP的两个非分层任务:/>和/> 它们的动作决策分别取决于πH和πL。这两个非分层问题可以替代地通过利用典型的强化学习方法(比如PPO)来求解(Schulman,J.,Wolski,F.,Dhariwal,P.,Radford,A.和Klimov,O.Proximal policy optimization algorithms.arXiv preprint arXiv:1707.06347,2017)。
返回参考等式(6),通过交替内循环和外循环,可以推导解决等式5的策略在一个实施例中,利用选项扩展的专家轨迹/> 和初始策略可以将策略优化(比如在等式(6)中所示)交替地执行足够的迭代,以便训练策略/>利用经训练的策略,NN模型预期能够再现或模仿专家或演示者的用于执行任务的行为。以下伪代码示出了用于使用演示数据训练智能体NN模型的示例性方法。
可以以各种方式来获得初始策略例如,其可以通过使用随机生成的值、预定义的值或一些预训练的值来获得。本公开内容的各方面不限于该初始策略。
可以以各种方式来执行对智能体的轨迹的采样。例如,可以使用具有当前策略的NN模型来在模拟器中运行任务(比如自主驾驶或机器人联动),在此期间,可以对智能体样本轨迹/>进行采样。
在比如方法1的以上实施例中,在训练数据中提供专家选项。然而,在实践中,专家选项通常在训练数据或经训练的智能体的推断过程中不可用。为了解决这个潜在问题,在一个实施例中,从观察到的数据(状态和动作)推断选项。
在给定策略的情况下,根据最大似然估计(MLE)的原理,这些选项应该是使观察到的状态-动作的可能性最大化的选项。在该实施例中,专家策略可以通过上述方法,利用由智能体NN模型当前学习的策略来近似。利用观察到的状态和动作,选项模型将退化为隐马尔可夫模型(HMM),因此,例如,可以使用最大前向消息方法(Viterbi,A.Error bounds forconvolutional codes and an asymptotically optimum decoding algorithm.IEEEtransactions on Information Theory,13(2):260-269,1967)来进行专家选项推断。
在给定(πH,πL)和的情况下,生成o-1:T的最可能值。具体地,最大前向消息通过下式递归地计算:
下面表明了在等式8上推导最大前向消息能够最大化整个轨迹的概率:
通过回溯ot-1(其在T-步轨迹的每个时间步引起上的最大化),最终可以获得选项扩展的专家轨迹/>
在一个实施例中,利用专家提供的演示和初始策略策略优化(比如在等式(6)中所示)和选项推断(比如在等式(8)中所示)可以交替地执行足够的迭代,以便训练策略/>利用经训练的策略,NN模型预期能够再现或模仿专家或演示者的用于执行任务的行为。以下伪代码2示出了用于使用演示数据训练智能体NN模型的示例方法。
方法2可以被称为期望最大化(EM)风格的过程:E-步,以当前学习的策略为条件来对专家的选项进行采样;以及M-步,同时更新智能体的低级策略和高级策略,以将专家与智能体之间的选项-占用度量最小化。
图5是示出根据本公开内容的各方面的用于基于演示数据来训练用于模仿演示者的行为的NN模型的示例性训练过程的框图。
在510处,获得表示演示者的用于执行任务的行为的演示数据。演示数据包括状态数据、动作数据和选项数据。状态数据对应于用于执行任务的状态,术语状态也可以被称为条件、环境、上下文、状况等。选项数据对应于任务的子任务,子任务可以对应于与任务相关的相应场景。动作数据对应于演示者针对任务执行的动作。在一个实施例中,选项扩展的专家轨迹是演示数据的示例,其中,/>表示轨迹,s0:T表示沿着轨迹的相应状态实例,a0∶T表示沿着轨迹的相应动作实例,0-1:T表示沿着轨迹的相应选项实例,T表示沿着轨迹的时间步的数量。
在520处,基于当前学习的策略来对表示NN模型的用于执行任务的行为的学习者数据进行采样。学习者数据包括状态数据、动作数据和选项数据。状态数据对应于用于执行任务的状态,术语状态也可以被称为条件、环境、上下文、状况等。选项数据对应于任务的子任务,子任务可以对应于与任务相关的相应场景。动作数据对应于学习者的针对任务执行的动作。在一个实施例中,所采样的学习者轨迹是所采样的学习者数据的示例,其中,/>表示轨迹,s0:T表示沿着轨迹的相应状态实例,a0∶T表示沿着轨迹的相应动作实例,o-1:T表示沿着轨迹的相应选项实例,T表示沿着轨迹的时间步的数量。该策略由用于确定当前选项的高级策略部分和用于确定当前动作的低级策略部分组成。在一个实施例中,高级策略部分被配置为基于当前状态和先前选项来确定当前选项,而低级策略部分被配置为基于当前状态和当前选项来确定当前动作。在一个实施例中,高级策略部分和低级策略部分中的每一者都是状态、动作、选项和先前选项的函数。
在530处,基于演示数据和学习者数据,通过使用生成对抗性模仿学习(GAIL)过程来更新NN模型的策略。
图6是示出根据本公开内容的各方面的用于在图5的510处获得演示数据的示例性过程的框图。
在5110处,获得初始演示数据,初始演示数据包括状态数据和动作数据,而不具有选项数据。在一个实施例中,专家轨迹 可以是初始演示数据的示例。
在5120处,基于在初始演示数据中包括的状态数据和动作数据,通过使用当前学习的策略来估计或推断选项数据。
在5130处,通过将所估计或所推断的选项数据补充到初始演示数据中来获得演示数据。
在一个实施例中,在5120处推断选项数据可以包括:基于当前学习的策略以及在初始演示数据中包括的状态数据和动作数据,通过使用最大似然估计过程来生成选项数据的最可能值。在一个实施例中,等式(8)是用于估计选项数据的最可能值的最大似然估计过程的示例。
图7是示出根据本公开内容的各方面的用于在图5的530处更新策略的示例性过程的框图。
在5310处,通过使用鉴别器,基于演示数据和学习者数据来估计演示者的行为与NN模型的行为之间的差异。在一个实施例中,通过使用鉴别器来估计演示数据与学习者数据之间的占用度量的差异,其中,占用度量是状态、动作、选项和先前选项的函数。在一个实施例中,高级策略部分和低级策略部分中的每一者都是占用度量的函数。
在5320处,以最大化内循环中的差异为目标来更新鉴别器的参数。
在5330处,以最小化外循环中的差异为目标来更新当前学习的策略的参数。在一个实施例中,通过使用表征为两级MDP的分层强化学习(HRL)过程来更新当前学习的策略的参数。在一个实施例中,在HRL过程中使用的策略正则项是高级策略部分和低级策略部分的函数。
在本公开内容的一个方面中,提出了一种用于训练用于自动驾驶辅助的神经网络(NN)模型的方法。使用本文描述的任何实施例(比如参考图2-7所描述的实施例)的方法来训练用于自动驾驶辅助的NN模型,其中,演示数据表示驾驶员的用于驾驶车辆的行为。自动驾驶辅助也可以被称为自主驾驶、智能驾驶、AI驾驶等。
在本公开内容的一个方面中,提出了一种用于训练用于控制机器人联动的神经网络(NN)模型的方法。使用本文描述的任何实施例(比如参考图2-7所描述的实施例)的方法来训练用于控制机器人联动的NN模型,其中,演示数据表示演示者的用于执行任务的联动。机器人联动可以包括各种机器人联动,比如机器人行走、跳跃、机器人找到穿过障碍物的路、像人类一样执行任务的机械臂等。
图8是示出根据本公开内容的各方面的用于利用经训练的神经网络(NN)模型来控制机器的示例性过程的框图。
在810处,收集与机器执行任务相关的环境数据。例如,如图1所示的传感器110可以用于收集环境数据。
在820处,至少部分地基于环境数据来获得针对当前时刻的状态数据和选项数据。在一个实施例中,可以从环境数据获得针对当前时刻的状态数据,并且可以基于状态数据来推断针对当前时间的选项数据。例如,可以基于状态数据和在上一时间步的选项数据来推断针对当前时间的选项数据。
在830处,利用经训练的NN模型,基于针对当前时刻的状态数据和选项数据来推断针对当前时刻的动作数据;以及
在840处,基于针对当前时间的动作数据来控制机器的动作。
在本公开内容的一个方面中,提供了一种能够进行自动驾驶辅助的车辆。例如,如图1所示,车辆包括:传感器,其被配置用于收集与车辆执行自动驾驶辅助相关的环境数据的至少一部分;一个或多个处理器;以及存储计算机可执行指令的一个或多个存储设备,计算机可执行指令在被执行时使得一个或多个处理器执行在本公开内容中描述的实施例的方法的操作。
在本公开内容的一个方面中,提供了一种能够进行自动联动的机器人。例如,如图1所示,图1也可以表示机器人的结构,机器人包括:传感器,其被配置用于收集与机器人执行自动联动相关的环境数据的至少一部分;一个或多个处理器;以及存储计算机可执行指令的一个或多个存储设备,计算机可执行指令在被执行时使得一个或多个处理器执行在本公开内容中描述的实施例的方法的操作。
图9示出了根据一个实施例的示例性计算系统。计算系统900可以包括至少一个处理器910。计算系统900还可以包括至少一个存储设备920。存储设备920可以存储计算机可执行指令,计算机可执行指令在被执行时使得处理器910执行根据本公开内容的如结合图1-8描述的实施例的任何操作。
本公开内容的实施例可以体现在计算机可读介质中,比如非暂时性计算机可读介质。非暂时性计算机可读介质可以包括指令,所述指令在被执行时使得一个或多个处理器执行根据本公开内容的如结合图1-8描述的实施例的任何操作。
本公开内容的实施例可以体现在包括计算机可执行指令的计算机程序产品中,计算机可执行指令在被执行时使得一个或多个处理器执行根据本公开内容的如结合图1-8描述的实施例的任何操作。
应当理解,上述方法中的所有操作仅是示例性操作,并且本公开内容不限于这些方法中的任何操作或这些操作的顺序,并且应当涵盖在相同或类似构思下的所有其它等效物。
还应当理解,上述装置中的所有模块可以用各种方法来实现。这些模块可以被实现为硬件、软件或其组合。此外,这些模块中的任何模块可以在功能上进一步划分为子模块或组合在一起。
提供先前描述是为了使得本领域任何技术人员能够实践本文描述的各个方面。对这些方面的各种修改对于本领域技术人员来说将是显而易见的,并且本文定义的通用原理可以应用于其它方面。因此,权利要求不旨在限于本文示出的方面。贯穿本公开内容所描述的各个方面的元素的所有结构和功能等效物通过引用的方式被明确地并入本文中,并且旨在被权利要求所涵盖,这些结构和功能等效物对于本领域普通技术人员是已知的或稍后将是已知的。
Claims (20)
1.一种用于训练用于模仿演示者的行为的神经网络(NN)模型的方法,包括:
获得表示所述演示者的用于执行任务的行为的演示数据,所述演示数据包括状态数据、动作数据和选项数据,其中,所述状态数据对应于用于执行所述任务的条件,所述选项数据对应于所述任务的子任务,并且所述动作数据对应于所述演示者的针对所述任务执行的动作;
基于当前学习的策略来对表示所述NN模型的用于执行所述任务的行为的学习者数据进行采样,所述学习者数据包括状态数据、动作数据和选项数据,其中,所述状态数据对应于用于执行所述任务的条件,所述选项数据对应于所述任务的子任务,并且所述动作数据对应于所述NN模型的针对所述任务执行的动作,所述策略由用于确定当前选项的高级策略部分和用于确定当前动作的低级策略部分组成;以及
基于所述演示数据和所述学习者数据,通过使用生成对抗性模仿学习(GAIL)过程来更新所述策略。
2.根据权利要求1所述的方法,其中,所述高级策略部分被配置为基于当前状态和先前选项来确定所述当前选项,并且所述低级策略部分被配置为基于所述当前状态和所述当前选项来确定所述当前动作。
3.根据权利要求2所述的方法,其中,所述高级策略部分和所述低级策略部分中的每一者都是状态、动作、选项和先前选项的函数。
4.根据权利要求1所述的方法,其中,所述演示数据包括被表示为的轨迹,其中,/>表示所述演示数据,τ表示轨迹,s0:T表示沿着所述轨迹的相应状态实例,a0:T表示沿着所述轨迹的相应动作实例,o-1:T表示沿着所述轨迹的相应采样的选项实例,T表示沿着所述轨迹的时间步的数量,并且所述学习者数据包括被表示为/> 的轨迹,其中,/>表示所述演示数据,/>表示轨迹,s0:T表示沿着所述轨迹的相应状态实例,a0:T表示沿着所述轨迹的相应动作实例,o-1:T表示沿着所述轨迹的相应选项实例,T表示沿着所述轨迹的时间步的数量。
5.根据权利要求1所述的方法,其中,所述获得演示数据包括:
获得初始演示数据,所述初始演示数据包括所述状态数据和所述动作数据,而不具有所述选项数据;
基于所述初始演示数据,通过使用所述当前学习的策略来推断所述选项数据;以及
通过将所推断出的选项数据补充到所述初始演示数据中来获得所述演示数据。
6.根据权利要求5所述的方法,其中,所述推断所述选项数据包括:
基于所述当前学习的策略以及在所述初始演示数据中包括的所述状态数据和所述动作数据,通过使用最大似然估计过程来生成所述选项数据的最可能值。
7.根据权利要求1或5所述的方法,其中,所述更新策略包括:
通过使用鉴别器,基于所述演示数据和所述学习者数据来估计所述演示者的行为与所述NN模型的行为之间的差异;
以最大化内循环中的差异为目标来更新所述鉴别器的参数;以及
以最小化外循环中的差异为目标来更新所述当前学习的策略的参数。
8.根据权利要求7所述的方法,其中,所述估计差异包括:
通过使用所述鉴别器来估计所述演示数据和所述学习者数据之间的占用度量的差异,其中,所述占用度量是状态、动作、选项和先前选项的函数。
9.根据权利要求8所述的方法,其中,所述高级策略部分和所述低级策略部分中的每一者都是所述占用度量的函数。
10.根据权利要求7所述的方法,其中,所述更新所述当前学习的策略的参数包括:
通过使用被表征为两级马尔可夫决策过程(MDP)的分层强化学习(HRL)过程来更新所述当前学习的策略的所述参数。
11.根据权利要求10所述的方法,其中,在所述HRL过程中使用的策略正则项是所述高级策略部分和所述低级策略部分的函数。
12.一种用于训练用于自动驾驶辅助的神经网络(NN)模型的方法,包括:
使用根据权利要求1-11中的一项所述的方法来训练用于自动驾驶辅助的所述NN模型,其中,所述演示数据表示驾驶员的用于驾驶车辆的行为。
13.一种用于训练用于控制机器人联动的神经网络(NN)模型的方法,包括:
使用根据权利要求1-11中的一项所述的方法来训练用于控制机器人联动的所述NN模型,其中,所述演示数据表示演示者的用于执行任务的联动。
14.一种用于利用经训练的神经网络(NN)模型来控制机器的方法,包括:
收集与所述机器执行任务相关的环境数据;
至少部分地基于所述环境数据来获得针对当前时刻的状态数据和选项数据;
利用所述经训练的NN模型,基于针对所述当前时刻的所述状态数据和所述选项数据来推断针对所述当前时刻的动作数据;以及
基于针对所述当前时刻的所述动作数据来控制所述机器的动作。
15.根据权利要求14所述的方法,其中,所述获得状态数据和选项数据包括:
至少部分地基于所述环境数据来获得针对所述当前时刻的状态数据;以及
至少部分地基于所述状态数据来推断针对所述当前时刻的所述选项数据。
16.一种能够进行自动驾驶辅助的车辆,包括:
传感器,其被配置用于收集与所述车辆执行自动驾驶辅助相关的环境数据的至少一部分;
一个或多个处理器;以及
存储计算机可执行指令的一个或多个存储设备,所述计算机可执行指令在被执行时使得所述一个或多个处理器执行根据权利要求14-15中的一项所述的方法的操作。
17.一种能够进行自动联动的机器人,包括:
传感器,其被配置用于收集与所述机器人执行自动联动相关的环境数据的至少一部分;
一个或多个处理器;以及
存储计算机可执行指令的一个或多个存储设备,所述计算机可执行指令在被执行时使得所述一个或多个处理器执行根据权利要求14-15中的一项所述的方法的操作。
18.一种计算机系统,包括:
一个或多个处理器;以及
存储计算机可执行指令的一个或多个存储设备,所述计算机可执行指令在被执行时使得所述一个或多个处理器执行根据权利要求1-15中的一项所述的方法的操作。
19.一个或多个存储计算机可执行指令的计算机可读存储介质,所述计算机可执行指令在被执行时使得一个或多个处理器执行根据权利要求1-15中的一项所述的方法的操作。
20.一种包括计算机可执行指令的计算机程序产品,所述计算机可执行指令在被执行时使得一个或多个处理器执行根据权利要求1-15中的一项所述的方法的操作。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2021/097252 WO2022252013A1 (en) | 2021-05-31 | 2021-05-31 | Method and apparatus for training neural network for imitating demonstrator's behavior |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117441174A true CN117441174A (zh) | 2024-01-23 |
Family
ID=84323793
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180098842.3A Pending CN117441174A (zh) | 2021-05-31 | 2021-05-31 | 用于训练用于模仿演示者的行为的神经网络的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240256887A1 (zh) |
CN (1) | CN117441174A (zh) |
DE (1) | DE112021007327T5 (zh) |
WO (1) | WO2022252013A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10679129B2 (en) * | 2017-09-28 | 2020-06-09 | D5Ai Llc | Stochastic categorical autoencoder network |
US11537872B2 (en) * | 2018-07-30 | 2022-12-27 | International Business Machines Corporation | Imitation learning by action shaping with antagonist reinforcement learning |
CN109765820B (zh) * | 2019-01-14 | 2019-08-09 | 南栖仙策(南京)科技有限公司 | 一种用于自动驾驶控制策略的训练系统 |
WO2020154542A1 (en) * | 2019-01-23 | 2020-07-30 | Google Llc | Efficient adaption of robot control policy for new task using meta-learning based on meta-imitation learning and meta-reinforcement learning |
CN112052947B (zh) * | 2020-08-17 | 2021-06-25 | 清华大学 | 基于策略选项的分层强化学习方法和装置 |
-
2021
- 2021-05-31 WO PCT/CN2021/097252 patent/WO2022252013A1/en active Application Filing
- 2021-05-31 CN CN202180098842.3A patent/CN117441174A/zh active Pending
- 2021-05-31 DE DE112021007327.3T patent/DE112021007327T5/de active Pending
- 2021-05-31 US US18/565,312 patent/US20240256887A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
DE112021007327T5 (de) | 2024-02-22 |
WO2022252013A1 (en) | 2022-12-08 |
US20240256887A1 (en) | 2024-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11900797B2 (en) | Autonomous vehicle planning | |
CN113805572B (zh) | 运动规划的方法与装置 | |
Zhang et al. | Query-efficient imitation learning for end-to-end simulated driving | |
Lu et al. | Imitation is not enough: Robustifying imitation with reinforcement learning for challenging driving scenarios | |
US10795360B2 (en) | Utility decomposition with deep corrections | |
Ronecker et al. | Deep Q-network based decision making for autonomous driving | |
CN113253733B (zh) | 一种基于学习和融合的导航避障方法、装置及系统 | |
CN113276852B (zh) | 一种基于最大熵强化学习框架的无人驾驶车道保持方法 | |
CN114261400B (zh) | 一种自动驾驶决策方法、装置、设备和存储介质 | |
Liu et al. | Deep structured reactive planning | |
CN111000492B (zh) | 基于知识图谱的智能扫地机行为决策方法及智能扫地机 | |
CN114077807A (zh) | 基于语义环境图控制移动机器人的计算机实现方法和设备 | |
CN115204455A (zh) | 适用于高速与环路交通场景的长时域驾驶行为决策方法 | |
CN116839582A (zh) | 一种基于改进q学习的无人机航迹规划方法 | |
CN117441174A (zh) | 用于训练用于模仿演示者的行为的神经网络的方法和装置 | |
CN114859921B (zh) | 一种基于强化学习的自动驾驶优化方法及相关设备 | |
CN116027788A (zh) | 融合复杂网络理论和部分可观察马尔可夫决策过程的智能驾驶行为决策方法及设备 | |
CN114997048A (zh) | 基于探索策略改进的td3算法的自动驾驶车辆车道保持方法 | |
Gharaee et al. | A Bayesian approach to reinforcement learning of vision-based vehicular control | |
CN113887726A (zh) | 数据生成、驾驶策略验证、强化学习网络训练方法及装置 | |
Deep | Reinforcement learning | |
US20240336277A1 (en) | Hierarchical Planning Through Goal-Conditioned Offline Reinforcement Learning | |
CN116880218B (zh) | 基于驾驶风格误解的鲁棒驾驶策略生成方法及系统 | |
Yandrapu | Reinforcement Learning based Motion Planning of Autonomous Ground Vehicles | |
CN111434550B (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 |