一种模型训练方法及相关装置与流程



1.本技术涉及人工智能技术领域,尤其涉及一种模型训练方法及相关装置。


背景技术:



2.游戏人工智能(artificial intelligence,ai)是自动智能化操控游戏中虚拟角的技术。基于游戏ai操控游戏中的虚拟角时,可以根据当前游戏状态决策该虚拟角所需执行的动作,进而控制该虚拟角执行该动作。
3.相关技术中,可以使用预先训练的模型决策虚拟角所需执行的动作,该模型可以通过监督学习或者强化学习训练得到。然而,通过监督学习训练该模型时,往往需要依赖大量的训练数据,若训练数据的数量无法满足要求,将影响所训练的模型的性能;通过强化学习训练该模型时,需要投入较多的人力对训练过程中使用的奖励函数进行反复精细的调整,只有这样才能保证训练得到的模型具备较好的拟人性。
4.综上,如何减少训练游戏ai模型所需的训练数据,降低训练该模型投入的人力,同时保证训练得到的模型具备较优的性能,已成为亟待解决的问题。


技术实现要素:



5.本技术实施例提供了一种模型训练方法及相关装置,能够在保证训练出的游戏ai模型具备较优性能的情况下,减少模型训练所需的训练数据,并且减少模型训练所需投入的人力。
6.有鉴于此,本技术第一方面提供了一种模型训练方法,所述方法包括:获取技巧样本数据;所述技巧样本数据中包括具有对应关系的游戏状态数据序列和操作数据序列,所述游戏状态数据序列和所述操作数据序列对应目标帧长度;采用监督学习算法,根据所述技巧样本数据,联合训练变分自编码器和先验策略模型;所述变分自编码器包括编码器和解码器,所述编码器用于将操作数据序列映射为技巧向量,所述解码器用于根据所述技巧向量重建操作数据序列;所述先验策略模型用于根据游戏状态数据序列确定技巧向量;采用强化学习算法,训练游戏人工智能模型;所述游戏人工智能模型是基于所述先验策略模型和所述解码器构建的。
7.本技术第二方面提供了一种模型训练装置,所述装置包括:样本获取模块,用于获取技巧样本数据;所述技巧样本数据中包括具有对应关系的游戏状态数据序列和操作数据序列,所述游戏状态数据序列和所述操作数据序列对应目标帧长度;监督学习模块,用于采用监督学习算法,根据所述技巧样本数据,联合训练变分自编码器和先验策略模型;所述变分自编码器包括编码器和解码器,所述编码器用于将操作数据序列映射为技巧向量,所述解码器用于根据所述技巧向量重建操作数据序列;所述先验策略模型用于根据游戏状态数据序列确定技巧向量;
强化学习模块,用于采用强化学习算法,训练游戏人工智能模型;所述游戏人工智能模型是基于所述先验策略模型和所述解码器构建的。
8.本技术第三方面提供了一种计算机设备,所述设备包括处理器以及存储器:所述存储器用于存储计算机程序;所述处理器用于根据所述计算机程序,执行如上述第一方面所述的模型训练方法的步骤。
9.本技术第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行上述第一方面所述的模型训练方法的步骤。
10.本技术第五方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第一方面所述的模型训练方法的步骤。
11.从以上技术方案可以看出,本技术实施例具有以下优点:本技术实施例提供了一种模型训练方法,该方法创新性地提出了“技巧”这一概念,所谓“技巧”即是特定长度的操作数据序列在低维向量空间中的表示;藉由“技巧”这一概念的引入,本技术实施例将传统游戏ai模型所需学习的策略(游戏状态数据到操作数据的映射)拆分为上层策略和下层策略,其中,上层策略为游戏状态数据序列到技巧的映射,下层策略为技巧到操作数据序列的映射。对于下层策略的学习,本技术实施例通过采用监督学习算法根据技巧样本数据训练变分自编码器来实现;即采用监督学习算法,基于技巧样本数据中的操作数据序列,训练变分自编码器中的编码器和解码器,其中,编码器用于将操作数据序列映射为技巧向量,解码器用于根据技巧向量重建操作数据序列;由于技巧向量与操作数据序列之间的映射不涉及游戏状态数据空间,大幅降低了训练任务的复杂度,因此只使用少量的技巧样本数据即可训练得到性能较优的变分自编码器。对于上层策略的学习,本技术实施例通过结合监督学习算法和强化学习算法训练先验策略模型来实现;即先采用监督学习算法,基于技巧样本数据中的游戏状态序列数据和变分自编码器中的编码器的输出结果,训练先验策略模型,然后采用强化学习算法,对包括该先验策略模型和变分自编码器中的解码器的游戏ai模型进行训练;先采用监督学习算法训练先验策略模型,可以使该先验策略模型具备一定的技巧编码能力,对包括该先验策略模型的游戏ai模型进行强化学习,可以在一定程度上减少强化学习的训练耗时,并且奖励函数的调整也更简单,可以减少强化学习过程中所需投入的用于调整奖励函数的人力,同时也能保证训练得到的游戏ai模型具有较优的拟人性。
附图说明
12.图1为本技术实施例提供的模型训练方法的应用场景示意图;图2为本技术实施例提供的模型训练方法的流程示意图;图3为本技术实施例提供的联合训练变分自编码器和先验策略模型的示意图;图4为本技术实施例提供的在强化学习阶段训练残差模型的流程示意图;图5为本技术实施例提供的一种强化学习阶段游戏ai模型的训练示意图;图6为本技术实施例提供的另一种强化学习阶段游戏ai模型的训练示意图;
图7为本技术实施例提供的一种fps游戏的界面示意图;图8为本技术实施例提供的一种模型训练装置的结构示意图;图9为本技术实施例提供的终端设备的结构示意图;图10为本技术实施例提供的服务器的结构示意图。
具体实施方式
13.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
14.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
15.人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
16.机器学习(machine learning,ml)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
17.本技术实施例提供的方案涉及人工智能技术中的机器学习技术,具体通过如下实施例进行说明:游戏ai作为电子游戏的一部分,可以操控游戏中非玩家角(non-player character,npc)以丰富玩家的游戏体验,也可以用于填充对手或队友的位置以降低联机对战类游戏的匹配时间,还可以作为游戏测试的手段,帮助开发者调试游戏中相关设置的参数、验证相关设置的合理性。可见,设计更智能、全面的游戏ai是游戏生产中的重要环节。
18.相关技术中,用于训练游戏ai模型的方案通常需要依赖大量的训练数据,或者需要投入大量的人力对模型训练过程中的奖励函数进行调整,训练成本普遍较高。本技术实施例提供了一种用于训练游戏ai模型的模型训练方法,该方法旨在降低游戏ai模型的训练成本,减少训练游戏ai模型使用的训练数据、以及训练游戏ai模型过程中投入的人力,同时保证训练得到的游戏ai模型具备较优的性能。
19.需要说明的是,本技术实施例提供的模型训练方法可以由计算机设备执行,该计算机设备可以是终端设备或服务器。其中,终端设备包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端、飞行器等。服务器可以是独立的物理服务器,也可以是由多个物理服务器构成的服务器集或分布式系统,还可以是云服务器。此外,本技术实施例涉及的相关数据可以存储于区块链网络中。
20.为了便于理解本技术实施例提供的模型训练方法,下面以该模型训练方法的执行主体为服务器为例,对该模型训练方法的应用场景进行示例性介绍。
21.参见图1,图1为本技术实施例提供的模型训练方法的应用场景示意图。如图1所示,该应用场景中包括服务器110和数据库120;服务器110可以通过网络访问数据库120,或者数据库120也可以集成在服务器110中。其中,服务器110用于执行本技术实施例提供的模型训练方法,以训练性能较优的游戏ai模型;数据库120用于存储训练游戏ai模型时使用的数据。
22.在实际应用中,服务器110可以从数据库120中调取若干技巧样本数据,每个技巧样本数据中包括具有对应关系的游戏状态数据序列和操作数据序列,且该游戏状态数据序列和该操作数据序列均对应目标帧长度,该目标帧长度是预先设定的学习技巧向量所依据的数据序列长度。
23.然后,服务器110可以采用监督学习算法,根据所获取的技巧样本数据,联合训练变分自编码器和先验策略模型。其中,变分自编码器中包括编码器和解码器,该编码器用于将输入的操作数据序列映射为技巧向量,该解码器用于根据编码器输出的技巧向量重建操作数据序列;先验策略模型用于根据游戏状态数据序列确定技巧向量。
24.需要说明的是,本技术实施例以目标帧长度的操作数据序列为基础提出了“技巧”这一概念,所谓“技巧”是指目标帧长度的操作数据序列在低维特征空间中的表示,在本技术实施例中“技巧”具体表示为技巧向量。藉由“技巧”这一概念的引入,本技术实施例将传统游戏ai模型所需学习的策略(游戏状态数据到操作数据的映射)拆分为了上层策略和下层策略,该上层策略为游戏状态数据序列到技巧向量的映射,该下层策略为技巧向量到操作数据序列的映射。本技术实施例通过监督训练变分自编码器实现对下层策略的学习,使得变分自编码器中的解码器学习将技巧向量映射为操作数据序列的能力,由于技巧向量到操作数据序列的映射并不涉及游戏状态数据空间,大幅降低了训练任务的难度,因此只需要少量的技巧样本数据即可完成对于该变分自编码器的训练。本技术实施例通过监督训练先验策略模型实现对上层策略的学习,使得先验策略模型学习将游戏状态数据序列映射为技巧向量的能力,但是由于训练先验策略模型时使用的技巧样本数据不足,难以使该先验策略模型的性能满足实际应用需求,因此本技术实施例还需要对该先验策略模型做进一步强化学习。
25.即,服务器110可以利用监督学习得到的先验策略模型和变分自编码器中的解码器,构建游戏ai模型,进而,采用强化学习算法对该游戏ai模型进行训练,实现对该游戏ai模型中的先验策略模型做进一步的微调,从而提升该先验策略模型的性能,使得该游戏ai模型整体满足实际应用需求。由于该先验策略模型通过监督学习已具备一定的技巧编码能力,因此在强化学习阶段无需投入大量的人力调整奖励函数,也能保证训练出的游戏ai模型具备较优的拟人性。
26.应理解,图1所示的应用场景仅为示例,在实际应用中,本技术实施例提供的模型训练方法也可以应用于其它场景,例如,服务器110可以从其它渠道获取技巧样本数据,又例如,可以由终端设备执行该模型训练方法训练游戏ai模型,等等。在此不对本技术实施例提供的模型训练方法适用的应用场景做任何限定。
27.下面通过方法实施例对本技术提供的模型训练方法进行详细介绍。
28.参见图2,图2为本技术实施例提供的模型训练方法的流程示意图。为了便于描述,下述实施例仍以该模型训练方法的执行主体为服务器为例进行介绍。如图2所示,该模型训练方法包括以下步骤:步骤201:获取技巧样本数据;所述技巧样本数据中包括具有对应关系的游戏状态数据序列和操作数据序列,所述游戏状态数据序列和所述操作数据序列对应目标帧长度。
29.在本技术实施例中,服务器训练游戏ai模型前,需要先获取用于训练该游戏ai模型的技巧样本数据。
30.需要说明的是,游戏ai模型是用于决策游戏中虚拟角所需执行的动作的神经网络模型;通常情况下,游戏ai模型可以根据游戏对局中的游戏状态数据,决策虚拟角所需执行的动作,也即决策用于控制该虚拟角的操作数据。应理解,基于游戏ai模型控制的虚拟角可以为游戏中的npc,也可以为游戏中的队友角(即与真实玩家操控的虚拟角属于同一阵营的角)或对手角(即与真实玩家操控的虚拟角属于不同阵营的角),在此不对本技术实施例中的游戏ai模型操控的虚拟角的类型做任何限定。
31.需要说明的是,技巧样本数据是本技术实施例中在监督学习阶段使用的训练样本数据,其中包括具有对应关系的游戏状态数据序列和操作数据序列,并且该游戏状态数据序列和操作数据序列均对应目标帧长度,该目标帧长度是预先设定的目标帧数(如5帧、10帧等等)。也就是说,技巧样本数据中的游戏状态数据序列包括按序排列的目标帧数的游戏状态数据,技巧样本数据中的操作数据序列包括按序排列的目标帧数的操作数据;并且对于属于同一技巧样本数据的游戏状态数据序列和操作数据序列,该游戏状态数据序列中包括的各游戏状态数据与该操作数据序列中包括的各操作数据之间具有一一对应的关系;例如,目标帧长度为5帧,某技巧样本数据中包括由第一帧到第五帧的游戏状态数据组成的游戏状态数据序列、以及由第一帧到第五帧的操作数据组成的操作数据序列。
32.在本技术实施例中,游戏状态数据是用于描述游戏对局状态的数据,该游戏状态数据例如可以包括以下数据中的任意一种或多种:虚拟角的位置数据、虚拟角的姿态数据、虚拟角的移动速度、虚拟角的生命值、虚拟角的能量值、虚拟角使用的虚拟道具、虚拟角背包中包括的虚拟物资数据、虚拟角的状态数据(如处于开火状态、处于瞄准状态、处于移动状态等等)等;此处的虚拟角可以包括游戏对局中各虚拟角、或者位于玩家操控的虚拟角视野范围内的各虚拟角;当然,在实际应用中,游戏状态数据还可以包括其它类型的数据,本技术在此不对游戏状态数据包括的数据做任何限定。
33.在本技术实施例中,操作数据是用于描述对于目标虚拟角触发的操控操作的数据,此处的目标虚拟角是游戏ai模型所要学习的虚拟角,即所要训练的游戏ai模型需要学习该目标虚拟角的行为动作,该目标虚拟角例如可以是游戏对局中特定玩家操作的虚拟角。操作数据例如可以包括以下数据中的任意一种或多种:移动控制数据、技能释放控制数据、瞄准控制数据、虚拟道具使用控制数据、虚拟道具切换控制数据等等,当然,在
实际应用中,操作数据还可以包括其它类型的数据,本技术在此也不对操作数据包括的数据做任何限定。
34.在一种可能的实现方式中,服务器可以通过以下方式获取技巧样本数据:获取游戏示例数据,该游戏示例数据中包括在训练游戏对局中产生的原始游戏状态数据序列和原始操作数据序列;然后,按照目标帧长度,对游戏示例数据中的原始游戏状态数据序列和原始操作数据序列分别进行切分处理,得到具有对应关系的游戏状态数据序列和操作数据序列,利用该游戏状态数据序列和该操作数据序列组成技巧样本数据。
35.需要说明的是,游戏示例数据是人类专家或者标准策略在机器学习任务环境下执行游戏任务而产生的数据,该游戏示例数据中包括在训练游戏对局中产生的原始游戏状态数据序列和原始操作数据序列;其中,原始游戏状态数据序列和原始操作数据序列可以对应完整的训练游戏对局,即该原始游戏状态数据序列中包括训练游戏对局中各帧的游戏状态数据,该原始操作数据序列包括训练游戏对局中各帧的对于目标虚拟角的操作数据。
36.示例性的,服务器可以从数据库获取上述游戏示例数据,或者服务器也可以从终端设备处获取上述游戏示例数据,又或者服务器可以从游戏的后台服务器处获取上述游戏示例数据。然后,服务器可以按照目标帧长度,对所获取的游戏示例数据中的原始游戏状态数据序列和该原始操作数据序列分别进行切分处理,以切分得到若干对应目标帧长度的游戏状态数据序列和若干对应目标帧长度的操作数据序列。进而,服务器可以利用具有对应关系的游戏状态数据序列和操作数据序列,组成技巧样本数据;具有对应关系的游戏状态数据序列和操作数据序列,可以理解为对应于相同帧范围的游戏状态数据序列和操作数据序列。
37.此外,在实际应用中,服务器可以对游戏ai模型的训练需求,选择对应的游戏示例数据构建技巧样本数据。
38.作为一种示例,在游戏的早期开发阶段,例如游戏开发期或者上线初期,通常仅有少量的内部体验数据和封闭测试数据,此时,可以将这些内部体验数据和封闭测试数据作为用于构建技巧样本数据的游戏示例数据,基于这些游戏示例数据构建技巧样本数据,并根据所构建的技巧样本数据训练游戏ai模型。应理解,此阶段的游戏示例数据通常没有特定的风格特点,相应地,基于此类游戏示例数据训练出的游戏ai模型所决策的操作也没有特定的风格特点,该游戏ai模型可以帮助开发者进行相关ai模型的冷启动,作为后续游戏ai开发的基模型。
39.作为另一种示例,在游戏的稳定运营阶段,本技术实施例可以针对线上游戏ai模型的风格化需求,训练具有特定风格的游戏ai模型。
40.例如,训练此类游戏ai模型时,服务器获取的游戏示例数据可以包括原始游戏状态数据序列、以及具有目标风格的原始操作数据序列;相应地,基于此类游戏示例数据训练出的游戏ai智能模型可以用于指示虚拟角执行符合该目标风格的动作。即,服务器可以获取具有目标风格的游戏示例数据,该目标风格例如可以是倾向于快速攻击、倾向于保守攻击、倾向于自我防御等等,进而基于具有目标风格的游戏示例数据,训练具有该目标风格的游戏ai模型,使用该游戏ai模型操控虚拟角时,倾向于控制该虚拟角执行与该目标风格相符的动作。
41.又例如,训练此类游戏ai模型时,服务器获取的游戏示例数据可以包括原始游戏
状态数据序列、以及目标玩家产生的原始操作数据序列;相应地,基于此类游戏示例数据训练出的游戏ai模型用于指示虚拟角执行符合目标玩家的游戏风格的动作。即,服务器可以获取具有强烈个人风格的游戏示例数据,即获取特定的目标玩家参与游戏时产生的原始操作数据序列、以及该局游戏的原始游戏状态数据序列,作为游戏示例数据;进而,基于具有强烈个人风格的游戏示例数据,训练具有该个人风格的游戏ai模型,使用该游戏ai模型操控虚拟角时,倾向于控制该虚拟角执行与目标玩家的游戏风格相符的动作。
42.需要说明的是,在本技术实施例中,服务器获取玩家产生的操作数据之前,需要先获得该玩家的授权许可。即服务器可以向玩家发送授权通知消息,通过该授权通知消息请求玩家授予服务器获取其操作数据的权限;若检测到玩家通过该授权通知消息授予服务器获取其操作数据的权限,则服务器可以合法地获取该玩家在游戏过程中产生的操作数据;反之,若未检测到玩家通过该授权通知消息授予服务器获取其操作数据的权限,则服务器无权获取该玩家在游戏过程中产生的操作数据。
43.应理解,在实际应用中,服务器也可以获取其它类型的游戏示例数据,训练游戏ai模型,本技术在此不对所获取的游戏示例数据的类型做任何限定。
44.应理解,在实际应用中,服务器除了可以通过上述方式先获取游戏示例数据、再基于游戏示例数据生成技巧样本数据以外,服务器也可以通过其它方式获取技巧样本数据,例如,服务器可以直接获取预先构建好的技巧样本数据,又例如,服务器也可以在训练游戏对局中按照目标帧长度采样游戏状态数据序列和操作数据序列,以构建技巧样本数据,等等,本技术在此不对技巧样本数据的获取方式做任何限定。
45.步骤202:采用监督学习算法,根据所述技巧样本数据,联合训练变分自编码器和先验策略模型;所述变分自编码器包括编码器和解码器,所述编码器用于将操作数据序列映射为技巧向量,所述解码器用于根据所述技巧向量重建操作数据序列;所述先验策略模型用于根据游戏状态数据序列确定技巧向量。
46.服务器获取到技巧样本数据后,可以采用监督学习算法,根据所获取的技巧样本数据,联合训练变分自编码器和先验策略模型。监督学习算法是指使用训练样本数据训练模型、使模型具备一定能力的方法,其要求所训练的模型从训练样本数据中模仿和拟合专家策略,尽可能地输出与训练样本数据中的标签数据相一致的数据;监督学习算法可以通过调整训练样本数据,来调整所训练的模型的能力,无需与环境交互,可以完全离线训练。
47.需要说明的是,本技术实施例中的联合训练是指,在训练变分自编码器和先验策略模型的过程中,利用变分自编码器生成的中间处理结果辅助训练先验策略模型,即对于先验策略模型的训练依赖对于变分自编码器的训练。
48.需要说明的是,变分自编码器(variational autoencoder,vae)是用于对具有复杂表现形式的特征或数据进行压缩,其能够将高维的数据集嵌入至低维空间中,降低数据复杂度以便后续处理和训练;此外,变分自编码器也是一种生成模型,其通过在低维空间中采样,生成训练样本数据集中不存在、但与训练样本数据集中的训练样本数据相似的数据。在本技术实施例中,变分自编码器包括编码器和解码器;其中,该编码器即用于将高维数据集嵌入至低维空间中,也即用于将复杂的操作数据序列映射为维度较低的技巧向量;该解码器即用于在低维空间中采样以生成重建数据,也即用于将维度较低的技巧向量解码为操作数据序列。
49.需要说明的是,先验策略模型是本技术实施例提出的用于根据游戏状态数据序列确定技巧向量的神经网络模型,即该先验策略模型用于学习游戏状态数据序列到技巧向量的映射。该先验策略模型例如可以包括预设层数的全连接网络,本技术在此不对该先验策略模型的模型结构做任何限定。
50.图3为本技术实施例提供的一种联合训练变分自编码器和先验策略模型的示意图。如图3所示,训练变分自编码器时,服务器可以将技巧样本数据中的操作数据序列输入变分自编码器,变分自编码器中的编码器通过处理该操作数据序列可以得到对应的技巧向量,然后变分自编码器中的解码器可以根据编码器输出的技巧向量重建操作数据序列,进而,可以根据重建的操作数据序列与初始输入变分自编码器的操作数据序列之间的差异,训练该变分自编码器。训练先验策略模型时,服务器可以将技巧样本数据中的游戏状态数据序列输入先验策略模型,先验策略模型通过处理该游戏状态数据序列,可以得到对应的技巧向量;进而,可以根据该先验策略模型输出的技巧向量与变分自编码器中编码器根据该技巧样本数据中的操作数据序列确定的技巧向量之间的差异,训练该先验策略模型。
51.在一种可能的实现方式中,服务器可以同时训练变分自编码器和先验策略模型。具体的,服务器可以通过变分自编码器中的编码器,根据某技巧样本数据中的操作数据序列确定第一技巧向量,通过变分自编码器中的解码器,根据该第一技巧向量确定重建操作数据序列;以及,通过先验策略模型,根据该技巧样本数据中的游戏状态数据序列确定第二技巧向量。进而,根据该重建操作数据序列与该操作数据序列之间的差异、以及第二技巧向量与第一技巧向量之间的差异,同时训练变分自编码器和先验策略模型。
52.示例性的,服务器可以将某技巧样本数据中的操作数据序列和游戏状态数据序列,分别输入待训练的变分自编码器和先验策略模型。变分自编码器中的编码器对所输入的操作数据序列进行处理,可以将该操作数据序列映射为对应的第一技巧向量,变分自编码器中的解码器对编码器确定的第一技巧向量进行处理,可以得到重建操作数据序列,该重建操作数据序列可以理解为解码器根据技巧向量重新生成的操作数据序列。先验策略模型对所输入的游戏状态数据序列进行处理,可以生成第二技巧向量。
53.进而,服务器可以利用上述重建操作数据序列与上述操作数据序列之间的差异训练变分自编码器,以及利用上述第二技巧向量与第一技巧向量之间的差异训练先验策略模型。在本种实现方式中,服务器可以基于上述两种差异,对变分自编码器和先验策略模型进行同步训练;也即,服务器可以根据上述重建操作数据序列与上述操作数据序列之间的差异、以及上述第二技巧向量与第一技巧向量之间的差异,构建一个综合损失函数,来同步训练变分自编码器和先验策略模型。
54.作为一种示例,服务器可以根据上述重建操作数据序列与上述操作数据序列之间的差异,构建第一损失函数,以及根据上述第二技巧向量与上述第一技巧向量之间的差异,构建第二损失函数;然后,根据该第一损失函数和该第二损失函数,确定综合损失函数;进而,基于该综合损失函数,调整该变分自编码器的模型参数和该先验策略模型的模型参数。
55.具体的,服务器可以根据上述重建操作数据序列与上述操作数据序列之间的差异确定重构误差,并基于该重构误差确定第一损失函数;同时,服务器还可以根据上述第二技巧向量与上述第一技巧向量,确定二者之间的kl(kullback-leibler)散度,并基于该kl散度确定第二损失函数。kl散度是用于衡量两个概率分布的相似度的一个度量指标,在本申
请实施例中,第一技巧向量与第二技巧向量之间的kl散度能够反映第一技巧向量与第二技巧向量之间的相似性。
56.然后,服务器可以将上述第一损失函数和第二损失函数相加,得到综合损失函数;或者,服务器可以按照预设的权重,对上述第一损失函数和第二损失函数进行加权相加,得到综合损失函数。进而,服务器可以以最小化该综合损失函数作为目标,基于梯度下降算法同时调整变分自编码器的模型参数和先验策略模型的模型参数,直至变分自编码器和先验策略模型均满足训练结束条件为止。
57.应理解,上述训练结束条件是用于衡量是否结束模型训练过程的条件,该训练结束条件例如可以是对于模型的迭代训练次数达到预设次数阈值,又例如可以是所训练的模型性能满足预设要求(如变分自编码器输出的重建操作数据序列与输入的操作数据序列之间的差异小于预设阈值,如先验策略模型输出的技巧向量与变分自编码器的编码器输出的技巧向量之间的差异小于预设阈值),再例如可以是所训练的模型的性能不再跟随训练的进行产生明显提升等等,本技术在此不对该训练结束条件做任何限定。
58.本技术实施例通过对变分自编码器和先验策略模型进行同步训练,可以提高监督学习阶段的模型训练效率,缩短模型训练时长;经实验验证,同步训练变分自编码器和先验策略模型与分别训练变分自编码器和先验策略模型相比,可以减少25%的训练时间。
59.在另一种可能的实现方式中,服务器也可以先训练变分自编码器,完成对于变分自编码器的训练后,再训练先验策略模型。具体的,服务器可以先通过待训练的变分自编码器,根据某技巧样本数据中的操作数据序列,确定重建操作数据序列,并根据该重建操作数据序列与该操作数据序列之间的差异,训练该变分自编码器;变分自编码器满足训练结束条件后,服务器可以通过待训练的先验策略模型,根据某技巧样本数据中的游戏状态数据序列,确定第三技巧向量,并根据该第三技巧向量与第四技巧向量之间的差异,训练该先验策略模型;此处的第四技巧向量是满足训练结束条件的变分自编码器中的编码器根据该技巧样本数据中的操作数据序列确定的。
60.示例性的,服务器可以先训练变分自编码器。具体训练该变分自编码器时,可以将技巧样本数据中的操作数据序列输入变分自编码器,变分自编码器中的编码器通过对输入的操作数据序列进行处理,可以输出对应的技巧向量,变分自编码器中的解码器通过对编码器输出的技巧向量进行处理,可以生成重建操作数据序列;进而,服务器可以根据该重建操作数据序列和该操作数据序列确定重构误差,基于该重构误差构建损失函数,以最小化该损失函数为目标,调整变分自编码器的模型参数。如此,基于所获取的各个技巧样本数据中的操作数据序列,反复迭代执行上述操作,直至该变分自编码器满足训练结束条件为止;此处的训练结束条件例如可以是对于变分自编码器的迭代训练次数达到预设次数阈值,又例如可以是该变分自编码器的性能满足预设性能要求,再例如可以是该变分自编码器的性能不再跟随模型训练的进行产生明显提升,等等。
61.完成对于变分自编码器的训练后,服务器可以进一步训练先验策略模型。具体训练先验策略模型时,可以将技巧样本数据中的游戏状态数据序列输入先验策略模型,先验策略模型通过对输入的游戏状态数据序列进行处理,可以输出对应的第三技巧向量;同时,服务器可以将该技巧样本数据中的操作数据序列输入已满足训练结束条件的变分自编码器,并获取该变分自编码器中的编码器处理该操作数据序列生成的第四技巧向量;进而,服
务器可以确定该第三技巧向量和该第四技巧向量之间的kl散度,该kl散度能够反映该第三技巧向量与该第四技巧向量之间的相似性,并基于该kl散度构建损失函数,最小化该损失函数为目标,调整先验策略模型的模型参数。如此,基于所获取的各个技巧样本数据中的游戏状态数据序列,反复迭代执行上述操作,直至该先验策略模型满足训练结束条件为止;此处的训练结束条件例如可以是对于先验策略模型的迭代训练次数达到预设次数阈值,又例如可以是该先验策略模型的性能满足预设性能要求,再例如可以是该先验策略模型的性能不再跟随模型训练的进行产生明显提升,等等。
62.本技术实施例通过对变分自编码器和先验策略模型先后分开训练,先训练变分自编码器,待完成对于变分自编码器的训练后,再训练先验策略模型,可以保证模型训练的可靠性和稳定性,即保证训练得到的变分自编码器和先验策略模型均具备较优的性能。
63.步骤203:采用强化学习算法,训练游戏人工智能模型;所述游戏人工智能模型是基于所述先验策略模型和所述解码器构建的。
64.服务器在监督学习阶段完成对于变分自编码器和先验策略模型的训练后,可以得到用于根据游戏状态数据序列确定技巧向量的先验策略模型、以及变分自编码器中用于根据技巧向量重建操作数据序列的解码器,基于此,服务器可以利用该先验策略模型和该解码器,构建用于根据游戏状态数据序列确定操作数据序列的游戏ai模型。
65.考虑到在监督学习阶段使用的技巧样本数据的数量可能不够充足,难以保证训练出的先验策略模型的强度满足游戏实际需求,即由于先验策略模型涉及游戏状态数据序列到技巧向量的映射,且游戏状态数据空间极为复杂,因此在监督学习阶段仅基于少量的技巧样本数据,难以保证训练得到的先验策略模型的强度满足游戏实际需求。因此,在本技术实施例中,服务器需要采用强化学习算法,对上述基于先验策略模型和解码器构建的游戏ai模型做进一步训练,以重点提升其中先验策略模型的强度。强化学习算法用于描述和解决智能体在与环境的交互过程中,通过学习策略来达成回报最大化或者实现特定目标的问题,其优点在于无需专家知识和启发式规则,即可获得高强度、行为多样的ai模型;强化学习算法的核心思想是,在每个时间步,ai模型从环境中获得状态并采取动作,进而环境会根据ai采取的动作给予对应的反馈,在不断地与环境交互、获得反馈的过程中,ai模型可以学习到最优的行为决策能力。
66.在一种可能的实现方式中,服务器可以在游戏ai模型中额外建立一个独立于先验策略模型的残差模型,在强化学习阶段不再对先验策略模型进行梯度更新,而是仅学习该残差模型。即,服务器可以采用强化学习算法,训练游戏ai模型中的残差模型;此时的游戏ai模型中包括先验策略模型、残差模型以及解码器,该残差模型用于确定对于先验策略模型输出的技巧向量的修正量。
67.也就是说,在本种实现方式中,服务器在强化学习阶段固定游戏ai模型中先验策略模型和解码器的模型参数,仅对游戏ai模型中的残差模型的模型参数进行梯度调整。如此,在强化学习阶段仅调整残差模型,一方面可以保留先验策略模型在监督学习阶段学习到的风格特点,避免先验策略模型基于风格化的训练样本数据学习到的操作风格在强化学习阶段被弱化或者磨灭,另一方面,也能保证最终训练得到的游戏ai模型具有较好的稳定性。
68.作为示例,本技术实施例中的残差模型可以包括若干层并列的初始全连接网络以
及整合全连接网络,不同的初始全连接网络用于处理游戏状态数据序列中不同类型的数据,整合全连接网络用于对整合后的各初始全连接网络的处理结果做进一步处理,从而得到对于先验模型输出的技巧向量的修正量。当然,该残差模型也可以表现为其它模型结构,本技术在此不对该残差模型的模型结构做任何限定。
69.图4为本技术实施例提供的在强化学习阶段训练残差模型的流程示意图。如图4所示,对于残差模型的训练过程具体包括以下步骤:步骤401:获取训练游戏环境中的训练游戏状态数据序列。
70.在强化学习阶段,服务器可以基于游戏ai模型与训练游戏环境之间的交互,对该游戏ai模型中的残差模型进行训练。具体的,服务器需要获取训练游戏环境中的训练游戏状态数据序列,以供游戏ai模型中的先验策略模型和残差模型来处理。
71.需要说明的是,训练游戏环境是在强化学习阶段游戏ai模型控制的虚拟角所处的游戏对局环境;例如,假设游戏ai模型控制虚拟角参与了某场游戏对局,那么该场游戏对局的游戏环境即为训练游戏环境。训练游戏状态数据序列是在上述训练游戏环境中获取的游戏状态数据序列,训练游戏状态数据序列与上文中介绍的技巧样本数据中的游戏状态数据序列相类似,并且该训练游戏状态数据序列也对应目标帧长度。
72.步骤402:通过所述先验策略模型,根据所述训练游戏状态数据序列,确定基础技巧向量;通过所述残差模型,根据所述训练游戏状态数据序列,确定修正量;通过所述解码器,根据所述基础技巧向量和所述修正量,确定预测操作数据序列。
73.图5为本技术实施例提供的一种强化学习阶段游戏ai模型的训练示意图。如图5所示,服务器可以将所获取的训练游戏状态数据序列,输入游戏ai模型,即输入游戏ai模型中的先验策略模型和残差模型。先验策略模型通过处理该训练游戏状态数据序列,可以相应地输出基础技巧向量;残差模型通过处理该训练游戏状态数据序列,可以相应地输出用于修正上述基础技巧向量的修正量;进而,游戏ai模型中的解码器可以根据先验策略模型输出的基础技巧向量和残差模型输出的修正量,确定预测操作数据序列;例如,解码器可以处理基础技巧向量与修正量的和值,从而得到预测操作数据序列。
74.需要说明的是,预测操作数据序列是游戏ai模型根据输入的训练游戏状态数据序列预测的操作数据序列,该预测操作数据序列用于指导游戏ai模型操控的虚拟角接下来执行的动作,该预测操作数据序列与上文中介绍的技巧样本数据中的操作数据序列相类似,并且该预测操作数据序列也对应目标帧长度。
75.步骤403:控制所述训练游戏环境中的虚拟角执行所述预测操作数据序列指示的动作序列,获取所述虚拟角执行所述动作序列时产生的游戏状态变化数据。
76.进而,服务器可以控制虚拟角(即训练游戏环境中由当前训练的游戏ai模型控制的虚拟角),执行游戏ai模型输出的预测操作数据序列指示的动作序列。虚拟角执行该动作序列中的动作,会引起训练游戏环境中游戏状态的变化,相应地,服务器需要获取该虚拟角执行该动作序列时产生的游戏状态变化数据。该游戏状态变化数据是用于表征因该虚拟角执行动作而产生的游戏状态变化情况的数据,该游戏状态变化数据例如可以包括以下数据中的任意一种或多种:生命值变化数据、能量值变化数据、剩余虚拟资源变化数据等等;应理解,上述变化数据可以包括训练游戏环境中各个虚拟角的变化数据,不仅局限于游戏ai模型控制的虚拟角的变化数据,本技术在此不对游戏状态变化数据包括的数
据做任何限定。
77.作为一种示例,服务器可以通过以下方式获取上述游戏状态变化数据:获取动作序列中各个动作各自对应的游戏状态变化数据,组成游戏状态变化数据序列;此处的动作对应的游戏状态变化数据用于表征虚拟角执行完该动作后游戏状态的变化情况。
78.具体的,游戏ai模型输出目标帧长度的预测操作数据序列后,服务器可以基于该预测操作数据序列中包括的每个操作数据,控制虚拟角按序执行每个操作数据指示的动作;虚拟角每执行一个动作均会引起训练游戏环境中游戏状态发生对应的变化,此时,服务器可以获取用于表征该游戏状态的变化情况的游戏状态变化数据,作为虚拟角执行的该动作对应的游戏状态变化数据。如此,虚拟角每执行完一个操作数据指示的动作,服务器即可获得一个对应于该动作的游戏状态变化数据;虚拟角执行完预测操作数据序列指示的动作序列后,服务器可以相应地获得目标帧长度的游戏状态变化数据,进而利用这些游戏状态变化数据组成游戏状态变化数据序列。该游戏状态变化数据序列后续可作为确定用于训练残差模型的目标奖励值的依据。
79.应理解,上述获取用于确定目标奖励值的游戏状态变化数据的方式仅为示例,在实际应用中,服务器也可以通过其它方式获取用于确定目标奖励值的游戏状态变化数据;例如,服务器获得游戏ai模型输出的预测操作数据序列后,可以控制虚拟角仅执行该预测操作数据序列中第一个操作数据指示的动作,进而获取虚拟角执行完该动作后产生的游戏状态变化数据,利用该游戏状态变化数据作为确定目标奖励值的依据,本技术实施例在此不对获取用于确定目标奖励值的游戏状态变化数据的方式做任何限定。
80.步骤404:通过奖励函数,根据所述游戏状态变化数据确定目标奖励值;基于所述目标奖励值,训练所述残差模型。
81.如图5所示,服务器获取到游戏状态变化数据后,可以通过奖励函数,根据所获取的游戏状态变化数据确定目标奖励值。进而,以获得最大目标奖励值为目标,训练游戏ai模型中的残差模型,调整该残差模型的模型参数。
82.需要说明的是,上述奖励函数是用于根据游戏状态的变化情况确定对于游戏ai模型的奖励值的函数;上述目标奖励值是通过奖励函数根据游戏状态变化情况确定的奖励值,其可用于确定调整残差模型的模型参数时的梯度。该奖励函数可以根据游戏ai模型的训练目标、以及虚拟角根据游戏ai模型输出的预测操作数据序列执行的动作风格进行调整;例如,假设游戏ai模型的训练目标为控制虚拟角倾向于执行攻击操作,若虚拟角根据游戏ai模型输出的预测操作数据序列执行了防御操作,则可以增大奖励函数中针对攻击操作配置的权重,减小奖励函数中针对防御操作配置的权重。该奖励函数通常由相关技术人员人工调整,在本技术实施例中,游戏ai模型中的先验策略模型通过监督学习已经获得一定的技巧编码能力,因此可以在一定程度上降低强化学习阶段对于奖励函数的调整难度,相应地,可以减少调整奖励函数所需的人力。
83.作为一种示例,若服务器获取的用于确定目标奖励值的游戏状态变化数据为游戏状态变化数据序列,则服务器可以通过以下方式确定该目标奖励值:通过奖励函数,确定该游戏状态变化数据序列中每个游戏状态变化数据对应的奖励值;进而,根据游戏状态变化数据序列中各个游戏状态变化数据各自对应的奖励值,确定该目标奖励值。
84.示例性的,服务器可以通过奖励函数,逐一确定游戏状态变化数据序列中每个游
戏状态变化数据对应的奖励值,所谓游戏状态变化数据对应的奖励值可以理解为针对该种游戏状态变化情况赋予的奖励值。进而,服务器可以对游戏状态变化数据序列中各个游戏状态变化数据各自对应的奖励值进行求和处理,得到的总奖励值即为目标奖励值。如此,综合考虑预测操作数据序列中各个操作数据引起的总体游戏状态变化情况,据此确定目标奖励值,并基于该目标奖励值训练游戏ai模型中的残差模型,更有利提升所训练的残差模型的性能。
85.当然,在实际应用中,服务器也可以通过奖励函数,根据单个游戏状态变化数据确定上述目标奖励值,并基于该目标奖励值,调整游戏ai模型中的残差模型,本技术对此不做任何限定。
86.作为一种示例,服务器可以采用近端策略优化算法(proximal policy optimization,ppo),基于目标奖励值训练游戏ai模型中的残差模型。即,服务器可以根据预测操作数据序列与基础操作数据序列之间的差异,确定损失函数修正系数,此处的基础操作数据序列是解码器根据基础技巧向量确定的;进而,采用ppo算法,根据损失函数修正系数和目标奖励值,构建目标损失函数;并基于该目标损失函数,调整残差模型的模型参数。
87.需要说明的是,ppo算法是强化学习中一种构建损失函数的方法,基于ppo算法构建损失函数时需要确定损失函数修正系数,相关技术中,该损失函数修正系数通常采用策略梯度方法中的熵正则项,以鼓励强化学习训练的模型做出不同的决策。在本技术实施例中,创新性地根据游戏ai模型确定的策略与单独基于先验策略模型确定的策略之间的差异,来确定该损失函数修正系数,以鼓励强化学习训练的游戏ai模型做出符合先验策略模型决策风格的决策,从而保证监督学习阶段根据具有特定风格的技巧样本数据学习到的信息不在强化学习阶段被弱化或者磨灭。
88.具体的,服务器可以利用游戏ai模型中的解码器,对先验策略模型输出的基础技巧向量单独进行解码,得到基础操作数据序列,进而,服务器可以根据该基础操作数据序列与游戏ai模型输出的预测操作数据序列,计算二者之间的kl散度,并利用其替代ppo算法中策略梯度方法中常用的熵正则项,即将该kl散度作为损失函数修正系数。然后,服务器可以采用ppo算法,利用上述损失函数修正系数,对基于目标奖励值构建的损失函数进行修正,从而得到目标损失函数。
89.更具体的,采用ppo算法求解目标损失函数的公式如下式(1)所示:(1)其中,e[]表示期望函数;表示残差模型中的模型参数,表示先验策略模型的模型参数;为目标损失函数中的策略梯度部分,具体展开如下式(2)所示;为目标损失函数中的值函数部分;为上述损失函数修正系数,表示上述基础操作数据序列,表示上述预测操作数据序列。
[0090]
(2)其中,表示ppo算法中的策略比率函数;表示优势函数,其是根据目标奖励值确定的,表示游戏状态数据,表示先验策略模型输出的技巧向量,表示残差模型输出的修正量;clip()表示ppo算法中的截断函数,clip(x,y,z)表示若输入值x位于[y,z]区间内,则原样输出x,若输入值x小于y,则输出y,若输入值x大于z,则输出z;表示ppo算法中的超参数,经验取值范围在0.05到0.2之间,可以根据实际情况进行调整。
[0091]
进而,服务器可以基于该目标损失函数,调整游戏ai模型中残差模型的参数,以使上述目标奖励值最大化。
[0092]
如此,循环执行上述步骤401至步骤404,直至满足训练结束条件为止,即可得到可投入实际应用的游戏ai模型。此处的训练结束条件例如可以是对于游戏ai模型中残差模型的迭代训练次数达到预设次数阈值,又例如可以是游戏ai模型的性能满足预设性能要求(如目标奖励值达到预设要求),再例如可以是游戏ai模型的性能不再跟随训练的进行而提升(如目标奖励值不再发生明显变化),等等。
[0093]
如此,通过上述方式单独训练游戏ai模型中的残差模型,固定游戏ai模型中的先验策略模型和解码器不变,既可以保留先验策略模型在监督学习阶段学习到的行为风格,又可以保证训练得到的游戏ai模型具有较好的稳定性。
[0094]
在另一种可能的实现方式中,服务器也可以在强化学习阶段,对游戏ai模型中的先验策略模型做进一步训练,以进一步提升该先验策略模型的强度。即服务器可以采用强化学习算法,训练游戏ai模型中的先验策略模型;在本种实现方式中,游戏ai模型用于通过先验策略模型根据游戏状态数据序列确定技巧向量,以及通过解码器根据该技巧向量确定操作数据序列。
[0095]
也就是说,在本种实现方式中,服务器仅基于在监督学习阶段训练出的先验策略模型和变分自编码器中的解码器构建游戏ai模型,由于通过监督学习解码器的性能已达到较优,而先验策略模型的强度仍不足以满足游戏实际需求,因此需要进一步通过强化学习优化该先验策略模型,以提升其强度。
[0096]
图6为本技术实施例提供的另一种强化学习阶段游戏ai模型的训练示意图。如图6所示,本种实现方式中在强化学习阶段训练游戏ai模型中的先验策略模型的方式,与上文图4和图5所示的在强化学习阶段训练游戏ai模型中的残差模型的方式相类似,区别仅在于,游戏ai模型工作方式上的不同、以及游戏ai模型中所需训练的对象的不同。所谓游戏ai模型工作方式上的不同是指,在本种实现方式中,游戏ai模型需要通过先验策略模型根据训练游戏状态数据序列确定技巧向量,再通过解码器根据该先验策略模型确定的技巧向量确定预测操作数据序列,即游戏ai模型中不涉及残差模型的相关处理;所谓游戏ai模型中所需训练的对象的不同是指,在本种实现方式中,通过奖励函数根据游戏状态的变化确定出目标奖励值后,基于该目标奖励值调整的是先验策略模型的模型参数,而不是调整残差模型的模型参数,但对先验策略模型的模型参数的具体调整方式与对残差模型的模型参数的具体调整方式基本相同,基于ppo算法构建损失函数调整先验策略模型的模型参数时,可
以保留策略梯度方法中常用的熵正则项作为该损失函数修正系数。
[0097]
本技术实施例提供的模型训练方法,创新性地提出了“技巧”这一概念,所谓“技巧”即是特定长度的操作数据序列在低维向量空间中的表示;藉由“技巧”这一概念的引入,本技术实施例将传统游戏ai模型所需学习的策略(游戏状态数据到操作数据的映射)拆分为上层策略和下层策略,其中,上层策略为游戏状态数据序列到技巧的映射,下层策略为技巧到操作数据序列的映射。对于下层策略的学习,本技术实施例通过采用监督学习算法根据技巧样本数据训练变分自编码器来实现;即采用监督学习算法,基于技巧样本数据中的操作数据序列,训练变分自编码器中的编码器和解码器,其中,编码器用于将操作数据序列映射为技巧向量,解码器用于根据技巧向量重建操作数据序列;由于技巧向量与操作数据序列之间的映射不涉及游戏状态数据空间,大幅降低了训练任务的复杂度,因此只使用少量的技巧样本数据即可训练得到性能较优的变分自编码器。对于上层策略的学习,本技术实施例通过结合监督学习算法和强化学习算法训练先验策略模型来实现;即先采用监督学习算法,基于技巧样本数据中的游戏状态序列数据和变分自编码器中的编码器的输出结果,训练先验策略模型,然后采用强化学习算法,对包括该先验策略模型和变分自编码器中的解码器的游戏ai模型进行训练;先采用监督学习算法训练先验策略模型,可以使该先验策略模型具备一定的技巧编码能力,对包括该先验策略模型的游戏ai模型进行强化学习,可以在一定程度上减少强化学习的训练耗时,并且奖励函数的调整也更简单,可以减少强化学习过程中所需投入的用于调整奖励函数的人力,同时也能保证训练得到的游戏ai模型具有较优的拟人性。
[0098]
为了便于进一步理解本技术实施例提供的模型训练方法,下面以该模型训练方法用于训练适用于第一人称射击(first-person shooting,fps)游戏的游戏ai模型为例,对该模型训练方法进行整体示例性介绍。图7为本技术实施例提供的一种fps游戏的界面示意图。
[0099]
在本技术实施例中,基于智能体与游戏环境交互中产生的一段定长连续操作数据序列,提出了“技巧”这一概念,“技巧”为定长连续操作数据序列在低维向量空间中的表示,上述定长具体可以指目标帧长度。藉由“技巧”这一概念的引入,本技术实施例将传统游戏ai模型所需学习的策略(游戏状态数据到操作数据的映射),拆分为上层策略(游戏状态数据序列到技巧的映射)和下层策略(技巧到操作数据序列的映射)两部分,针对这两部分分别进行学习,从而将问题简单化,针对两部分分别进行优化,从而改进游戏ai模型的整体性能。
[0100]
对于下层策略(技巧到操作数据序列的映射)的学习,本技术实施例通过监督学习变分自编码器的方式实现;基于游戏示例数据训练变分自编码器,该变分自编码器中包括编码器和解码器,其中,编码器用于将操作数据序列映射为技巧向量,解码器用于根据技巧向量重建操作数据序列。由于技巧向量到操作数据序列的映射不涉及游戏状态数据空间,大幅降低了训练任务的复杂度,因此通过少量的游戏示例数据即可完成对于变分自编码器的训练。
[0101]
对于上层策略(游戏状态数据序列到技巧的映射)的学习,本技术实施例先通过监督学习基于游戏示例数据训练先验策略模型,然后,以该先验策略模型和上述变分自编码器中的解码器为基础构建游戏ai模型,该游戏ai模型中还包括用于针对先验策略模型输出
的技巧向量确定修正量的残差模型,进而,通过强化学习训练该残差模型,从而实现对于先验策略模型的修正,得到一个性能较优的游戏ai模型。
[0102]
本技术方案的整体流程包括以下步骤:1、基于需要使用游戏ai模型的fps游戏场景,收集游戏示例数据,该游戏示例数据中包括该fps游戏场景中的游戏状态数据序列、以及目标玩家在该fps游戏场景中产生的操作数据序列,此处的目标玩家可以是fps游戏水平较高的玩家。进而,按照目标帧长度对所收集的游戏示例数据进行切分处理,即将该游戏示例数据中的游戏状态数据序列切分为若干对应于目标帧长度的游戏状态数据序列,以及将该游戏示例数据中的操作数据序列切分为若干对应于目标帧长度的操作数据序列,并且利用切分得到的每对具有对应关系的游戏状态数据序列和操作数据序列,组成技巧样本数据。
[0103]
2、采用监督学习算法,同步训练变分自编码器和先验策略模型。即服务器可以将某技巧样本数据中的操作数据序列和游戏状态数据序列,分别输入变分自编码器和先验策略模型;变分自编码器中的编码器通过处理所输入的操作数据序列,可以相应地得到技巧向量,进而该变分自编码器中的解码器可以通过处理该编码器输出的技巧向量,输出重建操作数据序列;先验策略模型通过处理所输入的游戏状态数据序列,可以相应地得到技巧向量。进而,服务器可以根据输入变分自编码器的操作数据序列与该变分自编码器输出的重建操作数据序列之间的差异、以及先验策略模型输出的技巧向量与变分自编码器中编码器输出的技巧向量之间的差异,同步调整变分自编码器和先验策略模型各自的模型参数。
[0104]
3、通过监督学习算法完成对于变分自编码器和先验策略模型的训练后,可以在单独创建一个残差模型,进而利用该先验策略模型、该残差模型以及该变分自编码器中的解码器,组成一个游戏ai模型;在该游戏ai模型中,先验策略模型用于根据输入的游戏状态数据序列确定基础技巧向量,残差模型用于根据输入的游戏状态序列数据确定对于上述基础技巧向量的修正量,解码器用于根据基础技巧向量与修正量的和值,确定用于操控虚拟角的预测操作数据序列。
[0105]
4、采用强化学习算法,对上述游戏ai模型中的残差模型进行训练,以提升该游戏ai模型的整体能力,最终得到可用在fps游戏中的游戏ai模型。该游戏ai模型可以在fps游戏的早期开发阶段供开发团队进行测试和游戏的线上部署,并且可以作为后续游戏ai模型开发的基模型;该游戏ai模型也可以在fps游戏的稳定运营阶段控制虚拟角执行具有特定风格的动作,所控制的虚拟角可以是fps游戏中的npc,也可以是fps游戏中为了降低游戏匹配时间而填充的队友虚拟角或对手虚拟角。
[0106]
应理解,在实际应用中,本技术实施例提供的模型训练方法除了可以用于训练适用于fps游戏的游戏ai模型外,还可以用于训练适用于其它游戏的游戏ai模型,如适用于第三人称射击(third-personal shooting,tps)游戏的游戏ai模型、适用于多人在线战术竞技游戏(multiplayer online battle arena,moba)的游戏ai模型等等,本技术在此不对所训练的游戏ai模型适用的游戏类型做任何限定。
[0107]
针对上文描述的模型训练方法,本技术还提供了对应的模型训练装置,以使上述模型训练方法在实际中得以应用及实现。
[0108]
参见图8,图8是与上文图2所示的模型训练方法对应的一种模型训练装置800的结构示意图。如图8所示,该模型训练装置800包括:
样本获取模块801,用于获取技巧样本数据;所述技巧样本数据中包括具有对应关系的游戏状态数据序列和操作数据序列,所述游戏状态数据序列和所述操作数据序列对应目标帧长度;监督学习模块802,用于采用监督学习算法,根据所述技巧样本数据,联合训练变分自编码器和先验策略模型;所述变分自编码器包括编码器和解码器,所述编码器用于将操作数据序列映射为技巧向量,所述解码器用于根据所述技巧向量重建操作数据序列;所述先验策略模型用于根据游戏状态数据序列确定技巧向量;强化学习模块803,用于采用强化学习算法,训练游戏人工智能模型;所述游戏人工智能模型是基于所述先验策略模型和所述解码器构建的。
[0109]
可选的,所述监督学习模块802具体用于:通过所述变分自编码器中的所述编码器,根据所述技巧样本数据中的所述操作数据序列,确定第一技巧向量;通过所述变分自编码器中的所述解码器,根据所述第一技巧向量,确定重建操作数据序列;通过所述先验策略模型,根据所述技巧样本数据中的所述游戏状态数据序列,确定第二技巧向量;根据所述重建操作数据序列与所述操作数据序列之间的差异、以及所述第二技巧向量与所述第一技巧向量之间的差异,训练所述变分自编码器和所述先验策略模型。
[0110]
可选的,所述监督学习模块802具体用于:根据所述重建操作数据序列与所述操作数据序列之间的差异,构建第一损失函数;根据所述第二技巧向量与所述第一技巧向量之间的差异,构建第二损失函数;根据所述第一损失函数和所述第二损失函数,确定综合损失函数;基于所述综合损失函数,调整所述变分自编码器的模型参数和所述先验策略模型的模型参数。
[0111]
可选的,所述监督学习模块802具体用于:通过所述变分自编码器,根据所述技巧样本数据中的所述操作数据序列,确定重建操作数据序列;根据所述重建操作数据序列与所述操作数据序列之间的差异,训练所述变分自编码器;通过所述先验策略模型,根据所述技巧样本数据中的所述游戏状态数据序列,确定第三技巧向量;根据所述第三技巧向量与第四技巧向量之间的差异,训练所述先验策略模型;所述第四技巧向量是满足训练结束条件的所述变分自编码器中的编码器根据所述技巧样本数据中的操作数据序列确定的。
[0112]
可选的,所述强化学习模块803具体用于:采用强化学习算法,训练所述游戏人工智能模型中的残差模型;所述游戏人工智能模型中包括所述先验策略模型、所述残差模型以及所述解码器,所述残差模型用于确定对于所述先验策略模型输出的技巧向量的修正量。
[0113]
可选的,所述强化学习模块803包括:状态数据获取子模块,用于获取训练游戏环境中的训练游戏状态数据序列;操作数据预测子模块,用于通过所述先验策略模型,根据所述训练游戏状态数据序列,确定基础技巧向量;通过所述残差模型,根据所述训练游戏状态数据序列,确定修正
量;通过所述解码器,根据所述基础技巧向量和所述修正量,确定预测操作数据序列;变化数据获取子模块,用于控制所述训练游戏环境中的虚拟角执行所述预测操作数据序列指示的动作序列,获取所述虚拟角执行所述动作序列时产生的游戏状态变化数据;模型训练子模块,用于通过奖励函数,根据所述游戏状态变化数据确定目标奖励值;基于所述目标奖励值,训练所述残差模型。
[0114]
可选的,所述变化数据获取子模块具体用于:获取所述动作序列中各个动作各自对应的游戏状态变化数据,组成游戏状态变化数据序列;所述动作对应的游戏状态变化数据用于表征所述虚拟角执行所述动作后游戏状态的变化情况;所述模型训练子模块具体用于:通过所述奖励函数,确定所述游戏状态变化数据序列中每个所述游戏状态变化数据对应的奖励值;根据所述游戏状态变化数据序列中各个所述游戏状态变化数据各自对应的奖励值,确定所述目标奖励值。
[0115]
可选的,所述所述模型训练子模块具体用于:根据所述预测操作数据序列与基础操作数据序列之间的差异,确定损失函数修正系数;所述基础操作数据序列是所述解码器根据所述基础技巧向量确定的;采用近端策略优化算法,根据所述损失函数修正系数和所述目标奖励值,构建目标损失函数;基于所述目标损失函数,调整所述残差模型的模型参数。
[0116]
可选的,所述强化学习模块803具体用于:采用强化学习算法,训练所述游戏人工智能模型中的所述先验策略模型;所述游戏人工智能模型用于通过所述先验策略模型根据游戏状态数据序列确定技巧向量,以及通过所述解码器根据所述技巧向量确定操作数据序列。
[0117]
可选的,所述样本获取模块801具体用于:获取游戏示例数据;所述游戏示例数据中包括在训练游戏对局中产生的原始游戏状态数据序列和原始操作数据序列;按照所述目标帧长度,对所述游戏示例数据中的所述原始游戏状态数据序列和所述原始操作数据序列分别进行切分处理,得到具有对应关系的所述游戏状态数据序列和所述操作数据序列,利用所述游戏状态数据序列和所述操作数据序列组成所述技巧样本数据。
[0118]
可选的,所述游戏示例数据包括所述原始游戏状态数据序列、以及具有目标风格的所述原始操作数据序列;所述游戏人工智能模型用于指示虚拟角执行符合所述目标风格的动作;或者,所述游戏示例数据包括所述原始游戏状态数据序列、以及目标玩家产生的所述原始操作数据序列;所述游戏人工智能模型用于指示虚拟角执行符合所述目标玩家的游戏风格的动作。
[0119]
本技术实施例提供的模型训练装置,创新性地提出了“技巧”这一概念,所谓“技巧”即是特定长度的操作数据序列在低维向量空间中的表示;藉由“技巧”这一概念的引入,
本技术实施例将传统游戏ai模型所需学习的策略(游戏状态数据到操作数据的映射)拆分为上层策略和下层策略,其中,上层策略为游戏状态数据序列到技巧的映射,下层策略为技巧到操作数据序列的映射。对于下层策略的学习,本技术实施例通过采用监督学习算法根据技巧样本数据训练变分自编码器来实现;即采用监督学习算法,基于技巧样本数据中的操作数据序列,训练变分自编码器中的编码器和解码器,其中,编码器用于将操作数据序列映射为技巧向量,解码器用于根据技巧向量重建操作数据序列;由于技巧向量与操作数据序列之间的映射不涉及游戏状态数据空间,大幅降低了训练任务的复杂度,因此只使用少量的技巧样本数据即可训练得到性能较优的变分自编码器。对于上层策略的学习,本技术实施例通过结合监督学习算法和强化学习算法训练先验策略模型来实现;即先采用监督学习算法,基于技巧样本数据中的游戏状态序列数据和变分自编码器中的编码器的输出结果,训练先验策略模型,然后采用强化学习算法,对包括该先验策略模型和变分自编码器中的解码器的游戏ai模型进行训练;先采用监督学习算法训练先验策略模型,可以使该先验策略模型具备一定的技巧编码能力,对包括该先验策略模型的游戏ai模型进行强化学习,可以在一定程度上减少强化学习的训练耗时,并且奖励函数的调整也更简单,可以减少强化学习过程中所需投入的用于调整奖励函数的人力,同时也能保证训练得到的游戏ai模型具有较优的拟人性。
[0120]
本技术实施例还提供了一种用于模型训练的计算机设备,该计算机设备具体可以是终端设备或者服务器,下面将从硬件实体化的角度对本技术实施例提供的终端设备和服务器进行介绍。
[0121]
参见图9,图9是本技术实施例提供的终端设备的结构示意图。如图9所示,为了便于说明,仅示出了与本技术实施例相关的部分,具体技术细节未揭示的,请参照本技术实施例方法部分。该终端可以为包括手机、平板电脑、个人数字助理(personal digital assistant,pda)、销售终端(point of sales,pos)、车载电脑等任意终端设备,以终端为计算机为例:图9示出的是与本技术实施例提供的终端相关的计算机的部分结构的框图。参考图9,计算机包括:射频(radio frequency,rf)电路910、存储器920、输入单元930(其中包括触控面板931和其他输入设备932)、显示单元940(其中包括显示面板941)、传感器950、音频电路960(其可以连接扬声器961和传声器962)、无线保真(wireless fidelity,wifi)模块970、处理器980、以及电源990等部件。本领域技术人员可以理解,图9中示出的计算机结构并不构成对计算机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0122]
存储器920可用于存储软件程序以及模块,处理器980通过运行存储在存储器920的软件程序以及模块,从而执行计算机的各种功能应用以及数据处理。存储器920可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器920可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0123]
处理器980是计算机的控制中心,利用各种接口和线路连接整个计算机的各个部
分,通过运行或执行存储在存储器920内的软件程序和/或模块,以及调用存储在存储器920内的数据,执行计算机的各种功能和处理数据。可选的,处理器980可包括一个或多个处理单元;优选的,处理器980可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器980中。
[0124]
在本技术实施例中,该终端所包括的处理器980还用于执行本技术实施例提供的模型训练方法的任意一种实现方式的步骤。
[0125]
参见图10,图10为本技术实施例提供的一种服务器1000的结构示意图。该服务器1000可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,cpu)1022(例如,一个或一个以上处理器)和存储器1032,一个或一个以上存储应用程序1042或数据1044的存储介质1030(例如一个或一个以上海量存储设备)。其中,存储器1032和存储介质1030可以是短暂存储或持久存储。存储在存储介质1030的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1022可以设置为与存储介质1030通信,在服务器1000上执行存储介质1030中的一系列指令操作。
[0126]
服务器1000还可以包括一个或一个以上电源1026,一个或一个以上有线或无线网络接口1050,一个或一个以上输入输出接口1058,和/或,一个或一个以上操作系统,例如windows server
tm
,mac os x
tm
,unix
tm
, linux
tm
,freebsd
tm
等等。
[0127]
上述实施例中由服务器所执行的步骤可以基于该图10所示的服务器结构。
[0128]
其中,cpu 1022可以用于执行本技术实施例提供的模型训练方法的任意一种实现方式的步骤。
[0129]
本技术实施例还提供一种计算机可读存储介质,用于存储计算机程序,该计算机程序用于执行前述各个实施例所述的一种模型训练方法中的任意一种实施方式。
[0130]
本技术实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前述各个实施例所述的一种模型训练方法中的任意一种实施方式。
[0131]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0132]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0133]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0134]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0135]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,am)、磁碟或者光盘等各种可以存储计算机程序的介质。
[0136]
应当理解,在本技术中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
[0137]
以上所述,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。

