CN113509726B - 交互模型训练方法、装置、计算机设备和存储介质 - Google Patents
交互模型训练方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN113509726B CN113509726B CN202110410245.1A CN202110410245A CN113509726B CN 113509726 B CN113509726 B CN 113509726B CN 202110410245 A CN202110410245 A CN 202110410245A CN 113509726 B CN113509726 B CN 113509726B
- Authority
- CN
- China
- Prior art keywords
- interaction
- state
- model
- training
- track
- 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
Links
- 230000003993 interaction Effects 0.000 title claims abstract description 785
- 238000012549 training Methods 0.000 title claims abstract description 241
- 238000000034 method Methods 0.000 title claims abstract description 73
- 230000002441 reversible effect Effects 0.000 claims abstract description 39
- 230000009471 action Effects 0.000 claims description 63
- 230000002452 interceptive effect Effects 0.000 claims description 49
- 230000008901 benefit Effects 0.000 claims description 30
- 230000008569 process Effects 0.000 claims description 29
- 238000004590 computer program Methods 0.000 claims description 16
- 230000000694 effects Effects 0.000 abstract description 3
- 230000000875 corresponding effect Effects 0.000 description 143
- 230000002787 reinforcement Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 241000282414 Homo sapiens Species 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 4
- 230000000670 limiting effect Effects 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000000386 athletic effect Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 208000037656 Respiratory Sounds Diseases 0.000 description 1
- 206010047924 Wheezing Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 102000004196 processed proteins & peptides Human genes 0.000 description 1
- 108090000765 processed proteins & peptides Proteins 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/55—Controlling game characters or game objects based on the game progress
- A63F13/56—Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及一种交互模型训练方法、装置、计算机设备和存储介质。所述方法包括:获取参考交互轨迹;所述参考交互状态序列包括多个按照交互顺序依次进行排序的参考交互状态;按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态;根据当前初始交互状态对待训练的交互模型进行训练,得到当前初始交互状态对应的当前训练交互模型;当确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件时,返回按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态的步骤,得到更新后的当前初始交互状态,以继续进行模型训练,直至满足训练停止条件,得到已训练的目标交互模型。采用本方法能够提高模型训练效果。
Description
技术领域
本申请涉及人工智能技术领域,特别是涉及一种交互模型训练方法、装置、计算机设备和存储介质。
背景技术
随着互联网技术的不断发展,游戏逐渐成为人们热衷的娱乐节目,基于虚拟环境的游戏越来越普遍,例如,游戏中,敌我双方可以根据游戏目标在游戏应用中进行对抗,以获取胜利。
在虚拟环境中,可以通过人工智能进行竞技,例如在游戏玩家掉线时进行托管,利用交互模型代替玩家在虚拟环境中进行竞技。然而目前的交互模型存在训练效率低的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种交互模型训练方法、装置、计算机设备和存储介质。
一种交互模型训练方法,所述方法包括:获取参考交互轨迹;所述参考交互状态序列包括多个按照交互顺序依次进行排序的参考交互状态;按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态;根据当前初始交互状态对待训练的交互模型进行训练,得到当前初始交互状态对应的当前训练交互模型;当确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件时,返回按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态的步骤,得到更新后的当前初始交互状态,以继续进行模型训练,直至满足训练停止条件,得到已训练的目标交互模型。
一种交互模型训练装置,所述装置包括:参考交互轨迹获取模块,用于获取参考交互轨迹;所述参考交互状态序列包括多个按照交互顺序依次进行排序的参考交互状态;当前初始交互状态选取模块,用于按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态;训练模块,用于根据当前初始交互状态对待训练的交互模型进行训练,得到当前初始交互状态对应的当前训练交互模型;返回模块,用于当确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件时,返回按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态的步骤,得到更新后的当前初始交互状态,以继续进行模型训练,直至满足训练停止条件,得到已训练的目标交互模型。
在一些实施例中,所述返回模块用于:确定所述参考交互轨迹所对应的交互胜利方,获取所述交互胜利方在模型训练过程中的胜利比例;当所述胜利比例大于比例阈值时,确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件,返回按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态的步骤。
在一些实施例中,待训练的交互模型包括进行交互的第一交互模型以及第二交互模型;所述训练模块用于:所述第一交互模型基于当前初始交互状态得到第一交互动作,在虚拟交互环境中控制第一虚拟对象执行所述第一交互动作,得到第一更新状态;基于所述第一更新状态计算第一收益值,基于所述第一收益值调整所述第一交互模型的参数;所述第二交互模型基于所述第一更新状态得到第二交互动作,在虚拟交互环境中执行所述第二交互动作,得到第二更新状态;基于所述第二更新状态计算第二收益值,基于所述第二收益值调整所述第二交互模型的参数。
在一些实施例中,所述交互模型是通过多个训练任务进行训练的,所述参考交互轨迹获取模块包括:统计胜利数量得到单元,用于对于当前训练任务,对所述多个训练任务对应的各个交互方的训练胜利数量进行统计,得到各个所述交互方对应的统计胜利数量;选取概率确定单元,用于基于所述统计胜利数量确定所述交互方对应的候选交互轨迹的选取概率,其中,所述统计胜利数量与所述选取概率成负相关关系;选取单元,用于基于各个所述交互方对应的候选交互轨迹的选取概率,从候选交互轨迹中选取当前训练任务对应的参考交互轨迹;其中,所述交互方对应的候选交互轨迹的胜利方为所述交互方。
在一些实施例中,所述选取单元用于:确定各个所述交互方对应的候选交互轨迹被选为参考交互轨迹的选取次数;确定最小的选取次数是否大于预设数量阈值,若是,则基于各个所述交互方对应的候选交互轨迹的选取概率,从候选交互轨迹中选取当前训练任务对应的参考交互轨迹;若否,则将最小的选取次数所对应的候选交互轨迹作为当前训练任务对应的参考交互轨迹。
在一些实施例中,所述选取单元用于:基于各个所述交互方对应的候选交互轨迹的选取概率,从目标数值范围中确定所述候选交互轨迹对应的数值范围;在所述目标数值范围中产生随机数;将包括所述随机数的数值范围所对应的候选交互轨迹,作为当前训练任务对应的参考交互轨迹。
在一些实施例中,所述交互模型是通过多个训练任务进行训练的,所述当前初始交互状态选取模块用于:对于各个训练任务,当第一次选择所述参考交互轨迹中的当前初始交互状态时,则获取参考交互轨迹中各个交互状态对应的选取概率,基于所述交互状态对应的选取概率从所述参考交互轨迹中选取当前初始交互状态;否则,按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:获取参考交互轨迹;所述参考交互状态序列包括多个按照交互顺序依次进行排序的参考交互状态;按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态;根据当前初始交互状态对待训练的交互模型进行训练,得到当前初始交互状态对应的当前训练交互模型;当确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件时,返回按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态的步骤,得到更新后的当前初始交互状态,以继续进行模型训练,直至满足训练停止条件,得到已训练的目标交互模型
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:获取参考交互轨迹;所述参考交互状态序列包括多个按照交互顺序依次进行排序的参考交互状态;按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态;根据当前初始交互状态对待训练的交互模型进行训练,得到当前初始交互状态对应的当前训练交互模型;当确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件时,返回按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态的步骤,得到更新后的当前初始交互状态,以继续进行模型训练,直至满足训练停止条件,得到已训练的目标交互模型
上述交互模型训练方法、装置、计算机设备和存储介质,由于可以基于参考交互轨迹进行训练,并按照交互顺序的倒序从参考交互轨迹中选取当前初始交互状态,因此可以使得交互模型随着模型训练的进行,在模型越来越智能的情况下,需要探索的空间越来越大,从而使得模型能够更有效率的进行探索,因此提高了模型训练的效率。而且是当当前训练交互模型满足当前初始交互状态对应的模型收敛条件时,进行当前初始交互状态的更新,从而使得模型在当前初始交互状态下进行了充分的学习,故提高了模型的交互准确度。
附图说明
图1为一些实施例中交互模型训练方法的应用环境图;
图2为一些实施例中交互模型训练方法的流程示意图;
图3为一些实施例中基于参考交互轨迹进行模型训练的示意图;
图4为一些实施例中根据当前初始交互状态对待训练的交互模型进行训练,得到当前初始交互状态对应的当前训练交互模型的流程示意图;
图5为一些实施例中获取参考交互轨迹的流程示意图;
图6为一些实施例中基于胜率选取状态的示意图;
图7为一些实施例中交互模型训练装置的结构框图;
图8为一些实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的虚拟对象控制方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。终端110上运行有交互应用,服务器104可以执行本申请实施例提供的交互模型训练方法,训练得到目标交互模型,并部署在服务器104中。服务器可以基于该目标交互模型进行交互,并向终端102发送交互结果,例如终端102上显示交互结果。以游戏为例,终端上可以运行有游戏应用,当游戏玩家需要托管游戏时,可以向服务器104发送托管请求,服务器104接收到该游戏托管请求时,将终端102的游戏应用上登录的用户账号对应的游戏角色例如A角色作为目标虚拟对象,利用本申请实施例的交互模型训练方法训练得到的目标交互模型确定A角色所要执行的动作,例如是奔跑,则服务器控制A角色进行奔跑,游戏应用中展示A角色在游戏的环境中进行奔跑的画面。
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一些实施例中,如图2所示,提供了一种交互模型训练方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤S202,获取参考交互轨迹;参考交互状态序列包括多个按照交互顺序依次进行排序的参考交互状态。
其中,交互状态是指虚拟交互环境中的状态,状态可以用于表示虚拟对象所处的状况。在虚拟交互环境中,状态是不断进行改变的,例如随着虚拟对象之间的交互,虚拟环境不断的在进行改变,即状态也在不断的改变。虚拟对象是指在交互应用中例如游戏应用中虚拟出来的角色,为虚拟环境中的活动实体,可以由计算机设备或者人通过操作进行控制。虚拟对象可以是三维或者二维的,可以是人物虚拟对象或者动物虚拟对象等。虚拟环境是虚拟对象进行交互的环境,可以是二维交互环境或者三维交互环境。例如游戏运行时,可以通过屏幕展示表示虚拟环境的游戏画面,游戏中的人物在该虚拟环境中进行交互。例如,游戏应用在运行时,可以显示图像帧,利用图像帧表示英雄人物所处的环境,以便游戏玩家了解英雄人物当前所处的环境。
参考交互状态是参考交互轨迹中所包括的状态。由于虚拟环境中状态信息数量比较大,因此可以选取影响交互动作执行的状态,作为参考状态。例如,参考交互状态可以包括单位信息、资源信息以及全局信息的至少一种。其中单位信息是指以虚拟对象为单位所确定的信息,例如可以包括游戏玩家的位置以及状态等信息,游戏玩家可以包括自己、队友以及敌人;资源信息是指与虚拟环境中的资源有关的信息,例如包括物品的类型以及位置等信息。全局信息是表示全局的局面状况的信息,例如可以包括游戏持续时间、游戏剩余或者队友存活数量的至少一种等。
参考交互轨迹中的参考交互状态是按照交互的顺序依次进行排列的,多个是指至少两个,例如可以是大于5个。参考交互状态所对应的交互时间越早,则在参考交互轨迹中的排序越前。举个例子,在游戏中,假设游戏的初始状态为状态1,当A角色进行移动后,状态更新为状态2,当B角色攻击A角色之后,状态2更新为状态3。则参考交互轨迹可以为:状态1→状态2→状态3。可以理解,由于状态不断的进行变化,因此可以每隔预设时长获取一次虚拟环境中的状态,组成参考交互轨迹。例如每隔2秒获取一次交互状态。其中,参考交互轨迹的状态可以来自于人类的交互记录,或者已有的旧策略的交互记录。参考交互轨迹可以是已经取得了最终的交互结果的轨迹,即获得最终的奖励,参考交互轨迹相当于人类老师对学生做出示范操作。例如对于获取宝箱的游戏,一方的任务是获取宝箱,另一方的任务是保护宝箱不被获取得到。则交互结果为是否盗取得到了宝箱。对于要获取宝箱的一方,如果其获取得到宝箱,则最终结果为获取得到宝箱的一方为胜利方。对于保护宝箱的一方,如果其保护了宝箱,则最终结果为保护宝箱的一方为胜利方。例如参考交互状态可以是用户在交互应用中进行交互时所产生的交互状态,例如游戏专家可以在游戏中进行对战,并获取得到对战胜利的结果,服务器可以记录对战过程的游戏状态,并按照游戏时间进行排序,组成参考交互轨迹。
具体地,服务器可以获取交互应用对应的历史交互记录,历史交互记录中记录了虚拟环境在各个时刻所处的状态,服务器可以提取各个时刻所处的状态,按照交互记录所对应的交互时间依次对各个时刻所处的状态进行排序,交互时间越早,则排序越前,从而可以得到参考交互轨迹。
步骤S204,按照交互顺序的倒序从参考交互轨迹中选取当前初始交互状态。
具体地,当前初始交互状态是指当前选取的初始的交互状态。在生成参考交互轨迹时,是按照交互顺序依次生成的,即参考交互轨迹中的状态是按照状态的时间变化依次进行排序的,状态的发生时间越早,则在参考交互轨迹中的排序越前。而按照交互顺序的倒序选取当前初始交互状态时,是从后往前选取交互状态。例如对于参考交互轨迹“状态1→状态2→状态3”,先选取状态3作为当前初始交互状态,再选取状态2作为当前初始交互状态,最后选取状态1作为当前初始交互状态。
步骤S206,根据当前初始交互状态对待训练的交互模型进行训练,得到当前初始交互状态对应的当前训练交互模型。
其中,当前初始交互状态对应的当前训练交互模型是指将当前初始交互状态作为模型开始探索的起始状态,所训练得到的模型。交互模型例如可以是强化学习模型,可以是基于深度强化学习(Deep Reinforcement Learning)训练得到的。可以采用对强化学习模型进行训练的方式进行训练,例如可以采用PPO(Proximal Policy Optimization,近端策略优化算法)强化学习算法进行训练。在训练时,将当前初始交互状态作为初始的交互状态,从当前初始交互状态开始进行探索,以对交互模型进行训练。例如,可以将当前初始交互状态输入到待训练的交互模型中,交互模型输出各个候选的动作对应的选取概率,获取选取概率最大的候选动作作为目标动作,控制交互模型对应的虚拟对象执行目标动作。执行目标动作之后,虚拟环境中的状态会发生改变,则可以得到更新后的状态。服务器可以基于更新后的状态确定执行目标动作的价值,朝着使得价值变大的方向调整模型的参数。调整之后,根据调整模型参数后的交互模型以及更新后的状态确定下一步执行的动作,然后再进行模型参数的调整,模型参数调整后,再基于再一次更新的状态确定下一步执行的动作。这样经过多次训练,不断的得到当前初始交互状态对应的当前训练交互模型。
其中,价值可以是正的,也可以是负的。价值用于反馈在控制虚拟对象执行目标动作所得到的奖励。因此价值可以用于评价虚拟对象执行目标动作的效果,为虚拟环境对于执行目标动作的反馈。例如可以基于Bellman(贝尔曼)方程计算得到价值。Bellman(贝尔曼)方程可以见公式1,其中s表示更新前的状态,s′表示更新后的状态,R(s,π(s))表示在状态s的情况下,执行模型π根据状态s得到的动作之后,所对应的收益R。Vπ(s)表示执行模型π根据状态s得到的动作后,所确定的价值V,γ是折现因子,一般小于1,具体可以根据需要设置,p表示概率,表示的是从状态s开始,采取动作a得到状态s′的概率。贝尔曼方程可以表示价值函数等于瞬时回报的期望加上下一状态的价值函数的期望,即执行交互动作得到的收益是根据所有未来时刻的即时收益得到的,其中当前时刻的反馈是比较重要的,距离当前时刻越远的时刻的收益,对当前时刻执行交互动作所得到的回报的影响越小。其中调整模型参数的方法可以根据需要设置,例如可以是可以采用近端策略优化(Proximal PolicyOptimization,PPO)算法、A3C或者DDPG(Deep Deterministic Policy Gradient,深度确定性策略梯度)等。例如,虚拟对象在执行目标交互动作前的能量值为5,执行目标交互动作前的能量值之后的能量值变为12,则状态变化为能量值增加了7,对应的价值可以为12。
Vπ(s)=R(s,π(s))+γ∑s′P(s′|s,π(s))Vπ(s′) (1)
在一些实施例,在将状态输入到模型中时,可以将状态信息抽象成为对应模态的输入,例如单位和资源的位置、速度等信息,可以作为DNN(Deep Neural Network,深度神经网络)的输入,经非线性变换,转换成单位的向量嵌入表示。不同单位之间的相互位置关系,可以用图像的形式来表示,作为CNN(Convolutional Neural Network,卷积神经网络)的输入,经多层卷积,转换成空间信息表示。全局信息可以作为MLP(Multilayer Perceptron,多层感知机)的输入,经非线性变换,转换成全局信息表示。
步骤S208,当确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件时,返回按照交互顺序的倒序从参考交互轨迹中选取当前初始交互状态的步骤,得到更新后的当前初始交互状态,以继续进行模型训练,直至满足训练停止条件,得到已训练的目标交互模型。
其中,满足当前初始交互状态对应的模型收敛条件表示交互模型在当前初始交互状态下已经充分训练,即在当前初始交互状态下模型已经进行了充分的探索。例如,当前初始交互状态对应的模型收敛条件可以是从当前初始交互状态开始进行训练,模型训练的次数已经达到第一预设次数阈值。训练停止条件是模型停止训练的条件,例如可以包括模型的训练总次数大于第二预设次数阈值、模型的损失值小于损失值阈值、参考交互轨迹中的参考交互状态均作为当前初始交互状态进行模型训练或者模型的准确率大于准确率阈值的至少一个。其中第二预设次数阈值大于第一预设次数阈值,例如第二预设次数阈值是第一预设次数阈值的n倍,其中n大于5。例如第二预设次数阈值可以是1万次,第一预设次数阈值可以是1千次,这样使得交互模型是选取了多个交互状态来作为起始状态进行训练的,保证了模型得到充分的训练。
具体地,在模型训练的过程中,如果满足当前初始交互状态对应的模型收敛条件,则服务器从参考交互轨迹中重新选取新的当前初始交互状态,并从新的当前初始交互状态开始,对基于上一个当前初始交互状态所训练得到的模型继续进行训练,以让模型从新的当前初始交互状态开始继续进行探索。通过多次选取当前初始交互状态,模型的交互能力越来越强,在达到训练停止条件时,模型经过充分的训练,得到已训练的目标交互模型。
举个例子,假设参考交互轨迹有5个状态,按照交互顺序依次为状态1→状态2→状态3→状态4→状态5。则先选取状态5作为当前初始交互状态,根据状态5对模型进行训练。当满足状态5对应的模型收敛条件时,选取状态4作为当前初始交互状态,根据状态4对基于状态5训练得到的模型继续进行训练。当满足状态4对应的模型收敛条件时,选取状态3作为当前初始交互状态,根据状态3继续对模型进行训练,在根据状态3进行训练的过程中,如果确定模型满足训练停止条件,则停止训练,将停止训练时所得到的模型作为已训练的目标交互模型。当需要执行交互任务时,服务器可以利用目标交互模型以及虚拟环境中的状态预测得到要执行的动作,并控制对于的虚拟对象执行该动作,以进行交互。
具体地,服务器可以判断当前训练交互模型是否满足当前初始交互状态对应的模型收敛条件,如果满足,则按可以返回步骤S204,重新选取当前初始交互状态。如果不满足,则可以继续进行训练。在训练的过程中,如果满足训练停止条件,则停止模型的训练,得到已训练的目标交互模型。
上述交互模型训练方法中,由于可以基于参考交互轨迹进行训练,并按照交互顺序的倒序从参考交互轨迹中选取当前初始交互状态,因此可以使得交互模型随着模型训练的进行,在模型越来越智能的情况下,需要探索的空间越来越大,从而使得模型能够更有效率的进行探索,因此提高了模型训练的效率。而且是当当前训练交互模型满足当前初始交互状态对应的模型收敛条件时,进行当前初始交互状态的更新,从而使得模型在当前初始交互状态下进行了充分的学习,故提高了模型的交互准确度。而且在当交互的模型有多个时,即多智能体博弈训练时,通过巧妙的逆向监督课程设计,加速了智能体自我博弈训练速度。
如图3所示,为一些实施例中基于参考交互轨迹进行模型训练的示意图。初始轨迹为参考交互轨迹,即为提供初始状态的轨迹。参考交互轨迹包括状态0至状态T,在选取当前初始交互状态时,可以先选取状态T作为当前初始交互状态,然后再选取状态T-1作为当前初始交互状态。对于每个当前初始交互状态,将该状态作为初始的状态开始进行训练,即训练轨迹是从当前初始交互状态开始的。在靠近轨迹终点的状态,智能体相对容易地通过随机探索得到奖励,并对当前所处的状态做出估计,这种情形为比较简单的课程。当智能体即模型能够完成轨迹末端的课程时,增加其课程难度,为将其起始状态设置为示范轨迹中更早期的状态,这时,智能体需要交互的次数更长,需要探索的空间更大。通过这种逆向监督课程学习,可以使得其与强化学习中的贝尔曼(Bellman)更新思想保持一致,贝尔曼更新中,状态s的价值依赖于其后继状态的价值函数。在强化学习的早期阶段,状态函数的值是随机初始化的,这导致了收敛速度比较慢。使用逆向监督课程学习,早期的训练过程使用了轨迹末端的状态,这些状态距离奖励信号的更近,可以更加准确的进行估计。当估计好了轨迹末端的状态价值函数后,再去估计状态早期的价值函数,这会加快训练过程。
例如,在训练的早期,智能体的模型参数是随机的,难以完成需要长序列操作的任务。故可以在训练的早期,通过按照交互顺序的倒序从参考交互轨迹中选取当前初始交互状态,从而限制智能体的状态空间,使得智能体在课程学习的早期,只在有限的范围内活动,限制智能体交互的次数可以加快整个训练过程。而随着智能体获得奖励的提升,逐渐放宽其活动范围,使得其探索的状态空间越来越大。
在一些实施例中,还可以在训练时,逐步拓展智能体的动作空间,例如随着训练的进行,模型对应的候选动作的数量逐渐增大。较小的动作空间一般比较大的动作空间更容易学习。例如,在射击类游戏中,先让智能体学习移动的课程,当智能体学习到了移动的能力之后,例如预测移动的准确度大于阈值时,再让智能体同时学习带有移动和设计的动作的课程。
在一些实施例中,还可以在训练时,随着训练的进行,增加参考交互轨迹的长度。一般来说,训练的早期,智能体的策略随机,难以完成需要长序列操作的任务。在训练的早期,限制智能体交互的次数可以加快整个训练过程。
在一些实施例中,当确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件时,返回按照交互顺序的倒序从参考交互轨迹中选取当前初始交互状态的步骤包括:确定参考交互轨迹所对应的交互胜利方,获取交互胜利方在模型训练过程中的胜利比例;当胜利比例大于比例阈值时,确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件,返回按照交互顺序的倒序从参考交互轨迹中选取当前初始交互状态的步骤。
其中,参考交互轨迹可以是已经得到了最终的交互结果的交互轨迹。例如,在游戏中,两个交互方在不断的进行对抗,其中有一方例如A方取得了最终的胜利,当将两个交互方不断的进行对抗所生成的状态组成参考交互轨迹时,则A方为该参考交互轨迹所对应的胜利方。即参考交互轨迹所对应的交互胜利方是在参考交互轨迹中最终取得胜利的一方。交互胜利方在模型训练过程中的胜利比例是根据当前初始交互状态对待训练的交互模型进行训练的过程中,交互胜利方取得胜利的次数,与根据当前初始交互状态对待训练的交互模型进行对抗的总次数的比例。交互胜利方取得胜利可以是每次对战的胜利,例如在将当前交互状态作为初始状态开始进行训练时,如果交互双方进行对战,其中一方取得了胜利,则在未满足当前初始交互状态对应的模型收敛条件时,继续将当前初始交互状态作为初始的状态,将虚拟环境重置为当前初始交互状态,以返回当前初始交互状态,基于当前初始交互状态继续进行模型训练,在训练过程中重新进行对战。比例阈值可以根据需要设置,比例阈值可以是大于50%。
具体地,当前初始交互状态对应的模型收敛条件可以为交互胜利方在模型训练过程中的胜利比例大于比例阈值。服务器计算根据当前初始交互状态进行训练的过程中,即将当前初始交互状态作为初始的状态开始进行训练的对抗次数,以及参考交互轨迹的胜利方的胜利次数,将参考交互轨迹的胜利方的胜利次数除以对抗次数,得到胜利比例。当该胜利比例大于比例预设值,则确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件。因此可以重新开始选择当前交互模型。
例如,假设当前初始交互状态是状态5,交互方包括A方以及B方,其中参考交互轨迹的胜利方是A方,则从状态5开始进行训练的过程中,假设A方与B方进行了5次的对战,其中A方顺利了3次,B方胜利了2次,则可以得到A方的胜利比例为3/5*100%=60%,如果比例阈值是55%,则60%大于55%,故满足状态5对应的模型收敛条件,可以从参考交互轨迹中选取状态5的前一个状态,即状态4,作为当前初始交互状态。
本申请实施例中,由于参考交互轨迹的交互胜利方是在参考交互轨迹中取得胜利的一方,当交互胜利方在模型训练过程中的胜利比例大于比例阈值时,说明交互模型已经学习到了当前初始交互状态为起始状态的情况下,参考交互轨迹的胜利方如何取得胜利的模型参数,因此可以重新选取当前初始交互状态,以增大模型的学习难度,从而提高模型的训练效率以及效果。而且,通过将初始状态重置到示范轨迹(参考交互轨迹)更早期的状态。随着训练进程的增加,交互双方的初始状态都向最初状态0靠近,而状态0为虚拟环境的最初的状态,没有人类动作或者之前策略的动作的干扰,对于交互双方都是公平的,通过课程学习协调博弈双发的训练进程,避免在当前状态下一方过强而使得另一方陷入局部最优解。
在一些实施例中,在根据胜率是否达到阈值来更新当前初始交互状态的情况下,还可以加入随机扰动,例如可以基于Dirichlet(狄克雷)函数确定各个交互状态对应的选取概率。狄克雷函数的α参数可以是0.3,即在按照倒序选取当前交互状态时,可以是基于各个当前交互状态的选取概率进行选取,例如当当前初始交互状态为状态5时,如果要更新当前交互状态,则获取状态5之前的交互状态对应的选取概率,基于该选取概率进行状态的选取。通过在基于课程难度进行学习中加入随机扰动,在当训练任务有多个时,即基于多个训练任务对模型进行训练时,可以使得在每个课程难度阶段,都有不同的初始状态参与训练,从而减少过拟合。
在一些实施例中,待训练的交互模型包括进行交互的第一交互模型以及第二交互模型。如图4所示,根据当前初始交互状态对待训练的交互模型进行训练,得到当前初始交互状态对应的当前训练交互模型包括:
步骤S402,第一交互模型基于当前初始交互状态得到第一交互动作,在虚拟交互环境中控制第一虚拟对象执行第一交互动作,得到第一更新状态。
其中,第二交互模型是与第一交互模型通过分别控制的虚拟对象相互进行交互的模型。第一交互模型输出的是第一虚拟对象所要执行的动作,第二交互模型输出的是第二虚拟对象所要执行的动作。例如,第一交互模型是输出我方游戏角色的动作的模型,第二交互模型是输出敌方游戏角色的动作的模型。一方可以对应有一个或者多个游戏角色。
具体地,在当前初始交互状态为初始状态的情况下,可以首先由其中的一个交互模型确定第一交互动作。例如可以将当前初始交互状态输入到第一交互模型中,第一交互模型输出各个候选动作的概率,从中选取概率最大的候选动作,作为第一交互动作,并控制第一虚拟对象执行第一交互动作。执行第一交互动作之后,虚拟环境中的交互状态由当前初始交互状态变更为第一更新状态。
步骤S404,基于第一更新状态计算第一收益值,基于第一收益值调整第一交互模型的参数。
具体地,可以预先设置状态与收益值的对应关系,即可以预先设置价值函数,基于价值函数得到收益值。例如可以预先设置状态变化量与收益值的关系,当得到第一更新状态之后,确定第一更新状态相对于当前更新状态的目标变化量,基于目标变化量以及状态变化量与收益值的关系得到目标变化量所对应的收益值。例如,可以在夺取宝藏的交互任务中,设置取得开宝藏的钥匙的收益值为100,远距离攻击的收益(reward)值为2。得到收益值之后,可以朝着使得收益值变大的方向调整模型的参数,从而使得模型的准确度越来越高。
步骤S406,第二交互模型基于第一更新状态得到第二交互动作,在虚拟交互环境中控制第二虚拟对象执行第二交互动作,得到第二更新状态。
具体地,在第一更新状态下,服务器可以将第一更新状态输入到第二交互模型中,第二交互模型输出各个候选动作的概率,从中选取概率最大的候选动作,作为第二交互动作,并控制第二虚拟对象执行第二交互动作。执行第二交互动作之后,虚拟环境中的交互状态由第一更新状态变更为第二更新状态。
步骤S408,基于第二更新状态计算第二收益值,基于第二收益值调整第二交互模型的参数。
具体地,可以预先设置状态与收益值的对应关系,当得到第二更新状态之后,确定第二更新状态相对于第一更新状态的目标变化量,基于目标变化量以及状态变化量与收益值的关系得到目标变化量所对应的收益值。得到收益值之后,可以朝着使得收益值变大的方向调整模型的参数,从而使得模型的准确度越来越高。
举个实际的例子,游戏中存在敌我双方,待训练的第一交互模型输出我方的第一个英雄的动作为攻击动作,服务器控制我方第一个英雄英雄执行该交互动作,攻击敌方英雄。第二交互模型也可以输出对应的反击动作,控制敌方英雄进行反击。这样,在训练的过程中,从当前初始交互状态开始同时对第一交互模型以及第二交互模型进行训练,从而可以使得第一交互模型以及第二交互模型在训练的过程中学习到了与对方的模型进行对战的能力,提高了对战的效率。
在一些实施例中,交互模型是通过多个训练任务进行训练的,如图5所示,获取参考交互轨迹包括:
步骤S502,对于当前训练任务,对多个训练任务对应的各个交互方的训练胜利数量进行统计,得到各个交互方对应的统计胜利数量。
其中,在训练交互模型时,可以同时利用多个训练任务同时进行训练。其中,这多个任务用于共同对模型的参数进行调整,例如每个训练任务可以基于当前的模型参数确定所输出的动作,再基于所输出的动作确定模型参数的下降梯度,基于该下降梯度调整模型参数。每个训练任务可选取参考交互轨迹,依据对应的参考交互轨迹进行训练。当前训练任务是当前需要选取参考交互轨迹的任务。每个训练任务均可以作为当前训练任务。例如,在训练过程中,当增加了一个新的训练任务时,该任务需要选取参考交互轨迹,则可以将该任务作为当前训练任务。
具体地,待训练的交互模型包括多个交互模型,例如包括进行交互的第一交互模型以及第二交互模型,该第一交互模型以及第二交互模型可以基于参考交互轨迹不断的进行交互,从而进行模型训练。第一交互模型为第一交互方所对应的模型,输出第一交互方的各个虚拟对象的动作,第二交互模型是第二交互方所对应的模型,输出第二交互方对应的虚拟对象的动作。在统计时,将每个交互方的胜利数量进行相加,得到每个交互方对应的统计胜利数量,胜利数量是每次对战的胜利的数量。即胜利数量的和。例如,假设同时开启了3个交互环境对第一交互模型以及第二交互模型进行训练。假设在第一个环境中,第一交互方的胜利数量为5次,第二交互方对应的胜利数量为8次;假设在第二个环境中,第一交互方的胜利数量为6次,第二交互方对应的胜利数量为10次。假设在第三个环境中,第一交互方的胜利数量为9次,第二交互方对应的胜利数量为12次。则第一交互方对应的统计胜利数量为5+6+9=20次,第二交互方对应的统计胜利数量为8+10+12=30次。
步骤S504,基于统计胜利数量确定交互方对应的候选交互轨迹的选取概率,其中,统计胜利数量与选取概率成负相关关系。
具体地,交互方对应的候选交互轨迹是指在该候选交互轨迹中,该交互方是胜利的一方。例如,假设对于第一交互方以及第二交互方,在参考轨迹1中,第一交互方取得了胜利,第二交互方失败了,则参考轨迹为第一交互方对应的候选交互轨迹。统计胜利数量与选取概率成负相关关系,即统计胜利数量越大,则选取概率越小。例如可以将总的对战数量除以统计胜利数量,再进行归一化处理,得到选取概率,或者将统计胜利数量的倒数进行归一化处理后,得到选取概率。其中,归一化处理之后,交互方的选取概率之和为1。例如当有两个交互方时,第一交互方对应的统计胜利数量为20次,第二交互方对应的统计胜利数量为30次,则总的对战数量为50,第一交互方对应的统计胜利数量的倒数为1/20。第二交互方对应的统计胜利数量的倒数为1/30。则1/20:1/30为6:4,故第一交互方的选取概率为0.6,第二交互方的选取概率为0.4。
步骤S506,基于各个交互方对应的候选交互轨迹的选取概率,从候选交互轨迹中选取当前训练任务对应的参考交互轨迹;其中,交互方对应的候选交互轨迹的胜利方为交互方。
具体地,选取概率表示候选交互轨迹被选取为参考交互轨迹的可能性,概率越大,则可能性越大。例如,当选取概率为0.6时,表示有60%的机会被选取为参考交互轨迹。通过根据统计胜利数量得到选取概率,胜利数量越大的一方所对应的交互轨迹被选取的可能性越小,从而使得在选取参考交互轨迹时,更有可能选取得到模型训练容易失败的一方所对应的轨迹,而容易失败的一方所对应的轨迹是该交互方胜利的轨迹,在该轨迹中,该交互方对应的状态的探索空间更大,从而使得容易失败的一方能够获得更多的探索空间,使得交互双方分别对应的模型的对抗能力更加均衡。例如,如图6所示,交互双方分别对应的轨迹的各个状态对应着不同的博弈双方每一方不同的难度。初始轨迹A和B分别是博弈双方取得胜利的一条示范轨迹,用来向智能体展示如何取得胜利以及胜利过程中所经历的状态。在训练过程中,第一方对应有其获胜的示范轨迹A,第二方也对应有其获胜的示范轨迹B。当一个训练任务要选取参考交互轨迹时,课程控制器可以统计博弈双方的胜率,计算双方的胜率之比值。依照胜率比选择初始轨迹。例如,当A方胜率过高时,这时应当更倾向选择初始轨迹B,因为初始轨迹B是B方获胜的示范轨迹。
本申请实施例提供的方法,可以应用于非对称强化学习场景中,非对称强化学习场景中一个显著的问题就是两方策略训练不同步。具体的,由于在环境机制、动作空间或者状态空间等方面,博弈两方具有不对称的地位,而强化学习的初始化时,两方策略随机开始。上述的不对称地位可能造成训练过程中,两方策略的更新进度不一致,例如一方比较容易学会一种策略,导致其在训练过程中长期处于优势地位。而通过不同交互方对应的示范轨迹的选取,能够解决两方能力不对称的状态空间以及动作空间的训练,也可以在多智能体非对称自我博弈训练过程中,解决博弈两方策略更新难以均衡的问题,例如当交互方有两方时,从两方对应的获胜示范轨迹选取参考交互轨迹,分别用来设计博弈两方的课程。
在一些实施例中,基于各个交互方对应的候选交互轨迹的选取概率,从候选交互轨迹中选取当前训练任务对应的参考交互轨迹包括:确定各个交互方对应的候选交互轨迹被选为参考交互轨迹的选取次数;确定最小的选取次数是否大于预设数量阈值,若是,则基于各个交互方对应的候选交互轨迹的选取概率,从候选交互轨迹中选取当前训练任务对应的参考交互轨迹;若否,则将最小的选取次数所对应的候选交互轨迹作为当前训练任务对应的参考交互轨迹。
具体地,由于每个交互方对应有候选交互轨迹,每个训练任务从中选取参考交互轨迹,因此可以统计每一个交互方对应的候选交互轨迹被选取为参考交互轨迹的总次数,作为选取次数。预设数量阈值是交互方的候选交互轨迹被选取为参考交互轨迹的最小数量。如果该交互方对应的选取次数没有大于预设数量阈值,说明该交互方对应的选取次数没有达到最小数量,则直接选取次数没有达到最小数量的交互方的候选交互轨迹作为参考交互轨迹,从而保证每个交互方对应的交互轨迹被选取为参考交互轨迹的数量达到一定的数量,保证交互双方的模型都能够得到充分的训练。举个例子,假设有两个交互方,每个交互方对应有其获胜的示范轨迹,其中第一交互方获胜的示范轨迹为轨迹1,第二交互方获胜的示范轨迹为轨迹2。预先设置了每个交互方获取的示范轨迹被选为参考交互轨迹的最小数量为20。当轨迹1被选取为参考交互轨迹的次数为12,轨迹2被选取为参考交互轨迹的次数为22,则轨迹1的选取次数小于数量阈值,故直接将轨迹1作为当前训练任务对应的参考交互轨迹。如果轨迹1以及轨迹2的选取次数都大于20,则按照各个轨迹的选取概率确定是选取哪条轨迹作为当前训练任务的参考交互轨迹。
在一些实施例中,基于各个交互方对应的候选交互轨迹的选取概率,从候选交互轨迹中选取当前训练任务对应的参考交互轨迹包括:基于各个交互方对应的候选交互轨迹的选取概率,从目标数值范围中确定候选交互轨迹对应的数值范围;在目标数值范围中产生随机数;将包括随机数的数值范围所对应的候选交互轨迹,作为当前训练任务对应的参考交互轨迹。
具体地,目标数值范围可以是预先设置的,例如可以是1至100。可以基于选取概率在目标数值范围内按比例分配每个候选交互轨迹的数值范围。例如,假设轨迹1的选取概率为0.2,轨迹2的选取概率为0.8,则分配1至20为轨迹1的数值范围。21至100为轨迹2的数值范围。服务器可以在1至100的范围内随机产生一个数,即随机数,服务器确实该随机数在哪个数值范围内,将该数值范围所对应的轨迹作为当前训练任务对应的参考交互轨迹。例如,如果随机数为18,则选取轨迹1作为参考交互轨迹。如果随机数为55,则选取轨迹2作为参考交互轨迹。
在一些实施例中,交互模型是通过多个训练任务进行训练的,按照交互顺序的倒序从参考交互轨迹中选取当前初始交互状态包括:对于各个训练任务,当第一次选择参考交互轨迹中的当前初始交互状态时,则获取参考交互轨迹中各个交互状态对应的选取概率,基于交互状态对应的选取概率从参考交互轨迹中选取当前初始交互状态;否则,按照交互顺序的倒序从参考交互轨迹中选取当前初始交互状态。
具体地,可以通过多个训练任务同时对交互模型进行训练,每个交互模型基于计算得到的模型参数下降梯度调整交互模型的模型参数,从而可以提高模型训练的效率。参考交互轨迹中各个交互状态对应的选取概率可以是预先设置的,例如可以是人工设置的。例如可以设置最后一个交互状态的选取概率为0.9,倒数第二个交互状态的选取概率为0.05。在训练任务第一次选取当前初始交互状态时,基于选取概率选取参考交互轨迹中第一个被选取为当前初始交互状态的状态,在第一次选取当前初始交互状态之后,则按照交互顺序的倒序从参考交互轨迹选取当前初始交互状态,从而使得每个训练任务在第一次选取当前初始交互状态时,并非是固定选取参考交互轨迹中的最后一个状态作为第一个当前初始交互状态,提高了训练任务选取当前交互状态的灵活性。可以理解,也可以设置选取参考交互轨迹中,固定顺序的状态作为第一个当前初始交互状态。
本申请实施例提供的交互模型训练方法可以应用于对游戏的人工智能模型进行训练的过程中,游戏通常是对真实世界的抽象与仿真。在游戏中精通的智能体,背后的算法和技术,又可以应用到真实世界的诸多领域,如机器人,自动驾驶,复杂推理,军事推演,环境仿真等等。例如,还可以应用于机器人控制模型的训练中,机器人控制模型基于机器人当前所处的状态,确定机器人执行对应的动作。
本申请实施例提供的模型训练方法,可以应用于AI(Artificial Intelligence,人工智能)通过自我博弈,从完全随机的策略开始,通过与强化学习中的环境进行交互,进而对已有策略进行改进的过程中。例如可以应用于非对称的博弈中,提供智能玩家服务。非对称的场景在游戏中有广泛的应用。非对称博弈是指交互双方的能力或者资源存在不同,例如角色数量不相同。例如在PVE(Player VS Environment,玩家对战环境)的游戏形式中,玩家一方往往是人数更多,但能力更弱,而玩家敌对的一方,相对人数较少,而能力更强。在多数的PVE游戏设计中,玩家需要通过配合来实现以弱胜强,在非对称场景中,如何训练智能的博弈双方是一个重要的问题。这种在非对称场景中训练强化学习智能体的能力,还可能应用到模拟对战以及模拟金融市场交易等领域。例如,在金融交易市场中,基于当前的市场状态,确定要执行的资源转移策略,例如购买基金的策略。这些领域中,博弈的双方或多方拥有的资源以及能力都不对等,而通过本申请实施例提供的方法,可以在不对称情形下训练出智能体策略。
本申请实施例提供的模型训练方法所训练得到的模型,可以应用于非对称游戏中,可以对非对称游戏的虚拟对象进行控制。例如,非对称游戏可以为一款非对称的多人对抗游戏。该游戏具有以下不对称性:1、黄方1人,蓝方4人。2、黄方可以攻击蓝方,蓝方不能攻击黄方,3、目标不同,蓝方取得钥匙来开宝箱,黄方守护宝箱。4、黄方额外拥有加速、分身两个技能。总结来说,这款非对称游戏中,蓝方需要通过配合来取得胜利,黄方需要依靠自身的能力优势来取得胜利。该款游戏中有中道具可以使用,例如梯子和火墙,这些道具增加了策略的多样性,以及游戏本身的可玩性。因此可以分别训练得到黄方对应的第一交互模型以及蓝方对应的第二交互模型。其中第一交互模型对应的候选动作空间可以包括举起物品、放下物品、使用物品、摧毁物品、分身以及加速等,其中物品可以包括梯子、图腾以及钥匙。梯子被放在墙边时,可以翻越墙。图腾使用后可以向两侧喷出火焰,阻止目标前进。钥匙可以用于开启宝箱,第二交互模型对应的候选动作空间可以包括举起物品、放下物品、使用物品以及摧毁物品。其中分身是指可以分解出更多的人,来进行对战。加速可以是指加速奔跑之后,喘气3秒。蓝方的胜利目标可以为3分钟来开启4个宝箱。而黄方的胜利目标为蓝方被消灭或者使得蓝方在3分钟内没有开启4个宝箱。蓝方对应的参考交互轨迹为蓝方在3分钟来开启4个宝箱的参考交互轨迹。黄方对应的参考交互轨迹为蓝方未在3分钟来开启4个宝箱的参考交互轨迹或者蓝方被消灭的参考交互轨迹。
应该理解的是,虽然上述流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一些实施例中,如图7所示,提供了一种交互模型训练装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:
参考交互轨迹获取模块702,用于获取参考交互轨迹;参考交互状态序列包括多个按照交互顺序依次进行排序的参考交互状态。
当前初始交互状态选取模块704,用于按照交互顺序的倒序从参考交互轨迹中选取当前初始交互状态。
训练模块706,用于根据当前初始交互状态对待训练的交互模型进行训练,得到当前初始交互状态对应的当前训练交互模型。
返回模块708,用于当确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件时,返回按照交互顺序的倒序从参考交互轨迹中选取当前初始交互状态的步骤,得到更新后的当前初始交互状态,以继续进行模型训练,直至满足训练停止条件,得到已训练的目标交互模型。
在一些实施例中,返回模块用于:确定参考交互轨迹所对应的交互胜利方,获取交互胜利方在模型训练过程中的胜利比例;当胜利比例大于比例阈值时,确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件,返回按照交互顺序的倒序从参考交互轨迹中选取当前初始交互状态的步骤。
在一些实施例中,待训练的交互模型包括进行交互的第一交互模型以及第二交互模型;训练模块用于:第一交互模型基于当前初始交互状态得到第一交互动作,在虚拟交互环境中控制第一虚拟对象执行第一交互动作,得到第一更新状态;基于第一更新状态计算第一收益值,基于第一收益值调整第一交互模型的参数;第二交互模型基于第一更新状态得到第二交互动作,在虚拟交互环境中执行第二交互动作,得到第二更新状态;基于第二更新状态计算第二收益值,基于第二收益值调整第二交互模型的参数。
在一些实施例中,交互模型是通过多个训练任务进行训练的,参考交互轨迹获取模块包括:统计胜利数量得到单元,用于对于当前训练任务,对多个训练任务对应的各个交互方的训练胜利数量进行统计,得到各个交互方对应的统计胜利数量;选取概率确定单元,用于基于统计胜利数量确定交互方对应的候选交互轨迹的选取概率,其中,统计胜利数量与选取概率成负相关关系;选取单元,用于基于各个交互方对应的候选交互轨迹的选取概率,从候选交互轨迹中选取当前训练任务对应的参考交互轨迹;其中,交互方对应的候选交互轨迹的胜利方为交互方。
在一些实施例中,选取单元用于:确定各个交互方对应的候选交互轨迹被选为参考交互轨迹的选取次数;确定最小的选取次数是否大于预设数量阈值,若是,则基于各个交互方对应的候选交互轨迹的选取概率,从候选交互轨迹中选取当前训练任务对应的参考交互轨迹;若否,则将最小的选取次数所对应的候选交互轨迹作为当前训练任务对应的参考交互轨迹。
在一些实施例中,选取单元用于:基于各个交互方对应的候选交互轨迹的选取概率,从目标数值范围中确定候选交互轨迹对应的数值范围;在目标数值范围中产生随机数;将包括随机数的数值范围所对应的候选交互轨迹,作为当前训练任务对应的参考交互轨迹。
在一些实施例中,交互模型是通过多个训练任务进行训练的,当前初始交互状态选取模块用于:对于各个训练任务,当第一次选择参考交互轨迹中的当前初始交互状态时,则获取参考交互轨迹中各个交互状态对应的选取概率,基于交互状态对应的选取概率从参考交互轨迹中选取当前初始交互状态;否则,按照交互顺序的倒序从参考交互轨迹中选取当前初始交互状态。关于交互模型训练装置的具体限定可以参见上文中对于交互模型训练方法的限定,在此不再赘述。上述交互模型训练装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一些实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储交互模型训练数据,例如参考交互轨迹。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种交互模型训练方法。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一些实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一些实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一些实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种交互模型训练方法,其特征在于,所述方法包括:
获取参考交互轨迹;所述参考交互轨迹包括多个按照交互顺序依次进行排序的参考交互状态;
按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态;
根据当前初始交互状态对待训练的交互模型进行训练,得到当前初始交互状态对应的当前训练交互模型;
当确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件时,返回按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态的步骤,得到更新后的当前初始交互状态,以继续进行模型训练,直至满足训练停止条件,得到已训练的目标交互模型。
2.根据权利要求1所述的方法,其特征在于,所述当确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件时,返回按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态的步骤包括:
确定所述参考交互轨迹所对应的交互胜利方,获取所述交互胜利方在模型训练过程中的胜利比例;
当所述胜利比例大于比例阈值时,确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件,返回按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态的步骤。
3.根据权利要求1所述的方法,其特征在于,待训练的交互模型包括进行交互的第一交互模型以及第二交互模型;所述根据当前初始交互状态对待训练的交互模型进行训练,得到当前初始交互状态对应的当前训练交互模型包括:
所述第一交互模型基于当前初始交互状态得到第一交互动作,在虚拟交互环境中控制第一虚拟对象执行所述第一交互动作,得到第一更新状态;
基于所述第一更新状态计算第一收益值,基于所述第一收益值调整所述第一交互模型的参数;
所述第二交互模型基于所述第一更新状态得到第二交互动作,在虚拟交互环境中执行所述第二交互动作,得到第二更新状态;
基于所述第二更新状态计算第二收益值,基于所述第二收益值调整所述第二交互模型的参数。
4.根据权利要求1所述的方法,其特征在于,所述交互模型是通过多个训练任务进行训练的,所述获取参考交互轨迹包括:
对于当前训练任务,对所述多个训练任务对应的各个交互方的训练胜利数量进行统计,得到各个所述交互方对应的统计胜利数量;
基于所述统计胜利数量确定所述交互方对应的候选交互轨迹的选取概率,其中,所述统计胜利数量与所述选取概率成负相关关系;
基于各个所述交互方对应的候选交互轨迹的选取概率,从候选交互轨迹中选取当前训练任务对应的参考交互轨迹;其中,所述交互方对应的候选交互轨迹的胜利方为所述交互方。
5.根据权利要求4所述的方法,其特征在于,所述基于各个所述交互方对应的候选交互轨迹的选取概率,从候选交互轨迹中选取当前训练任务对应的参考交互轨迹包括:
确定各个所述交互方对应的候选交互轨迹被选为参考交互轨迹的选取次数;
确定最小的选取次数是否大于预设数量阈值,若是,则基于各个所述交互方对应的候选交互轨迹的选取概率,从候选交互轨迹中选取当前训练任务对应的参考交互轨迹;
若否,则将最小的选取次数所对应的候选交互轨迹作为当前训练任务对应的参考交互轨迹。
6.根据权利要求4所述的方法,其特征在于,所述基于各个所述交互方对应的候选交互轨迹的选取概率,从候选交互轨迹中选取当前训练任务对应的参考交互轨迹包括:
基于各个所述交互方对应的候选交互轨迹的选取概率,从目标数值范围中确定所述候选交互轨迹对应的数值范围;
在所述目标数值范围中产生随机数;
将包括所述随机数的数值范围所对应的候选交互轨迹,作为当前训练任务对应的参考交互轨迹。
7.根据权利要求1所述的方法,其特征在于,所述交互模型是通过多个训练任务进行训练的,所述按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态包括:
对于各个训练任务,当第一次选择所述参考交互轨迹中的当前初始交互状态时,则获取参考交互轨迹中各个交互状态对应的选取概率,基于所述交互状态对应的选取概率从所述参考交互轨迹中选取当前初始交互状态;否则,按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态。
8.一种交互模型训练装置,其特征在于,所述装置包括:
参考交互轨迹获取模块,用于获取参考交互轨迹;所述参考交互轨迹包括多个按照交互顺序依次进行排序的参考交互状态;
当前初始交互状态选取模块,用于按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态;
训练模块,用于根据当前初始交互状态对待训练的交互模型进行训练,得到当前初始交互状态对应的当前训练交互模型;
返回模块,用于当确定当前训练交互模型满足当前初始交互状态对应的模型收敛条件时,返回按照所述交互顺序的倒序从所述参考交互轨迹中选取当前初始交互状态的步骤,得到更新后的当前初始交互状态,以继续进行模型训练,直至满足训练停止条件,得到已训练的目标交互模型。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110410245.1A CN113509726B (zh) | 2021-04-16 | 2021-04-16 | 交互模型训练方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110410245.1A CN113509726B (zh) | 2021-04-16 | 2021-04-16 | 交互模型训练方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113509726A CN113509726A (zh) | 2021-10-19 |
CN113509726B true CN113509726B (zh) | 2023-12-05 |
Family
ID=78062447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110410245.1A Active CN113509726B (zh) | 2021-04-16 | 2021-04-16 | 交互模型训练方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113509726B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113987512B (zh) * | 2021-10-29 | 2022-09-30 | 江苏安泰信息科技发展有限公司 | 一种信息系统安全风险评估方法 |
CN114595923B (zh) * | 2022-01-11 | 2023-04-28 | 电子科技大学 | 一种基于深度强化学习的群体教学推荐系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110097193A (zh) * | 2019-04-28 | 2019-08-06 | 第四范式(北京)技术有限公司 | 训练模型的方法及系统和预测序列数据的方法及系统 |
CN111950735A (zh) * | 2020-06-30 | 2020-11-17 | 上海交通大学 | 一种基于双向模型的强化学习方法 |
CN112334914A (zh) * | 2018-09-27 | 2021-02-05 | 渊慧科技有限公司 | 使用生成式前导神经网络的模仿学习 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11410030B2 (en) * | 2018-09-06 | 2022-08-09 | International Business Machines Corporation | Active imitation learning in high dimensional continuous environments |
-
2021
- 2021-04-16 CN CN202110410245.1A patent/CN113509726B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112334914A (zh) * | 2018-09-27 | 2021-02-05 | 渊慧科技有限公司 | 使用生成式前导神经网络的模仿学习 |
CN110097193A (zh) * | 2019-04-28 | 2019-08-06 | 第四范式(北京)技术有限公司 | 训练模型的方法及系统和预测序列数据的方法及系统 |
CN111950735A (zh) * | 2020-06-30 | 2020-11-17 | 上海交通大学 | 一种基于双向模型的强化学习方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113509726A (zh) | 2021-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7399932B2 (ja) | クラウドゲーミングネットワークを使用した人工知能(ai)モデルの訓練 | |
Wu et al. | Training agent for first-person shooter game with actor-critic curriculum learning | |
US11779837B2 (en) | Method, apparatus, and device for scheduling virtual objects in virtual environment | |
CN111744201B (zh) | 视频游戏中的自动玩家控制接管 | |
US11110353B2 (en) | Distributed training for machine learning of AI controlled virtual entities on video game clients | |
US7636701B2 (en) | Query controlled behavior models as components of intelligent agents | |
CN111026272B (zh) | 虚拟对象行为策略的训练方法及装置、电子设备、存储介质 | |
CN113509726B (zh) | 交互模型训练方法、装置、计算机设备和存储介质 | |
CN111111204A (zh) | 交互模型训练方法、装置、计算机设备和存储介质 | |
CN116747521B (zh) | 控制智能体进行对局的方法、装置、设备及存储介质 | |
WO2019144346A1 (zh) | 虚拟场景中的对象处理方法、设备及存储介质 | |
CN114404975A (zh) | 决策模型的训练方法、装置、设备、存储介质及程序产品 | |
CN113377099A (zh) | 一种基于深度强化学习的机器人追逃博弈方法 | |
CN111265871A (zh) | 虚拟对象的控制方法及装置、设备、存储介质 | |
CN114404976A (zh) | 决策模型的训练方法、装置、计算机设备及存储介质 | |
CN111437605B (zh) | 确定虚拟对象行为及托管虚拟对象行为的方法 | |
Sharifi et al. | Learning companion behaviors using reinforcement learning in games | |
Díaz et al. | Evolutionary behavioral design of non-player characters in a FPS video game through particle swarm optimization | |
CN112933600B (zh) | 虚拟对象控制方法、装置、计算机设备和存储介质 | |
Karavolos | Orchestrating the generation of game facets via a model of gameplay | |
CN116966573A (zh) | 交互模型处理方法、装置、计算机设备和存储介质 | |
KRAJÍČEK | COMBAT MANAGEMENT IN STARCRAFT II GAME BY MEANS OF ARTIFICIAL INTELLIGENCE | |
Andradi et al. | Human behaviour modelling in games using agents | |
Gołuński et al. | Tactical assessment in a squad of intelligent bots | |
CN118095481A (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 |