技术特征:


1.一种模型训练方法,其特征在于,所述方法包括:获取技巧样本数据;所述技巧样本数据中包括具有对应关系的游戏状态数据序列和操作数据序列,所述游戏状态数据序列和所述操作数据序列对应目标帧长度;采用监督学习算法,根据所述技巧样本数据,联合训练变分自编码器和先验策略模型;所述变分自编码器包括编码器和解码器,所述编码器用于将操作数据序列映射为技巧向量,所述解码器用于根据所述技巧向量重建操作数据序列;所述先验策略模型用于根据游戏状态数据序列确定技巧向量;采用强化学习算法,训练游戏人工智能模型;所述游戏人工智能模型是基于所述先验策略模型和所述解码器构建的。2.根据权利要求1所述的方法,其特征在于,所述采用监督学习算法,根据所述技巧样本数据,联合训练变分自编码器和先验策略模型,包括:通过所述变分自编码器中的所述编码器,根据所述技巧样本数据中的所述操作数据序列,确定第一技巧向量;通过所述变分自编码器中的所述解码器,根据所述第一技巧向量,确定重建操作数据序列;通过所述先验策略模型,根据所述技巧样本数据中的所述游戏状态数据序列,确定第二技巧向量;根据所述重建操作数据序列与所述操作数据序列之间的差异、以及所述第二技巧向量与所述第一技巧向量之间的差异,训练所述变分自编码器和所述先验策略模型。3.根据权利要求2所述的方法,其特征在于,所述根据所述重建操作数据序列与所述操作数据序列之间的差异、以及所述第二技巧向量与所述第一技巧向量之间的差异,训练所述变分自编码器和所述先验策略模型,包括:根据所述重建操作数据序列与所述操作数据序列之间的差异,构建第一损失函数;根据所述第二技巧向量与所述第一技巧向量之间的差异,构建第二损失函数;根据所述第一损失函数和所述第二损失函数,确定综合损失函数;基于所述综合损失函数,调整所述变分自编码器的模型参数和所述先验策略模型的模型参数。4.根据权利要求1所述的方法,其特征在于,所述采用监督学习算法,根据所述技巧样本数据,联合训练变分自编码器和先验策略模型,包括:通过所述变分自编码器,根据所述技巧样本数据中的所述操作数据序列,确定重建操作数据序列;根据所述重建操作数据序列与所述操作数据序列之间的差异,训练所述变分自编码器;通过所述先验策略模型,根据所述技巧样本数据中的所述游戏状态数据序列,确定第三技巧向量;根据所述第三技巧向量与第四技巧向量之间的差异,训练所述先验策略模型;所述第四技巧向量是满足训练结束条件的所述变分自编码器中的编码器根据所述技巧样本数据中的操作数据序列确定的。5.根据权利要求1所述的方法,其特征在于,所述采用强化学习算法,训练游戏人工智能模型,包括:采用强化学习算法,训练所述游戏人工智能模型中的残差模型;所述游戏人工智能模型中包括所述先验策略模型、所述残差模型以及所述解码器,所述残差模型用于确定对于
所述先验策略模型输出的技巧向量的修正量。6.根据权利要求5所述的方法,其特征在于,所述采用强化学习算法,训练所述游戏人工智能模型中的残差模型,包括:获取训练游戏环境中的训练游戏状态数据序列;通过所述先验策略模型,根据所述训练游戏状态数据序列,确定基础技巧向量;通过所述残差模型,根据所述训练游戏状态数据序列,确定修正量;通过所述解码器,根据所述基础技巧向量和所述修正量,确定预测操作数据序列;控制所述训练游戏环境中的虚拟角执行所述预测操作数据序列指示的动作序列,获取所述虚拟角执行所述动作序列时产生的游戏状态变化数据;通过奖励函数,根据所述游戏状态变化数据确定目标奖励值;基于所述目标奖励值,训练所述残差模型。7.根据权利要求6所述的方法,其特征在于,所述获取所述虚拟角执行所述动作序列时产生的游戏状态变化数据,包括:获取所述动作序列中各个动作各自对应的游戏状态变化数据,组成游戏状态变化数据序列;所述动作对应的游戏状态变化数据用于表征所述虚拟角执行所述动作后游戏状态的变化情况;所述通过奖励函数,根据所述游戏状态变化数据确定目标奖励值,包括:通过所述奖励函数,确定所述游戏状态变化数据序列中每个所述游戏状态变化数据对应的奖励值;根据所述游戏状态变化数据序列中各个所述游戏状态变化数据各自对应的奖励值,确定所述目标奖励值。8.根据权利要求6所述的方法,其特征在于,所述基于所述目标奖励值,训练所述残差模型,包括:根据所述预测操作数据序列与基础操作数据序列之间的差异,确定损失函数修正系数;所述基础操作数据序列是所述解码器根据所述基础技巧向量确定的;采用近端策略优化算法,根据所述损失函数修正系数和所述目标奖励值,构建目标损失函数;基于所述目标损失函数,调整所述残差模型的模型参数。9.根据权利要求1所述的方法,其特征在于,所述采用强化学习算法,训练游戏人工智能模型,包括:采用强化学习算法,训练所述游戏人工智能模型中的所述先验策略模型;所述游戏人工智能模型用于通过所述先验策略模型根据游戏状态数据序列确定技巧向量,以及通过所述解码器根据所述技巧向量确定操作数据序列。10.根据权利要求1所述的方法,其特征在于,所述获取技巧样本数据,包括:获取游戏示例数据;所述游戏示例数据中包括在训练游戏对局中产生的原始游戏状态数据序列和原始操作数据序列;按照所述目标帧长度,对所述游戏示例数据中的所述原始游戏状态数据序列和所述原始操作数据序列分别进行切分处理,得到具有对应关系的所述游戏状态数据序列和所述操作数据序列,利用所述游戏状态数据序列和所述操作数据序列组成所述技巧样本数据。11.根据权利要求10所述的方法,其特征在于,所述游戏示例数据包括所述原始游戏状
态数据序列、以及具有目标风格的所述原始操作数据序列;所述游戏人工智能模型用于指示虚拟角执行符合所述目标风格的动作;或者,所述游戏示例数据包括所述原始游戏状态数据序列、以及目标玩家产生的所述原始操作数据序列;所述游戏人工智能模型用于指示虚拟角执行符合所述目标玩家的游戏风格的动作。12.一种模型训练装置,其特征在于,所述装置包括:样本获取模块,用于获取技巧样本数据;所述技巧样本数据中包括具有对应关系的游戏状态数据序列和操作数据序列,所述游戏状态数据序列和所述操作数据序列对应目标帧长度;监督学习模块,用于采用监督学习算法,根据所述技巧样本数据,联合训练变分自编码器和先验策略模型;所述变分自编码器包括编码器和解码器,所述编码器用于将操作数据序列映射为技巧向量,所述解码器用于根据所述技巧向量重建操作数据序列;所述先验策略模型用于根据游戏状态数据序列确定技巧向量;强化学习模块,用于采用强化学习算法,训练游戏人工智能模型;所述游戏人工智能模型是基于所述先验策略模型和所述解码器构建的。13.一种计算机设备,其特征在于,所述设备包括处理器及存储器;所述存储器用于存储计算机程序;所述处理器用于根据所述计算机程序执行权利要求1至11中任一项所述的模型训练方法。14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行权利要求1至11中任一项所述的模型训练方法。15.一种计算机程序产品,包括计算机程序或者指令,其特征在于,所述计算机程序或者所述指令被处理器执行时,实现权利要求1至11中任一项所述的模型训练方法。

技术总结


本申请实施例公开了一种人工智能领域的模型训练方法及相关装置,其中该方法包括:获取技巧样本数据;技巧样本数据中包括具有对应关系的游戏状态数据序列和操作数据序列,游戏状态数据序列和操作数据序列对应目标帧长度;采用监督学习算法,根据技巧样本数据,联合训练变分自编码器和先验策略模型;变分自编码器包括编码器和解码器,编码器用于将操作数据序列映射为技巧向量,解码器用于根据技巧向量重建操作数据序列;先验策略模型用于根据游戏状态数据序列确定技巧向量;采用强化学习算法,训练根据先验策略模型和解码器构建的游戏AI模型。该方法能够减少游戏AI模型训练所需的训练数据,并且减少游戏AI模型训练所需投入的人力。力。力。


技术研发人员:

姜允执 黄新昊 万乐 徐志鹏 顾子卉 谢宇轩 刘林韬 郑规 殷俊 邓大付 欧阳卓能 金鼎健 廖明翔 刘总波 梁宇宁 官冰权 杨益浩 申家忠 刘思亮 高丽娜 漆舒汉

受保护的技术使用者:

腾讯科技(深圳)有限公司

技术研发日:

2022.11.08

技术公布日:

2022/12/19

本文发布于:2024-09-23 18:30:23,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/40173.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   模型   所述   序列
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议