CN111569429A - 模型训练方法、模型使用方法、计算机设备及存储介质 - Google Patents
模型训练方法、模型使用方法、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111569429A CN111569429A CN202010394529.1A CN202010394529A CN111569429A CN 111569429 A CN111569429 A CN 111569429A CN 202010394529 A CN202010394529 A CN 202010394529A CN 111569429 A CN111569429 A CN 111569429A
- Authority
- CN
- China
- Prior art keywords
- model
- information
- participant
- target
- value
- 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.)
- Granted
Links
- 238000012549 training Methods 0.000 title claims abstract description 115
- 238000000034 method Methods 0.000 title claims abstract description 83
- 238000003860 storage Methods 0.000 title claims abstract description 23
- 238000009826 distribution Methods 0.000 claims description 134
- 238000011156 evaluation Methods 0.000 claims description 42
- 238000012545 processing Methods 0.000 claims description 21
- 230000006870 function Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 15
- 238000000605 extraction Methods 0.000 claims description 15
- 238000012216 screening Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 230000001976 improved effect Effects 0.000 abstract description 11
- 238000013473 artificial intelligence Methods 0.000 description 44
- 238000005516 engineering process Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 11
- 238000010801 machine learning Methods 0.000 description 7
- 230000002787 reinforcement Effects 0.000 description 7
- 230000006399 behavior Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 6
- 241000282414 Homo sapiens Species 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 4
- 102000004169 proteins and genes Human genes 0.000 description 4
- 108090000623 proteins and genes Proteins 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- HVCNNTAUBZIYCG-UHFFFAOYSA-N ethyl 2-[4-[(6-chloro-1,3-benzothiazol-2-yl)oxy]phenoxy]propanoate Chemical compound C1=CC(OC(C)C(=O)OCC)=CC=C1OC1=NC2=CC=C(Cl)C=C2S1 HVCNNTAUBZIYCG-UHFFFAOYSA-N 0.000 description 2
- 230000005284 excitation Effects 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 235000015842 Hesperis Nutrition 0.000 description 1
- 235000012633 Iberis amara Nutrition 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000012857 repacking Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000008093 supporting effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
Images
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/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/67—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
-
- 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/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/6027—Methods for processing data by generating or executing the game program using adaptive systems learning from user actions, e.g. for skill level adjustment
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请实施例公开了一种模型训练方法、计算机设备及存储介质,本申请实施例获取样本数据,根据所述样本数据获取已知信息和私有信息;根据所述已知信息生成第一类图像特征和向量特征,以及根据所述已知信息和私有信息生成第二类图像特征;通过预设的第一模型基于所述第一类图像特征和向量特征,获取目标参与方执行策略的第一预测值;通过预设的第二模型基于所述第二类图像特征和向量特征,获取所述目标参与方执行策略的第二预测值;基于所述第一预测值和第二预测值对所述第一模型进行训练,得到训练后的第一模型。提高了模型训练的可靠性和准确性。
Description
技术领域
本申请涉及数据处理技术领域,具体涉及一种模型训练方法、计算机设备及存储介质。
背景技术
随着人工智能(Artificial Intelligence,AI)技术的快速发展,人工智能技术被广泛的应用于各个领域,例如,在游戏娱乐领域,通过人工智能技术可以实现棋牌类游戏中虚拟用户与真人之间的对局,且可以战胜最顶级的职业选手。而棋牌类游戏,经常是多人参与,游戏参与方之间的手中棋牌信息是互不知晓的,因此,研发应用于牌类游戏的AI模型具有更大的挑战。目前,主要基于深度神经网络(Deep Neural Network,DNN)和监督学习来实现AI模型。然而,基于DNN和监督学习实现AI模型,需要大量优质的样本数据进行训练,而样本数据的收集难度较高且耗时多,即使使用大量样本数据进行训练也无法保证AI模型的可靠性,以及DNN和监督学习是基于每一方的数据单独进行AI模型的训练,无法充分的利用数据,AI模型的准确性较差。
发明内容
本申请实施例提供一种模型训练方法、计算机设备及存储介质,可以提高对模型训练的可靠性和准确性。
第一方面,本申请实施例提供了一种模型训练方法,包括:
获取样本数据,根据所述样本数据获取已知信息和私有信息;
根据所述已知信息生成第一类图像特征和向量特征,以及根据所述已知信息和私有信息生成第二类图像特征;
通过预设的第一模型基于所述第一类图像特征和向量特征,获取目标参与方执行策略的第一预测值;
通过预设的第二模型基于所述第二类图像特征和向量特征,获取所述目标参与方执行策略的第二预测值;
基于所述第一预测值和第二预测值对所述第一模型进行训练,得到训练后的第一模型。
第二方面,本申请实施例还提供了一种模型使用方法,应用于服务器,所述模型为采用权利要求上述的模型训练方法进行训练得到的模型,并部署在所述服务器中;所述方法包括:
获取各个参与方的信息,根据所述各个参与方的信息生成目标类图像特征和目标向量特征;
通过所述训练后的第一模型,根据所述目标类图像特征和所述目标向量特征获取所述目标参与方执行策略的概率分布;
根据所述概率分布确定目标策略,控制所述目标参与方执行所述目标策略。
第三方面,本申请实施例还提供了一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时执行本申请实施例提供的任一种模型训练方法。
第四方面,本申请实施例还提供了一种存储介质,所述存储介质用于存储计算机程序,所述计算机程序被处理器加载,以执行本申请实施例提供的任一种模型训练方法。
本申请实施例可以获取样本数据,根据样本数据获取已知信息和私有信息,根据已知信息生成第一类图像特征和向量特征,以及根据已知信息和私有信息生成第二类图像特征;然后通过预设的第一模型基于第一类图像特征和向量特征,获取目标参与方执行策略的第一预测值,以及通过预设的第二模型基于第二类图像特征和向量特征,获取目标参与方执行策略的第二预测值;此时可以基于第一预测值和第二预测值对第一模型进行训练,得到训练后的第一模型。该方案可以通过第二模型基于私有信息得到的第二预测值,对第一模型进行训练,使得第一模型的第一预测值逼近第二模型的第二预测值,该私有信息能够大大加快模型的训练速度并提高性能,并且由于第二模型在基于私有信息的情况下得到的第二预测值相对准确,因此,可以训练第一模型的第一预测值越准,提高了对模型训练的可靠性和准确性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的模型训练方法的流程示意图;
图2是本申请实施例提供的模型训练架构的示意图;
图3是本申请实施例提供的模型训练过程中手牌信息已知的示意图;
图4是本申请实施例提供的类图像特征和向量特征的示意图;
图5是本申请实施例提供的基于类图像特征和向量特征对模型进行训练的示意图;
图6是本申请实施例提供的模型应用部署的示意图;
图7是本申请实施例提供的计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
本申请的实施例提供了一种模型训练方法、计算机设备及存储介质。其中,该模型训练方法可以应用于计算机设备中,该计算机设备可以包括智能手机、平板电脑、掌上电脑、笔记本电脑或者台式电脑等终端,该计算机设备还可以是服务器。
本申请实施例提供的模型训练方法涉及人工智能中的机器学习技术等技术,下面先对人工智能技术和机器学习技术进行说明。
人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、以及机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、以及算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、以及式教学习等技术。
请参阅图1,图1是本申请一实施例提供的模型训练方法的流程示意图。该模型训练方法可以包括步骤S101至步骤S105等,具体可以如下:
S101、获取样本数据,根据样本数据获取已知信息和私有信息。
其中,样本数据可以根据实际应用场景进行灵活设置,例如,对于斗地主应用场景,该样本数据可以是54张扑克牌分配给各个参与方进行博弈的相关信息,对于德州扑克和桥牌应用场景,该样本数据可以是从54张扑克牌中去掉大小王之后的52张扑克牌,分配给各个参与方进行博弈的相关信息,对于麻将应用场景,该样本数据可以是一副麻将牌分配给各个参与方进行博弈的相关信息。该样本数据可以是由人工收集得到,或者是由计算机设备自动生成。
例如,可以通过预设的人工智能模型自动生成样本数据,该预设的人工智能模型可以是神经网络模型或其他模型等,具体内容在此处不作限定。在需要训练预存的人工智能模型时,可以调用每个参与方各自对应的人工智能模型,控制每个参与方执行相应的样本生成操作,能够在样本生成操作结束后收集到样本数据,该样本数据包括参与结果信息、每个参与方的参与内容信息和角色信息。
具体地,可以基于预设的参与逻辑数据,给每个参与方分配角色信息和参与内容,并从参与逻辑数据中获取参与逻辑信息。其中,该参与逻辑数据包括参与方数量、角色参与信息、参与内容的分配策略和参与逻辑信息。参与逻辑数据用于确定参与方的参与逻辑、数量、角色参与信息和参与内容,参与逻辑信息用于确定参与方在参与样本生成操作过程中输出的参与内容之间的逻辑,该参与方内容的分配策略用于给参与方分配参与内容,参与逻辑数据可根据牌类游戏的类型进行设置,本申请对此不作具体限定。
例如,斗地主的参与逻辑数据包括的参与方数量为三个,即三个参与方,角色参与信息为三个参与方中的一个参与方的角色为地主,另外两个参与方的角色为农民;参与内容的分配策略为角色为地主的参与方的参与内容是随机的20张牌,角色为农民的参与方的参与内容是随机的17张牌,角色为地主的参与方先出完20张牌;参与逻辑信息包括下家出的牌与上家出的牌的类型相同,且下家出的牌大于上家出的牌,或者下家出的牌与上家出的牌的类型不同,且下家出的牌为4个相同的牌或为两个大小王牌,以及角色为地主的参与方取得胜利,而角色为农民的参与方先出完17张牌,则角色为农民的参与方取得胜利。
在需要训练预存的人工智能模型时,可以基于预设的参与逻辑数据,给每个参与方分配角色信息和参与内容,并从参与逻辑数据中获取参与逻辑信息。其中,参与逻辑信息包括取得胜利的确定条件。以斗地主为例,取得胜利的确定条件为:角色为地主的参与方先出完20张牌,则角色为地主的参与方取得胜利,而角色为农民的参与方先出完17张牌,则角色为农民的参与方取得胜利。
具体地,可以从预设的参与逻辑数据中获取参与方数量,并按照该参与方数量,创建对应数量的参与方,创建的参与方与一个人工智能模型对应;从该参与逻辑数据中获取角色参与信息,并按照该角色参与信息,随机的给每个参与方分配角色信息;从该参与逻辑数据中获取参与内容的分配策略,并按照该分配策略,给每个参与方分配参与内容。
以斗地主为例,可以创建三个参与方,给一个参与方分配地主角色,给另外两个参与方分配农民角色,给地主角色的参与方分配的参与内容为20张牌,且这20张牌为R222AAAKKK101099874433,底牌为R23,给两个农民角色的参与方分配的参与内容分别为17张牌,且这两个17张牌分别为B2AKQJJ101099874433,QQQJJ887766665555。
然后,根据参与逻辑信息和分配给每个参与方的参与内容和角色信息,调用每个参与方各自对应的人工智能模型,控制每个参与方执行相应的样本生成操作。
具体地,根据每个参与方的角色信息,确定每个参与方在首轮样本生成操作中的内容输出顺序,并按照每个参与方在首轮样本生成操作中的内容输出顺序,依次根据参与逻辑信息、每个参与方的参与内容和人工智能模型,控制每个参与方输出该参与内容中的部分参与内容;根据上一轮输出的部分参与内容,重新确定每个参与方在当前轮样本生成操作中的内容输出顺序,并更新每个参与方的参与内容;按照每个参与方在当前轮样本生成操作中的内容输出顺序,依次根据参与逻辑信息、每个参与方的更新后的参与内容和人工智能模型,控制每个参与方输出更新后的参与内容中的部分参与内容;重复上述两个步骤,直到其中一个参与方的参与内容已输出完时,完成对局,得到样本数据。
在一实施例中,可以按照每个参与方在首轮样本生成操作中的内容输出顺序,确定待输出内容的参与方;获取已输出的历史参与内容、上家参与方输出的部分参与内容、待输出内容的参与方的参与内容和角色信息;将已输出的历史参与内容、上家参与方输出的部分参与内容、待输出内容的参与方的参与内容和角色信息输入至该人工智能模型,得到若干待输出的部分参与内容的输出概率;根据参与逻辑信息和若干待输出的部分参与内容的输出概率,控制待输出内容的参与方输出对应的部分参与内容。
在一实施例中,可以根据每个待输出的部分参与内容的输出概率,对若干待输出的部分参与内容进行筛选,得到输出概率大于或等于概率阈值的待输出的部分参与对局内容,记为候选部分参与内容;从该参与逻辑信息中获取上家参与方输出的部分参与内容所属的第一类别标签以及从该参与逻辑信息中获取每个候选部分参与内容的第二类别标签;根据第一类别标签、每个第二类别标签和每个候选部分参与内容,控制待输出内容的参与方输出对应的部分参与内容。
在一实施例中,可以根据第一类别标签和每个第二类别标签,对每个候选部分参与内容进行筛选,经过筛选后的候选部分参与内容所属的第二类别标签与第一类别标签相同;将该输出概率最大的,且经过筛选后的候选部分参与内容作为目标部分参与内容,并控制待输出内容的参与方输出该目标部分参与内容。
以斗地主为例对上述样本生成操作进行解释说明,设地主角色的参与方A的参与内容为R222AAAKKK101099874433,地主角色上家的农民角色的参与方B的参与内容为B2AKQJJ101099874433,地主下家的农民角色的参与方C的参与内容为QQQJJ887766665555,则首轮的内容输出顺序为参与方A、参与方B和参与方C;因此,在首轮中,参与方A先输出内容,且输出的内容为“33”,则服务器将参与方A输出的内容“33”、参与方C的参与内容QQQJJ887766665555和角色信息输入至人工智能模型,可以得到待输出的内容为“55”、“66”、“77”、“88”、“JJ”、“QQ”、“6666”和“5555”的输出概率,并根据待输出的内容为“55”、“66”、“77”、“88”、“JJ”、“QQ”、“6666”和“5555”的输出概率和斗地主的参与逻辑信息,可以得到参与方C输出的内容为“77”,类似地,参与方B输出的内容为“99”,此时完成首轮样本生成操作。其中,该样本可以包括3组样本,即包括参与方A、参与方B、以及参与方C对应的输出内容和状态等信息,一组样本即为一个参与方对应的输出内容和状态等信息。
通过上一轮输出的内容可知,内容输出顺序仍为参与方A、参与方B和参与方C,且对局参与方A、参与方B和参与方C的参与内容更新为R222AAAKKK1010998744,B2AKQJJ1010874433和QQQJJ8866665555,可以将参与方A的参与内容R222AAAKKK1010998744、角色信息和参与方C输出的对局内容“99”输入至人工智能模型,可以得到待输出的内容为“1010”、“KK”、“AA”和“22”、的输出概率,根据待输出的内容为“1010”、“KK”、“AA”和“22”的输出概率和斗地主的参与逻辑信息,可以得到参与方A输出的内容为“1010”,类似地,参与方C输出的内容为“JJ”,参与方B输出的内容为空,此时完成第二轮样本生成操作。
通过上一轮输出的内容可知,内容输出顺序仍为参与方A、参与方B和参与方C,且参与方A、参与方B和参与方C的参与内容更新为R222AAAKKK8744、B2AKQJJ1010874433和QQQ8866665555,服务器将参与方C输出的内容“JJ”、参与方A的参与内容R222AAAKKK998744和角色信息输入至人工智能模型,可以得到待输出的内容为“KK”、“AA”、“22”和空的输出概率,根据待输出的内容为“KK”、“AA”、“22”和空的输出概率,可以得到参与方A输出的内容为空,此时完成第三轮样本生成操作。
通过上一轮输出的内容可知,内容输出顺序为参与方C、参与方B和参与方A,且参与方A、参与方B和参与方C的参与内容更新为R222AAAKKK8744、B2AKQJJ1010874433和QQQ8866665555,则将参与方A输出的内容、参与方C的参与内容QQQ8866665555和角色信息输入至人工智能模型,可以得到待输出的内容为“8”、“Q”、“QQ”、“88”“QQQ88”、“5555”和“6666”等的输出概率,根据待输出的内容为“8”、“Q”、“QQ”、“88”“QQQ88”、“5555”和“6666”等的输出概率,可以得到参与方C输出的内容为“QQQ88”,类似地,参与方B输出的内容为空,参与方A输出的内容为“KKK44”,类似地,下一轮中参与方C输出的内容为“5555”,参与方B输出的内容为空,参与方A输出的内容为空,此时,参与方C继续输出,且输出的内容为“6666”,参与方C的参与内容已全部输出完,因此,样本生成操作结束,参与结果信息为农民取得胜利。
当样本生成操作完成后,获取样本生成操作对应的样本数据,其中,样本数据包括参与结果信息、每个参与方的角色信息和参与内容信息等。
在执行相应的样本生成操作过程中,可以记录每个参与方的角色信息和参与内容信息,参与内容信息包括每轮参与方输出的部分参与内容和输出的部分参与内容的输出概率,在样本生成操作结束时,得到样本数据,并将样本数据存储在本地磁盘或者存储至云端服务器。
当样本生成操作完成后,可以获取该样本生成操作对应的样本数据,即从本地磁盘或者云端服务器中获取该样本生成操作对应的样本数据,其中,该样本数据包括参与结果信息、每个参与方的角色信息和参与内容信息。
需要说明的是,模型训练方法可以应用于棋牌类游戏的对局,包括但不限于斗地主游戏的对局和麻将游戏的对局,也可以为其余种类游戏的对局,本申请对此不作具体限定。
需要说明的是对于斗地主的应用场景,三方进行对弈时还有一个叫分阶段,以通过叫分阶段来确定三方的角色。以斗地主为例,先对游戏规则进行介绍,使用54张牌,10表示为“T”,小王表示为“B”,大王表示为“R”,其它牌使用其自身的符号表示。斗地主每局游戏中参与方分为3个角色,包括一个地主和两种农民的角色,一共有54张牌,牌型从小到大依次为{3,4,5,6,7,8,9,10,J,Q,K,A,2,B,R},其中R(Red jocker)为大王,B(Back jocker)为小王,从“3”到“2”的13种牌型每种牌有4张,R和B各一张。在对弈开始时,首先进行叫分,在叫分阶段,每个参与方都有机会成为地主,取决于参与方所叫的分数,分数最高的参与方为地主,并且会获得3张底牌,而另外两位参与方为农民,两位农民之间需要合作对抗地主。农民只要有一人牌出完则农民胜利,而地主需要独自对抗两位农民。叫分阶段从其中的一个参与方开始,分三个为止叫分,事实上斗地主可以有很多种不同的叫分规则,以最简单的一轮叫分为例,第一个参与方可以任意叫pass或1、2或3分,而第二个参与方叫分需要比第一个参与方高才为有效叫分,或者可以选择pass,当出现参与方叫3分时,该参与方则直接作为地主开始本轮对弈。如果一轮下来所有参与方都叫pass,则视为流局。还有一些规则允许两轮叫分以及加倍等,这里不再一一赘述。各个参与方的角色确定后,可以三方可以进行对弈,两位农民之间需要合作对抗地主,在对弈的过程中轮流出牌,角色为地主的参与方先出完20张牌,则角色为地主的参与方取得胜利,而角色为农民的参与方先出完17张牌,则角色为农民的参与方取得胜利。
例如,如图2所示,整个训练架构可以分为三个部分:样本数据生成模块Actor、数据存储模块(也可以称为Redis储存或Redis Server)、以及训练学习模块Learner。其中,Actor部分负责模拟程序自对弈(self-play),不同的模型分配不同的角色互相对弈,并产生训练所需要的样本数据。其中Actor执行操作可以包括:特征输入、输出的出牌标签、计算得分GAE以及计算最终得分Reward等强化学习训练所需信息。基于强化学习(Reinforcement Learning,RL)的打牌模型的单独训练需要提前决定好本局博弈的角色(也就是叫分),因此在对弈开局时需要一个固定的基于监督学习(Supervised Learning,SL)的叫分模块来模拟叫分过程。可以训练叫分模型作为对弈开局决定角色的模块。可以通过Redis Server来缓存样本数据,等待Learner的消费。Learner模块消费Redis Server储存的训练数据后会储存历史模型库,Actor每隔一段时间从历史模型库中拉取不同的三个历史打牌模型进行对战。在实际训练过程中,Actor会有大量的镜像示例(即多个打牌模型)运行自对弈进行样本的生产工作,同时Learner也会有多个worker进行训练任务,以此加速训练速度以及收敛速度。
其中,该叫分模型也可以称为角色竞选模型,该角色竞选模型所需的叫分特征用于表征游戏对局的角色竞选情况,需要说明的是,不同牌类游戏对应的角色竞选模型所需的叫分特征不同,该叫分特征可以包括类图像特征和向量特征等,以下以斗地主游戏为例,对角色竞选模型所需的类图像特征和向量特征进行解释说明。该类图像特征用于表征游戏参与玩家的持牌信息和未出现牌的信息,横轴为所有牌按从大到小排列,纵轴为每种牌的个数,即牌的个数为1,则纵轴为[1000],牌的个数为2,则纵轴为[1100],牌的个数为3,则纵轴为[1110],牌的个数为4,则纵轴为[1111];该向量特征为五维向量,且第一维表示上家游戏参与玩家的角色竞选参与情况,1表示参与角色竞选,0表示未参与角色竞选,第二维表示下家游戏参与玩家的角色竞选参与情况,1表示参与角色竞选,0表示未参与角色竞选,最后三维表示另一游戏参与玩家的角色竞选倍数,1倍表示为[1 0 0],2倍表示[0 1 0],3倍表示为[0 0 1]。
该角色竞选模型的具体训练过程可以为:每次从样本数据集中获取一组样本数据,其中,该样本数据包括类图像特征、向量特征和角色竞选标签;通过两层全连接层对向量特征进行处理,得到第一目标向量,并通过两层卷积层对所述类图像特征进行卷积处理,得到第二目标向量;通过向量拼接层对第一目标向量和第二目标向量进行拼接,得到拼接向量,并通过角色竞选层对拼接向量进行处理,得到角色竞选标签的输出概率;根据角色竞选标签以及输出概率计算当前损失值,并根据当前损失值确定角色竞选模型是否收敛;若角色竞选模型收敛,则停止模型训练,若角色竞选模型未收敛,则更新角色竞选模型的参数,并继续训练更新后的角色竞选模型。需要说明的是,参数的更新算法可基于实际情况进行设置,本申请对此不作具体限定,可选地,基于反向传播算法更新角色竞选模型的参数。
在一实施例中,确定角色竞选模型是否收敛的方式具体为:获取上一次模型训练时的损失值,记为历史损失值,并计算该历史损失值与当前损失值之间的差值;确定该历史损失值与当前损失值之间的差值是否小于该角色竞选模型对应的预设阈值,如果该历史损失值与当前损失值之间的差值小于该角色竞选模型对应的预设阈值,则确定该角色竞选模型收敛,反之如果该历史损失值与当前损失值之间的差值大于或等于该角色竞选模型对应的预设阈值,则确定该角色竞选模型未收敛。在得到训练后的角色竞选模型后,可以利用训练后的角色竞选模型进行叫分来决定每局游戏中各个参与方对应的角色信息,例如是地主还是农民。
在确定各个参与方对应的角色后,可以利用打牌模型(即上述的人工智能模型)按照上述方式进行对弈,即可生成并存储样本数据。
在得到样本数据后,可以根据样本数据获取已知信息和私有信息。
其中,私有信息可以是除目标参与方之外的其他参与方对应的未公布信息,例如,参与方A对应的未公布信息a和参与方B对应的未公布信息b,该私有信息可以称为完美信息。例如,以斗地主以及德州扑克等非完美信息博弈为例,该非完美信息博弈是指任意一个参与方在做决策时不知道其他参与方的信息,即在不完全信息博弈过程中,任意一个参与方在做决策时均无法获得其他参与方的信息,其他参与方的信息即为完美信息。以斗地主为例,对于地主来说,农民A的手牌信息和农民B的手牌信息是私有信息;对于农民A来说,地主的手牌信息和农民B的手牌信息是私有信息。
在一些实施方式中,根据样本数据获取已知信息可以包括:根据样本数据获取目标参与方的未公布信息、各个参与方的历史公布信息、以及除目标参与方之外的其他参与方的未公布信息,得到第一信息;根据样本数据获取各个参与方的角色信息、各个参与方的未公布信息数量、上一轮所公布信息的数量、当前轮是否存在比上一轮所公布的更大面值的信息、已公布的预设组合信息的数量、以及未公布的信息中可能出现的预设组合信息,得到第二信息;将第一信息和第二信息设置为已知信息。
其中,目标参与方的未公布信息是指对于目标参与方可见而对于其他参与方不可见的信息,各个参与方的历史公布信息是指各个参与方已经公开的所有参与方均可见的信息,各个参与方的角色信息是指在本局对弈中各个参与方所扮演的角色,上一轮所公布信息的数量是指上一轮参与方将自己手中信息公布的数量,当前轮是否存在比上一轮所公布的更大面值的信息是指当前轮的参与方手中是否存在比上一轮参与方所公布的更大面值的信息,预设组合信息可以是一次性可以同时公布的组合,例如炸弹或同花顺等。
以斗地主为例,可以获取目标参与方自己手牌信息作为目标参与方的未公布信息,获取各个参与方的历史出牌信息作为各个参与方的历史公布信息,以及获取尚未出现的牌的信息作为其他参与方的未公布信息,得到第一信息。获取三个参与方是农民或地主作为各个参与方的角色信息,获取三个参与方的手牌数量作为各个参与方的未公布信息数量,获取三个参与方叫地主的倍数,获取上家出牌的张数作为上一轮所公布信息的数量,获取当前即将出牌的参与方手中是否有比上家出牌更大的牌作为当前轮是否存在比上一轮所公布的更大面值的信息,获取目前出过的炸弹的数量作为已公布的预设组合信息的数量,以及获取未出现的牌可能出现的炸弹作为未公布的信息中可能出现的预设组合信息,得到第二信息,此时得到的第一信息和第二信息即为已知信息。
在一些实施方式中,根据样本数据获取私有信息可以包括:获取当前训练的步长,根据步长确定信息获取量;根据信息获取量获取除目标参与方之外的其他参与方对应的未公布信息中的全部或局部的私有信息。
为了提高模型训练的稳定性和可靠性,可以根据训练的步长逐渐抹去对手的信息训练一个在线时与游戏状态对齐的模型。具体地,由于对于不完美信息牌类对弈需要更加强大的推理能力,对弈中做出正确的决策将会十分依赖于对于对手信息的掌握,而这些信息通常显露在对手过去的行为之中。然而让模型去单纯地从对手过去的行为学习最佳策略相对来说是比较困难的,因为模型在训练的过程中始终不知道对方完整的信息,从而无法很好地理解对手在训练过程中所做出来的历史行为的意义。因此,本申请中,在训练的初始阶段,可以获取其他参与方对应的未公布信息中的全部信息作为私有信息进行模型训练,而随着训练次数的增加,可以逐步提取其他参与方对应的未公布信息中的部分信息作为私有信息进行模型训练。例如,可以获取当前训练的步长,该训练的步长可以是当前已经迭代训练的次数,然后可以根据训练的步长确定信息获取量,例如训练的步长越大,对应的信息获取量越少;训练的步长越小,对应的信息获取量越多,例如,如图3所示,以斗地主为例,开始地主可以获知某个农民手中的13张未出的手牌信息,在训练一段时间后,地主仅可以获知某个农民手中的3张未出的手牌信息,其中“1”表示可以获知的对方未公布的手牌信息。此时可以根据信息获取量获取除目标参与方之外的其他参与方对应的未公布信息中的全部或局部的私有信息。
例如,以斗地主为例,在模型训练的前100次,对于地主来说,可以获取农民A手上所有未出的手牌信息,以及农民B手上所有未出的手牌信息作为私有信息;当模型训练到100次时,对于地主来说,可以获取农民A手上未出手牌信息的一半,以及农民B手上未出手牌信息的一半作为私有信息;当模型训练到600次时,对于地主来说,可以获取农民A手上未出手牌信息的一张,以及农民B手上未出手牌信息的一张作为私有信息;当模型训练到1000次时,对于地主来说,可以获取农民A手上未出手牌信息的0张,以及农民B手上未出手牌信息的0张作为私有信息。
S102、根据已知信息生成第一类图像特征和向量特征,以及根据已知信息和私有信息生成第二类图像特征。
在得到样本数据对应的已知信息私有信息等信息后,可以对信息进行特征提取,得到类图像特征和向量特征。其中,该类图像特征可以用于表征每个参与方的参与内容信息等,类图像特征用来对牌的分布进行建模,不仅可以表达出牌型的分布,并且能表达出数量的分布情况,该向量特征可以用于表征每个参与方的参与结果信息和角色信息等。
在一些实施方式中,根据已知信息生成第一类图像特征和向量特征,以及根据已知信息和私有信息生成第二类图像特征可以包括:对第一信息进行特征提取,生成多通道的第一类图像特征;对第二信息进行特征转换,生成向量特征;对第一信息和私有信息进行特征提取,生成多通道的第二类图像特征。实现了将对手的手牌信息设置到特征中,训练出基于完美信息(即私有信息)的第二模型,例如,对于地主来说,两家农民的手牌会被提取到第二类图像特征中,这种丰富的完美信息能够大大加快模型的训练速度并提高性能。
具体地,从该样本数据中获取参与逻辑标签,并获取参与逻辑标签对应的特征提取策略;按照特征提取策略,对样本数据进行特征提取,得到类图像特征和向量特征。需要说明的是,该参与逻辑标签与特征提取策略具有对应关系,不同牌类游戏的参与逻辑标签不同,也即不同牌类游戏的特征提取策略不同,特征提取策略可基于实际情况进行设置,本申请对此不作具体限定。
在一实施例中,可以由执行样本生成操作的服务器对该样本数据进行特征提取,得到类图像特征和向量特征的提取,也可以由部署的另外一个服务器对该样本数据进行特征提取,得到类图像特征和向量特征的提取,本申请对此不作具体限定。
以下以斗地主为例对第一类图像特征、第二类图像特征和向量特征进行解释说明。该第一类图像特征的横轴为所有牌的字符按从大到小排列,该第一类图像特征和第二类图像特征的纵轴为每种牌对应字符的个数,如果字符的个数为1,则纵轴为[1000],如果字符的个数为2,则纵轴为[1100],如果字符的个数为3,则纵轴为[1110],如果字符的个数为4,则纵轴为[1111],该第一类图像特征可以包括11个通道,分别为目标参与方的未公布信息(1个通道)、各个参与方的历史公布信息(9个通道)、以及除目标参与方之外的其他参与方的未公布信息(1个通道),即目标参与方自己手牌信息(1个通道)、各个参与方的历史出牌信息(9个通道)、以及尚未出现的牌的信息(1个通道)。该第一类图像特征可以包括13个通道,分别为目标参与方的未公布信息(1个通道)、各个参与方的历史公布信息(9个通道)、除目标参与方之外的其他参与方的未公布信息(2个通道)、以及其他参与方的私有信息信息(2个通道),即目标参与方自己手牌信息(1个通道)、各个参与方的历史出牌信息(9个通道)、尚未出现的牌的信息(1个通道)、以及其他参与方各自对应的手牌信息(2个通道)。
该向量特征包括各个参与方的角色信息、各个参与方的未公布信息数量、上一轮所公布信息的数量、当前轮是否存在比上一轮所公布的更大面值的信息、已公布的预设组合信息的数量、以及未公布的信息中可能出现的预设组合信息,即三个参与方是农民或地主的角色信息(例如农民或地主)、三个参与方的手牌数量、三个参与方叫地主的倍数、上家出牌的张数、当前即将出牌的参与方手中是否有比上家出牌更大的牌(0或1)、目前出过的炸弹作(例如4张相同的牌)的数量(one-hot)、以及未出现的牌可能出现的炸弹(multi-hot)等。
例如,角色信息为地主,则角色信息编码为1,若角色信息为农民,则角色编码为0,手牌数量的编码处于00000(持0张牌)至10100(持20张牌)之间,参与结果信息为地主取得胜利,则编码为01,参与结果信息为农民取得胜利,则编码为11,上家参与方的出牌张数的编码处于00000(出0张牌)至10100(出20张牌)之间,当前即将出牌的参与方手中有比上家出牌更大的牌,则对应的编码为1,反之当前即将出牌的参与方手中是没有比上家出牌更大的牌,则对应的编码为0。
图4为本申请一实施例中类图像特征和向量特征的一示意图,如图4所示,该类图像特征包括13个通道,图4中上一轮出牌表示为22,目标参与方自己的手牌为RBAKKQQ73,图4中向量特征表示为当前参与方(即玩家)为地主,以及当前参与方共有9张手牌等。
S103、通过预设的第一模型基于第一类图像特征和向量特征,获取目标参与方执行策略的第一预测值。
在得到第一类图像特征、第二类图像特征和向量特征之后,可以基于预设的强化学习逻辑,根据第一类图像特征、第二类图像特征和向量特征,对第一模型进行训练更新。其中,强化学习逻辑可基于实际情况进行设置,本申请对此不作具体限定。
其中,第一模型的类型可以根据实际需要进行灵活设置,具体内容在此处不作限定,例如,第一模型可以包括残差网络、全连接网络以及两层全连接层(Fully Connected,FC),该全连接网络可以包括三层全连接层。残差网络用于处理类图像特征,全连接网络用于处理向量特征。第一模型结构设计的好处在于同时利用了卷积的感受野(发现顺子以及炸弹等组合)以及向量确定数值的优势,训练更加鲁棒的特征。
在一些实施方式中,通过预设的第一模型基于第一类图像特征和向量特征,获取目标参与方执行策略的第一预测值可以包括:将第一类图像特征输入第一模型的残差网络进行卷积操作,以及将向量特征输入第一模型的全连接网络进行处理;将第一模型的残差网络和全连接网络的输出结果进行拼接,得到第一拼接结果;通过第一模型的两层全连接层基于第一拼接结果,获取目标参与方的主公布信息的第一概率分布、附加信息的第二概率分布以及第一价值评估值,得到执行策略的第一预测值。
例如,如图5所示,首先可以将第一类图像特征(即图5中的类图像特征)输入第一模型的残差网络(ResNet)进行卷积操作,得到第一特征,以及将向量特征输入第一模型的全连接网络进行三层全连接层FC的处理,得到第二特征;将第一模型的残差网络输出的第一特征和全连接网络的输出第二特征进行拼接Concat,得到第一拼接结果。然后通过第一模型的两层全连接层FC基于第一拼接结果,获取目标参与方的主公布信息的第一概率分布(也可以称为主策略标签的概率分布)、附加信息的第二概率分布(也可以称为从策略标签的概率分布)以及第一价值评估值(也可以称为胜率),得到执行策略的第一预测值。其中,主公布信息的第一概率分布为主牌概率分布,附加信息的第二概率分布为带牌概率分布,第一价值评估值为Value,该Value用于表征目标参与方是赢还是输。以便根据主策略标签的概率分布、从策略标签的概率分布和胜率,对第一模型的参数进行更新。需要说明的是,第一模型参数的更新算法可基于实际情况进行设置,本申请对此不作具体限定,可选地,基于反向传播算法更新第一模型的参数。
需要说明的是,不同牌类游戏对应的模型所需的类图像特征和向量特征不同,不同牌类游戏对应的策略标签也不同,以下以斗地主游戏为例,对模型所需的类图像特征和向量特征以及策略标签进行解释说明。其中,该主策略标签为主牌标签,主牌标签包括但不限于单牌、单顺子、对子、双顺子、三张、三顺子、四张、火箭和要不起等各自对应的标签,该从策略标签为带牌标签,带牌标签包括但不限于单牌、两个单张、一个对子、两个对子和不带牌等对应的标签。
S104、通过预设的第二模型基于第二类图像特征和向量特征,获取目标参与方执行策略的第二预测值。
其中,第二模型的类型可以根据实际需要进行灵活设置,具体内容在此处不作限定,例如,第二模型可以包括残差网络、全连接网络以及两层全连接层,该全连接网络可以包括三层全连接层。残差网络用于处理类图像特征,全连接网络用于处理向量特征。
在一些实施方式中,通过预设的第二模型基于第二类图像特征和向量特征,获取目标参与方执行策略的第二预测值可以包括:将第二类图像特征输入第二模型的残差网络进行卷积操作,以及将向量特征输入第二模型的全连接网络进行处理;将第二模型的残差网络和全连接网络的输出结果进行拼接,得到第二拼接结果;通过第二模型的两层全连接层基于第二拼接结果,获取目标参与方的主公布信息的第三概率分布、附加信息的第四概率分布以及第二价值评估值,得到执行策略的第二预测值。
例如,如图5所示,首先可以将第二类图像特征(即图5中的类图像特征)输入第二模型的残差网络(ResNet)进行卷积操作,得到第三特征,以及将向量特征输入第二模型的全连接网络进行三层全连接层FC的处理,得到第四特征;将第二模型的残差网络输出的第三特征和全连接网络的输出第四特征进行拼接Concat,得到第二拼接结果。然后通过第二模型的两层全连接层FC基于第二拼接结果,获取目标参与方的主公布信息的第三概率分布(也可以称为主策略标签的概率分布)、附加信息的第四概率分布(也可以称为从策略标签的概率分布)以及第二价值评估值(也可以称为胜率),得到执行策略的第二预测值。其中,主公布信息的第三概率分布为主牌概率分布,附加信息的第四概率分布为带牌概率分布,第二价值评估值为Value,该Value用于表征目标参与方是赢还是输。
S105、基于第一预测值和第二预测值对第一模型进行训练,得到训练后的第一模型。
在得到第一预测值和第二预测值后,基于第一预测值和第二预测值对第一模型进行训练,得到训练后的第一模型。在训练第一模型的过程中,可以使用第二模型的概率分布作为真实值(ground truth,GT),让第一模型去学习第二模型的概率分布(例如出牌策略分布)。具体的,当第二模型的概率分布为δ,第一模型的概率分布为τ,可以使用smooth L1loss函数或L2损失函数计算τ相对于δ的距离,若两个预测值越接近,则损失值loss越小,从而使得第二模型的策略接近于第二模型的策略。以及,可以让第一模型所预测的value值去拟合第二模型所预测的value值,因为第二模型在完美信息的情况下预测的value值相对准确,而在强化学习中,往往value预测的越准,做出的策略行为也会更加有效,鲁棒。具体的,本实施例可以对第一模型和第二模型所输出的value计算一个L2 distance loss,使第一模型预测的value值逼近第二模型。
在一些实施方式中,基于第一预测值和第二预测值对非完美信息模型进行训练,得到训练后的非完美信息模型可以包括:获取目标参与方对应的奖励值,通过预设损失函数基于奖励值对第一价值评估值和第二价值评估值进行收敛;以及通过预设损失函数对第一概率分布和第三概率分布进行收敛,对第二概率分布和第四概率分布进行收敛,以调整第一模型的各个参数至合适值,得到训练后的第一模型。
为了提高训练的准确性,对模型的训练可以使用近端策略优化算法(ProximalPolicy Optimization,PPO),以及使用L2作为价值损失函数优化value值(即价值评估值,也可以称为胜率),从而产生更准确决策Policy。以斗地主为例,Policy分为主牌概率分布(即主公布信息的概率分布,也可以称为主策略标签的概率分布)与带牌概率分布(即附加信息的第四概率分布,也可以称为从策略标签的概率分布),训练的时候可以使用级联的方式先进行主牌的动作预测,根据主牌的动作进行带牌的动作预测,并同时使用Surrogateloss和entropy loss优化policy。此外,还可以加入监督损失函数,使用第二模型(也可以称为完美信息模型)的policy输出的概率值作为ground truth,与第一模型(也可以称为非完美信息模型)输出的概率值计算L2 distance,使第一模型的概率值接近第二模型的概率值,从而使第一模型的性能达到第二模型的性能(第一模型的性能非常出色)。
具体地,可以获取目标参与方对应的奖励值value,该奖励值value可以是真实值,例如,本局目标参与方赢还是输,通过预设损失函数基于奖励值对第一价值评估值和第二价值评估值进行收敛,该预设损失函数可以根据实际需要进行灵活设置,例如该预设损失函数可以是smooth L1 loss损失函数或L2distance loss损失函数,通过预设损失函数计算第一价值value1和评估值value之间的距离=|value1|2-|value|2,以及计算第一价值评估值value1和第二价值评估值value2之间的距离=|value1|2-|value2|2,该距离即为损失值,然后确定损失值是否小于或等于预设的损失阈值,如果该损失值小于或等于预设的损失阈值,则确定第一价值评估值和第二价值评估值收敛,若损失值大于预设的损失阈值,则确定第一价值评估值和第二价值评估值未收敛。需要说明的是,上述损失阈值可基于实际情况进行设置,本申请对此不作具体限定。
以及,通过预设损失函数对第一概率分布和第三概率分布进行收敛,对第二概率分布和第四概率分布进行收敛,例如,计算第一概率分布和第三概率分布之间的第一损失值,计算第二概率分布和第四概率之间的第二损失值,然后确定第一损失值是否小于或等于预设的损失阈值,如果该第一损失值小于或等于预设的损失阈值,则确定第一概率分布和第三概率分布收敛,若第一损失值大于预设的损失阈值,则确定第一概率分布和第三概率分布未收敛。如果该第二损失值小于或等于预设的损失阈值,则确定第二概率分布和第四概率分布收敛,若第二损失值大于预设的损失阈值,则确定第二概率分布和第四概率分布未收敛。
当第一价值评估值和第二价值评估值收敛、第一概率分布和第三概率分布收敛、以及第二概率分布和第四概率分布收敛时,可以调整第一模型的各个参数至合适值,得到训练后的第一模型。
在一些实施方式中,调整第一模型的各个参数至合适值,得到训练后的第一模型可以包括:调整第一模型的各个参数至合适值,得到候选第一模型;对候选第一模型进行测评,得到测评结果;当测评结果满足预设条件时,将第一模型作为训练后的第一模型;当测评结果未满足预设条件时,重新对候选第一模型进行训练,直至对候选第一模型的测评结果满足预设条件,得到训练后的第一模型。
为了提高模型的可靠性,可以对训练得到的候选第一模型进行测评,例如,对于训练得到的候选第一模型,可以利用候选第一模型与基础模型(如果是斗地主,则需要两个基础模型)对弈,该基础模型可以是基于监督学习训练的baseline模型、随机初始化模型或用户打牌的数据模型等,完成对弈后,得到对弈的主策略标签的概率分布、从策略标签的概率分布、以及价值评估值(即主牌概率分布、带牌概率分布和胜率)后,可以得到测评结果。例如,可以随机分配第一模型所在的位置,在与两个基础模型进行1000局对弈后,最终计算第一模型的平均概率分布和胜率,从而得到第一模型的性能。当测评结果满足预设条件时,将第一模型作为训练后的第一模型,该预设条件可以根据实际需要进行灵活设置,例如当1000局的测评结果中胜局大于900局,则确定满足预设条件。当测评结果未满足预设条件时,重新对候选第一模型进行训练,直至对候选第一模型的测评结果满足预设条件,得到训练后的第一模型,从而可以有效评测第一模型是否收敛。
以斗地主为例,本实施例通过深度强化学习(Deep Reinforcement Learning,DRL)来建模斗地主的打牌模型(即第一模型),特别是通过一种特殊的模型训练方法让第一模型在训练过程中能够对非完美信息有一定的敏感度,从而使斗地主AI在打牌时能够收益最大化,提升模型在打牌上的表现,该第一模型为通用的非完美信息博弈DRL建模得到的模型,减少甚至消除优化的模型对数据的依赖。对斗地主不完美信息的牌类游戏的打牌模块进行了强化学习的整体建模,并提出了多种利用完美信息训练非完美信息博弈AI的解决方案:1.将特征中加入对手的信息作为第二模型的特征输入;2.利用第二模型(即完美信息模型)作为第一模型(即非完美信息模型)的初始化,并逐渐抹去完美信息来训练第一模型;3.利用第二模型输出的策略概率分布指导第二模型的策略分布;4.利用第二模型输出的value指导第一模型学习输出的value。
在一些实施方式中,基于第一预测值和第二预测值对第一模型进行训练,得到训练后的第一模型之后,模型训练方法还可以包括:获取各个参与方的信息,根据各个参与方的信息生成目标类图像特征和目标向量特征;通过训练后的第一模型,根据目标类图像特征和目标向量特征获取目标参与方执行策略的概率分布;根据概率分布确定目标策略,控制目标参与方执行目标策略。
在得到训练后的第一模型后,可以利用训练后的第一模型进行博弈,即基于各个参与方的信息确定目标参与方的执行策略。例如,以斗地主为例,可以获取各个参与方的信息,各个参与方的信息可以包括目标参与方自己手牌信息、各个参与方的历史出牌信息、尚未出现的牌的信息、各个参与方是农民或地主的角色信息、各个参与方的手牌数量、各个参与方叫地主的倍数、上家出牌的张数、当前即将出牌的参与方手中是否有比上家出牌更大的牌、目前出过的炸弹的数量、以及获取未出现的牌可能出现的炸弹等。然后可以根据目标参与方自己手牌信息、各个参与方的历史出牌信息、尚未出现的牌的信息等信息生成目标类图像特征,以及根据各个参与方是农民或地主的角色信息、各个参与方的手牌数量、各个参与方叫地主的倍数、上家出牌的张数、当前即将出牌的参与方手中是否有比上家出牌更大的牌、目前出过的炸弹的数量、以及获取未出现的牌可能出现的炸弹等信息生成目标向量特征。此时可以通过训练后的第一模型,根据目标类图像特征和目标向量特征获取目标参与方执行策略的概率分布,即出牌的概率分布。
在一些实施方式中,通过训练后的第一模型,根据目标类图像特征和目标向量特征获取目标参与方执行策略的概率分布可以包括:将目标类图像特征输入训练后的第一模型的残差网络进行卷积操作,以及将目标向量特征输入训练后的第一模型的包含三层全连接层的全连接网络进行处理;将第一模型的残差网络和全连接网络的输出结果进行拼接,得到拼接结果;通过第一模型的的两层全连接层基于拼接结果,获取目标参与方执行策略的概率分布,该概率分布可以包括主信息概率分布和附加信息概率分布(例如主牌概率分布和带牌概率分布)。
此时可以根据概率分布确定目标策略,控制目标参与方执行目标策略。在一些实施方式中,根据概率分布确定目标策略,控制目标参与方执行目标策略可以包括:根据概率分布筛选出概率值最大的主信息概率值和附加信息概率值;根据主信息概率值和附加概率值,确定目标参与方未公布的信息中需要公布的信息,得到目标策略;控制目标参与方执行目标策略。
例如,以斗地主为例,可以从主牌概率分布中筛选出概率值最大的主牌概率值,从带牌概率分布中筛选出概率值最大的带牌概率值,将概率值最大的主牌概率值对应的出牌标签确定目标参与方需要出的主牌,以及将概率值最大的带牌概率值对应的出牌标签确定目标参与方需要出的带牌,其中,带牌概率值为0时,可以不出带牌,此时可以控制目标参与方执行按照确定的出牌策略进行出牌。
斗地主的应用场景可以包括:1.新手教学:指导新手玩家如何将自己手牌的牌力发挥到最大的价值,以赢取收益。2.掉线托管:在玩家掉线的情况下帮助玩家叫出合理的牌最大化本局对弈的收益或最小化本局对弈的损失,并且避免影响其他玩家的体验。3.人机挑战:对于高水平的玩家,接入高水平打牌的AI让玩家挑战得分,增加活跃度。在线接入方面,参与方会与前端服务器建立连接,同时AI服务也会与前端服务器连接,前端服务器将当前程序状态(比如当前参与方手牌,对方参与方手牌数量等信息)发送给AI服务器,AI服务器调用部署的模型预测当前这一帧应该打出什么牌,经过标签到具体牌的转换,预测结果发送给前端服务器具体执行。
例如,如图6所示,在AI训练模块以及agent在线部署模块中,AI训练模块主要功能是进行模型的自对弈训练以及评测,其训练过程为上述步骤S101至步骤S105等,在评测结果中取得最高分数的模型会部署至AI服务器进行实测。在得到训练后的第一模型后,可以按照以下步骤进行在线接入:a)前端服务器发送程序状态(是否在打牌阶段、玩家手牌、未见的牌、玩家位置以及历史出牌等);b)AI服务器判断是否为打牌阶段,如果是,则继续步骤c),如果不是,则进入叫分阶段,用SL叫分模型预测叫分结果后进入打牌阶段;c)根据程序状态信息提取特征输入;d)运行打牌模型(即第一模型)对当前状态(即游戏状态)出牌进行预测,输出的预测结果处理后回包给到前端服务器。
本实施例实现了基于第一模型的斗地主打牌行为可以准确模拟人类在斗地主中的出牌,并且能够超过人类水平,最大化对弈收益,同时使用类图像特征和向量特征对牌类对弈的特征进行有效的表达,以及使用完美信息训练基础模型来优化非完美信息模型的博弈性能,有效地解决了AI在非完美信息中由于信息不确定而导致训练困难的问题甚至不收敛的问题。
其中,训练后的第一模型可以部署在服务器中,即,一种模型使用方法,应用于服务器,该模型为采用上述的模型训练方法进行训练得到的模型(即训练后的第一模型),并部署在服务器中;模型使用方法可以包括:获取各个参与方的信息,根据各个参与方的信息生成目标类图像特征和目标向量特征;通过训练后的第一模型,根据目标类图像特征和目标向量特征获取目标参与方执行策略的概率分布;根据概率分布确定目标策略,控制目标参与方执行目标策略。其中,根据概率分布确定目标策略,控制目标参与方执行目标策略包括:根据概率分布筛选出概率值最大的主信息概率值和附加信息概率值;根据主信息概率值和附加概率值,确定目标参与方未公布的信息中需要公布的信息,得到目标策略;控制目标参与方执行目标策略。该模型具体使用方法与上述类似,在此处不做赘述。
以下将以模型应用为例进行详细说明,以下提到的模型即为训练后的第一模型。
首先,可以获取模型调用指令,其中,模型调用指令用于调用预存的训练后的第一模型。训练后的第一模型可以通过软件开发工具包(Software Development Kit,SDK)的形式存储在本地,或者训练后的第一模型存储在云端服务器,本申请对此不作具体限定。在一实施例中,该训练后的第一模型包括残差网络、包含三层全连接层的全连接网络、以及两层全连接层。
在一实施例中,接收终端设备发送的对局控制指令,并从该对局控制指令中获取对局控制标签;当对局控制标签位于预设的对局控制标签组时,根据对局控制标签,生成对应的模型调用指令。需要说明的是,该对局控制指令与真实用户的操作存在对应关系,也即对局控制指令中的对局控制标签与真实用户的操作存在对应关系,真实用户的不同操作对应不同的对局控制指令,该预设的对局控制标签组可基于实际情况进行设置,本申请对此不作具体限定。可选地,预设的对局控制标签组包括对局模式为人机对局模式对应的对局控制标签、对局模式为快速匹配模式对应的对局控制标签、在线托管对应的对局控制标签和离线托管对应的对局控制标签。
在一实施例中,在对局过程中,终端设备检测真实用户的对局状态是否为对局离线状态;当检测真实用户的对局状态为对局离线状态时,触发包含离线托管对应的对局控制标签的对局控制指令,并将该对局控制指令发送至服务器,由于该对局控制指令中的离线托管对应的对局控制标签位于预设的对局控制标签组,因此服务器生成对应的模型调用指令;当检测真实用户的对局状态为对局在线状态时,不触发对局控制指令。通过监测真实用户的对局状态,能够在真实用户离线时,调用训练后的第一模型进行对局托管,可以减少由于离线造成的损失,提高用户体验。
在一实施例中,在对局过程中,真实用户可以操作终端设备中的在线托管控件实现对局的在线托管,具体为:检测真实用户对在线托管控件的触发操作,并在检测到真实用户对在线托管控件的触发操作时,触发包含在线托管对应的对局控制标签的对局控制指令,并将该对局控制指令发送至服务器,由于该对局控制指令中的在线托管对应的对局控制标签位于预设的对局控制标签组,因此服务器生成对应的模型调用指令。通过在线托管功能,可以在真实用户忙碌时,调用训练后的第一模型进行对局托管,可以减少由于离线造成的损失以及其余真实用户的长时间等待,提高用户体验。
在一实施例中,在对局开始前,真实用户可以选择对局模式参与不同模式的对局,具体为:终端设备获取用户对模式选择界面的模式选择操作,并根据该模式选择操作,生成对应的对局控制指令,且将该对局控制指令发送至服务器,由于该对局控制指令中的对局模式对应的对局控制标签位于预设的对局控制标签组,因此服务器生成对应的模型调用指令,其中,该对局控制指令包括对局模式对应的对局控制标签,对局模式对应的对局控制标签包括人机对局模式对应的对局控制标签、快速匹配模式对应的对局控制标签和真人对局模式对应的对局控制标签。
在一实施例中,在对局开始后,终端设备检测真实用户是否处于直播状态,当检测到真实用户处于直播状态,则调用训练后的第一模型基于真实用户的对局参与内容和对局角色,确定当前对局的胜率,并显示胜率。使得直播的真实用户可以知晓当前对局的胜率,便于讲解,极大的提高了用户体验。
然后,可以根据模型调用指令,调用对应的训练后的第一模型作为对局虚拟用户,并获取对局虚拟用户的对局参与内容。其中,该模型调用指令携带有模型调用参数,该模型调用参数包括但不限于模型等级和模型数量,该模型等级用于表征训练后的第一模型的对局水平程度,模型等级越高的训练后的第一模型,则对局水平程度越高,模型等级越低的训练后的第一模型,则对局水平程度越低,该模型数量为训练后的第一模型调用的个数,对局虚拟用户输出的对局内容由服务器通过神经网络模型控制。
具体地,从模型调用指令中获取模型调用参数,其中,模型调用参数包括模型等级和模型数量,该模型等级用于表征训练后的第一模型的对局水平程度;根据模型调用参数,调用对应的训练后的第一模型作为对局虚拟用户,即按照该模型数量,调用对应数量的与该模型等级对应的训练后的第一模型作为对局虚拟用户。
在一实施例中,训练后的第一模型的调用方式可以为本地调用,也可以为云端远程调用,本地调用为将对局参与内容、对局角色和已输出的对局内容输入至从本地磁盘中的训练后的第一模型,得到待输出的对局内容以及待输出的对局内容的概率分布,并按照待输出的对局内容以及待输出的对局内容的概率分布输出对应的对局内容;云端远程调用为终端设备将对局参与内容、对局角色和已输出的对局内容打包请求发送至云端,由云端中的训练后的第一模型得到待输出的对局内容以及待输出的对局内容的概率分布,并将待输出的对局内容以及待输出的对局内容的概率分布返回给服务器,由服务器按照待输出的对局内容以及待输出的对局内容的概率分布输出对应的对局内容。
在一实施例中,该模型调用指令由基于包含离线或在线托管对应的对局控制标签的对局控制指令生成时,模型等级默认为最高等级,模型数量为1,因此,调用一个最高等级的训练后的第一模型作为对局虚拟用户,并获取托管前的真实用户的对局参与内容,且将托管前的真实用户的对局参与内容作为对局虚拟用户的对局参与内容。
在一实施例中,模型调用指令的生成方式具体为:当对局控制指令为包含人机对局模式对应的对局控制标签或快速匹配模式对应的对局控制标签的对局控制指令时,服务器根据该对局控制指令中的用户标识符,获取真实用户的对局等级和历史对局结果信息;根据该对局等级和历史对局结果信息,确定模型等级,并根据对局控制标签,确定模型数量;根据确定的模型等级和模型数量,生成对应的模型调用指令。
其中,模型等级的确定方式具体为:根据该历史对局结果信息,确定该真实用户的对局结果为对局失败的连续次数,记为连败次数,并确定该连败次数是否大于或等于预设的次数阈值,若该连败次数大于或等于预设的次数阈值,则用真实用户的对局等级减去至少一个等级,得到模型等级,若该连败次数小于预设的次数阈值,则用真实用户的对局等级加上至少一个等级,得到模型等级。通过在真实用户的对局失败的连续次数较多时,通过接入模型等级较低的训练后的第一模型与真实用户对局,可以提高用户体验,而通过接入模型等级较高的训练后的第一模型与真实用户对局,可以提高用户的对局水平,有效的提高用户体验。
其中,模型数量的确定方式为:获取对局控制标签与模型数量之间的映射关系表,并查询该映射关系表,获取该对局控制标签对应的模型数量。需要说明的是,上述对局控制标签与模型数量之间的映射关系表可基于实际情况进行设置,本申请对此不作具体限定。
在确定对局虚拟用户和对局虚拟用户的对局参与内容之后,可以基于所述训练后的第一模型,根据对局参与内容控制对局虚拟用户与真实用户进行对局操作。以下以牌类游戏中的斗地主为例,对控制对局虚拟用户与真实用户进行对局操作进行解释说明。
示例性的,对局虚拟用户A为地主,两个真实用户为农民,且对局参与内容为R222AAAKKK101099874433,位于对局虚拟用户A上家的真实用户B的对局参与内容为B2AKQJJ101099874433,位于对局虚拟用户A下家的真实用户C的对局参与内容为QQQJJ887766665555,地主先出牌,因此将对局参与内容R222AAAKKK101099874433经过特征提取后输入至训练后的第一模型,得到“33”、“44”、“KKK7”和“AAA8”等待输出的对局内容的概率分布,通过“33”、“44”、“KKK7”和“AAA8”等待输出的对局内容的概率分布,控制对局虚拟用户A输出的对局内容为“33”,而真实用户C输出的对局内容为“77”,真实用户B输出的对局内容为“99”;基于训练后的第一模型控制对局虚拟用户A输出的对局内容为“1010”,真实用户C输出的对局内容为“JJ”,真实用户B输出的对局内容为空;控制对局虚拟用户A输出的对局内容也为空,真实用户C继续输出的对局内容为“QQQ88”,真实用户B输出的对局内容为空;基于训练后的第一模型控制对局虚拟用户A输出的对局内容为“KKK44”,真实用户C继续输出的对局内容为“5555”,真实用户B输出的对局内容为空;控制对局虚拟用户A输出的对局内容为空,真实用户C继续输出的对局内容为“6666”,真实用户C的的对局参与内容已全部输出完,因此,对局结束,对局结果为农民取得对局胜利。
上述实施例提供的模型调用方法,通过获取到的模型调用指令调用对应的训练后的第一模型作为对局虚拟用户,并获取对局虚拟用户的对局参与内容,从而可以基于该训练后的第一模型,根据对局参与内容控制对局虚拟用户与真实用户进行对局操作,能够在需要调用训练后的第一模型与真实用户进行对局操作时,实现训练后的第一模型的快速调用,有效的提高用户体验。
本申请实施例可以获取样本数据,根据样本数据获取已知信息和私有信息,根据已知信息生成第一类图像特征和向量特征,以及根据已知信息和私有信息生成第二类图像特征;然后通过预设的第一模型基于第一类图像特征和向量特征,获取目标参与方执行策略的第一预测值,以及通过预设的第二模型基于第二类图像特征和向量特征,获取目标参与方执行策略的第二预测值;此时可以基于第一预测值和第二预测值对第一模型进行训练,得到训练后的第一模型。该方案可以通过第二模型基于私有信息得到的第二预测值,对第一模型进行训练,使得第一模型的第一预测值逼近第二模型的第二预测值,该私有信息能够大大加快模型的训练速度并提高性能,并且由于第二模型在基于私有信息的情况下得到的第二预测值相对准确,因此,可以训练第一模型的第一预测值越准,提高了对模型训练的可靠性和准确性。
请参阅图7,图7是本申请实施例提供的一种计算机设备的结构示意性框图。
如图7所示,该计算机设备300可以包括通过系统总线301连接的处理器302、存储器303和通信接口304,其中,存储器303可以包括非易失性计算机可读存储介质和内存储器。
非易失性计算机可读存储介质可存储计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行任意一种模型训练方法。
处理器302用于提供计算和控制能力,支撑整个计算机设备的运行。
存储器303为非易失性计算机可读存储介质中的计算机程序的运行提供环境,该计算机程序被处理器302执行时,可使得处理器302执行任意一种模型训练方法。
该通信接口304用于通信。本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备300的限定,具体的计算机设备300可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
应当理解的是,该总线301比如为I2C(Inter-integrated Circuit)总线,存储器303可以是Flash芯片、只读存储器(ROM,Read-Only Memory)磁盘、光盘、U盘或移动硬盘等,处理器302可以是中央处理单元(Central Processing Unit,CPU),该处理器302还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
其中,在一些实施例中,处理器302用于运行存储在存储器303中的计算机程序,以执行如下步骤:
获取样本数据,根据样本数据获取已知信息和私有信息;根据已知信息生成第一类图像特征和向量特征,以及根据已知信息和私有信息生成第二类图像特征;通过预设的第一模型基于第一类图像特征和向量特征,获取目标参与方执行策略的第一预测值;通过预设的第二模型基于第二类图像特征和向量特征,获取目标参与方执行策略的第二预测值;基于第一预测值和第二预测值对第一模型进行训练,得到训练后的第一模型。
在一些实施例中,在根据样本数据获取已知信息时,处理器302还执行:根据样本数据获取目标参与方的未公布信息、各个参与方的历史公布信息、以及除目标参与方之外的其他参与方的未公布信息,得到第一信息;根据样本数据获取各个参与方的角色信息、各个参与方的未公布信息数量、上一轮所公布信息的数量、当前轮是否存在比上一轮所公布的更大面值的信息、已公布的预设组合信息的数量、以及未公布的信息中可能出现的预设组合信息,得到第二信息;将第一信息和第二信息设置为已知信息。
在一些实施例中,在根据已知信息生成第一类图像特征和向量特征,以及根据已知信息和私有信息生成第二类图像特征时,处理器302还执行:对第一信息进行特征提取,生成多通道的第一类图像特征;对第二信息进行特征转换,生成向量特征;对第一信息和私有信息进行特征提取,生成多通道的第二类图像特征。
在一些实施例中,在根据样本数据获取私有信息时,处理器302还执行:获取当前训练的步长,根据步长确定信息获取量;根据信息获取量获取除目标参与方之外的其他参与方对应的未公布信息中的全部或局部的私有信息。
在一些实施例中,在通过预设的第一模型基于第一类图像特征和向量特征,获取目标参与方执行策略的第一预测值时,处理器302还执行:将第一类图像特征输入第一模型的残差网络进行卷积操作,以及将向量特征输入第一模型的全连接网络进行处理;将第一模型的残差网络和全连接网络的输出结果进行拼接,得到第一拼接结果;通过第一模型的两层全连接层基于第一拼接结果,获取目标参与方的主公布信息的第一概率分布、附加信息的第二概率分布以及第一价值评估值,得到执行策略的第一预测值。
在一些实施例中,在通过预设的第二模型基于第二类图像特征和向量特征,获取目标参与方执行策略的第二预测值时,处理器302还执行:将第二类图像特征输入第二模型的残差网络进行卷积操作,以及将向量特征输入第二模型的全连接网络进行处理;将第二模型的残差网络和全连接网络的输出结果进行拼接,得到第二拼接结果;通过第二模型的两层全连接层基于第二拼接结果,获取目标参与方的主公布信息的第三概率分布、附加信息的第四概率分布以及第二价值评估值,得到执行策略的第二预测值。
在一些实施例中,在基于第一预测值和第二预测值对第一模型进行训练,得到训练后的第一模型时,处理器302还执行:获取目标参与方对应的奖励值,通过预设损失函数基于奖励值对第一价值评估值和第二价值评估值进行收敛;以及通过预设损失函数对第一概率分布和第三概率分布进行收敛,对第二概率分布和第四概率分布进行收敛,以调整第一模型的各个参数至合适值,得到训练后的第一模型。
在一些实施例中,在调整第一模型的各个参数至合适值,得到训练后的第一模型时,处理器302还执行:调整第一模型的各个参数至合适值,得到候选第一模型;对候选第一模型进行测评,得到测评结果;当测评结果满足预设条件时,将第一模型作为训练后的第一模型;当测评结果未满足预设条件时,重新对候选第一模型进行训练,直至对候选第一模型的测评结果满足预设条件,得到训练后的第一模型。
在一些实施例中,在基于第一预测值和第二预测值对第一模型进行训练,得到训练后的第一模型之后,处理器302还执行:获取各个参与方的信息,根据各个参与方的信息生成目标类图像特征和目标向量特征;通过训练后的第一模型,根据目标类图像特征和目标向量特征获取目标参与方执行策略的概率分布;根据概率分布确定目标策略,控制目标参与方执行目标策略。
在一些实施例中,在根据概率分布确定目标策略,控制目标参与方执行目标策略时,处理器302还执行:根据概率分布筛选出概率值最大的主信息概率值和附加信息概率值;根据主信息概率值和附加概率值,确定目标参与方未公布的信息中需要公布的信息,得到目标策略;控制目标参与方执行目标策略。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对模型训练方法的详细描述,此处不再赘述。
本申请的实施例中还提供一种存储介质,该存储介质即为计算机可读存储介质,计算机可读存储介质存储有计算机程序,该计算机程序中包括程序指令,处理器执行程序指令,实现本申请实施例提供的任一项模型训练方法。例如,该计算机程序被处理器加载,可以执行如下步骤:
获取样本数据,根据样本数据获取已知信息和私有信息;根据已知信息生成第一类图像特征和向量特征,以及根据已知信息和私有信息生成第二类图像特征;通过预设的第一模型基于第一类图像特征和向量特征,获取目标参与方执行策略的第一预测值;通过预设的第二模型基于第二类图像特征和向量特征,获取目标参与方执行策略的第二预测值;基于第一预测值和第二预测值对第一模型进行训练,得到训练后的第一模型。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,计算机可读存储介质可以是前述实施例的计算机设备的内部存储单元,例如计算机设备的硬盘或内存。计算机可读存储介质也可以是计算机设备的外部存储设备,例如计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
由于该计算机可读存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种模型训练方法,因此,可以实现本申请实施例所提供的任一种模型训练方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。以上所述,仅是本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (13)
1.一种模型训练方法,其特征在于,包括:
获取样本数据,根据所述样本数据获取已知信息和私有信息;
根据所述已知信息生成第一类图像特征和向量特征,以及根据所述已知信息和私有信息生成第二类图像特征;
通过预设的第一模型基于所述第一类图像特征和向量特征,获取目标参与方执行策略的第一预测值;
通过预设的第二模型基于所述第二类图像特征和向量特征,获取所述目标参与方执行策略的第二预测值;
基于所述第一预测值和第二预测值对所述第一模型进行训练,得到训练后的第一模型。
2.根据权利要求1所述的模型训练方法,其特征在于,所述根据所述样本数据获取已知信息包括:
根据所述样本数据获取所述目标参与方的未公布信息、各个参与方的历史公布信息、以及除所述目标参与方之外的其他参与方的未公布信息,得到第一信息;
根据所述样本数据获取各个参与方的角色信息、各个参与方的未公布信息数量、上一轮所公布信息的数量、当前轮是否存在比上一轮所公布的更大面值的信息、已公布的预设组合信息的数量、以及未公布的信息中可能出现的预设组合信息,得到第二信息;
将所述第一信息和第二信息设置为已知信息。
3.根据权利要求2所述的模型训练方法,其特征在于,所述根据所述已知信息生成第一类图像特征和向量特征,以及根据所述已知信息和私有信息生成第二类图像特征包括:
对第一信息进行特征提取,生成多通道的第一类图像特征;
对所述第二信息进行特征转换,生成向量特征;
对第一信息和所述私有信息进行特征提取,生成多通道的第二类图像特征。
4.根据权利要求1所述的模型训练方法,其特征在于,所述根据所述样本数据获取私有信息包括:
获取当前训练的步长,根据所述步长确定信息获取量;
根据所述信息获取量获取除目标参与方之外的其他参与方对应的未公布信息中的全部或局部的私有信息。
5.根据权利要求1所述的模型训练方法,其特征在于,所述通过预设的第一模型基于所述第一类图像特征和向量特征,获取目标参与方执行策略的第一预测值包括:
将所述第一类图像特征输入所述第一模型的残差网络进行卷积操作,以及将所述向量特征输入所述第一模型的全连接网络进行处理;
将所述第一模型的残差网络和全连接网络的输出结果进行拼接,得到第一拼接结果;
通过所述第一模型的两层全连接层基于所述第一拼接结果,获取所述目标参与方的主公布信息的第一概率分布、附加信息的第二概率分布以及第一价值评估值,得到执行策略的第一预测值。
6.根据权利要求5所述的模型训练方法,其特征在于,所述通过预设的第二模型基于所述第二类图像特征和向量特征,获取所述目标参与方执行策略的第二预测值包括:
将所述第二类图像特征输入所述第二模型的残差网络进行卷积操作,以及将所述向量特征输入所述第二模型的全连接网络进行处理;
将所述第二模型的残差网络和全连接网络的输出结果进行拼接,得到第二拼接结果;
通过所述第二模型的两层全连接层基于所述第二拼接结果,获取所述目标参与方的主公布信息的第三概率分布、附加信息的第四概率分布以及第二价值评估值,得到执行策略的第二预测值。
7.根据权利要求6所述的模型训练方法,其特征在于,所述基于所述第一预测值和第二预测值对所述第一模型进行训练,得到训练后的第一模型包括:
获取所述目标参与方对应的奖励值,通过预设损失函数基于所述奖励值对所述第一价值评估值和所述第二价值评估值进行收敛;以及
通过所述预设损失函数对所述第一概率分布和所述第三概率分布进行收敛,对所述第二概率分布和所述第四概率分布进行收敛,以调整所述第一模型的各个参数至合适值,得到训练后的第一模型。
8.根据权利要求7所述的模型训练方法,其特征在于,所述调整所述第一模型的各个参数至合适值,得到训练后的第一模型包括:
调整所述第一模型的各个参数至合适值,得到候选第一模型;
对所述候选第一模型进行测评,得到测评结果;
当所述测评结果满足预设条件时,将所述第一模型作为训练后的第一模型;
当所述测评结果未满足预设条件时,重新对所述候选第一模型进行训练,直至对所述候选第一模型的测评结果满足预设条件,得到训练后的第一模型。
9.根据权利要求1至8任一项所述的模型训练方法,其特征在于,所述基于所述第一预测值和第二预测值对所述第一模型进行训练,得到训练后的第一模型之后,所述模型训练方法还包括:
获取各个参与方的信息,根据所述各个参与方的信息生成目标类图像特征和目标向量特征;
通过所述训练后的第一模型,根据所述目标类图像特征和所述目标向量特征获取所述目标参与方执行策略的概率分布;
根据所述概率分布确定目标策略,控制所述目标参与方执行所述目标策略。
10.根据权利要求9所述的模型训练方法,其特征在于,所述根据所述概率分布确定目标策略,控制所述目标参与方执行所述目标策略包括:
根据所述概率分布筛选出概率值最大的主信息概率值和附加信息概率值;
根据所述主信息概率值和附加概率值,确定所述目标参与方未公布的信息中需要公布的信息,得到目标策略;
控制所述目标参与方执行所述目标策略。
11.一种模型使用方法,其特征在于,应用于服务器,所述模型为采用权利要求1至8任一项所述的模型训练方法进行训练得到的模型,并部署在所述服务器中;所述方法包括:
获取各个参与方的信息,根据所述各个参与方的信息生成目标类图像特征和目标向量特征;
通过所述训练后的第一模型,根据所述目标类图像特征和所述目标向量特征获取所述目标参与方执行策略的概率分布;
根据所述概率分布确定目标策略,控制所述目标参与方执行所述目标策略。
12.一种计算机设备,其特征在于,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时执行如权利要求1至10任一项所述的模型训练方法,或者执行如权利要求11所述的模型使用方法。
13.一种存储介质,其特征在于,所述存储介质用于存储计算机程序,所述计算机程序被处理器加载以执行权利要求1至10任一项所述的模型训练方法,或者执行如权利要求11所述的模型使用方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010394529.1A CN111569429B (zh) | 2020-05-11 | 2020-05-11 | 模型训练方法、模型使用方法、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010394529.1A CN111569429B (zh) | 2020-05-11 | 2020-05-11 | 模型训练方法、模型使用方法、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111569429A true CN111569429A (zh) | 2020-08-25 |
CN111569429B CN111569429B (zh) | 2024-02-27 |
Family
ID=72115325
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010394529.1A Active CN111569429B (zh) | 2020-05-11 | 2020-05-11 | 模型训练方法、模型使用方法、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111569429B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112016704A (zh) * | 2020-10-30 | 2020-12-01 | 超参数科技(深圳)有限公司 | Ai模型训练方法、模型使用方法、计算机设备及存储介质 |
CN112070542A (zh) * | 2020-09-09 | 2020-12-11 | 深圳前海微众银行股份有限公司 | 信息转化率预测方法、装置、设备及可读存储介质 |
CN112274935A (zh) * | 2020-11-20 | 2021-01-29 | 超参数科技(深圳)有限公司 | Ai模型训练方法、使用方法、计算机设备及存储介质 |
CN113672252A (zh) * | 2021-07-23 | 2021-11-19 | 浙江大华技术股份有限公司 | 模型升级方法、视频监控系统、电子设备和可读存储介质 |
CN114995580A (zh) * | 2022-06-27 | 2022-09-02 | 长江师范学院 | 一种光伏系统最大功率点追踪方法及系统 |
WO2023024920A1 (zh) * | 2021-08-24 | 2023-03-02 | 华为云计算技术有限公司 | 模型训练方法、系统、集群及介质 |
CN117852071A (zh) * | 2023-12-01 | 2024-04-09 | 羚羊工业互联网股份有限公司 | 基于大模型的隐私保护方法及相关装置、设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090254971A1 (en) * | 1999-10-27 | 2009-10-08 | Pinpoint, Incorporated | Secure data interchange |
CN110414609A (zh) * | 2019-07-31 | 2019-11-05 | 腾讯科技(深圳)有限公司 | 基于不完全信息博弈的对象确定方法及装置 |
CN110841295A (zh) * | 2019-11-07 | 2020-02-28 | 腾讯科技(深圳)有限公司 | 一种基于人工智能的数据处理方法和相关装置 |
-
2020
- 2020-05-11 CN CN202010394529.1A patent/CN111569429B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090254971A1 (en) * | 1999-10-27 | 2009-10-08 | Pinpoint, Incorporated | Secure data interchange |
CN110414609A (zh) * | 2019-07-31 | 2019-11-05 | 腾讯科技(深圳)有限公司 | 基于不完全信息博弈的对象确定方法及装置 |
CN110841295A (zh) * | 2019-11-07 | 2020-02-28 | 腾讯科技(深圳)有限公司 | 一种基于人工智能的数据处理方法和相关装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112070542A (zh) * | 2020-09-09 | 2020-12-11 | 深圳前海微众银行股份有限公司 | 信息转化率预测方法、装置、设备及可读存储介质 |
CN112070542B (zh) * | 2020-09-09 | 2024-07-12 | 深圳前海微众银行股份有限公司 | 信息转化率预测方法、装置、设备及可读存储介质 |
CN112016704A (zh) * | 2020-10-30 | 2020-12-01 | 超参数科技(深圳)有限公司 | Ai模型训练方法、模型使用方法、计算机设备及存储介质 |
CN112274935A (zh) * | 2020-11-20 | 2021-01-29 | 超参数科技(深圳)有限公司 | Ai模型训练方法、使用方法、计算机设备及存储介质 |
CN112274935B (zh) * | 2020-11-20 | 2024-01-23 | 超参数科技(深圳)有限公司 | Ai模型训练方法、使用方法、计算机设备及存储介质 |
CN113672252A (zh) * | 2021-07-23 | 2021-11-19 | 浙江大华技术股份有限公司 | 模型升级方法、视频监控系统、电子设备和可读存储介质 |
WO2023024920A1 (zh) * | 2021-08-24 | 2023-03-02 | 华为云计算技术有限公司 | 模型训练方法、系统、集群及介质 |
CN114995580A (zh) * | 2022-06-27 | 2022-09-02 | 长江师范学院 | 一种光伏系统最大功率点追踪方法及系统 |
CN117852071A (zh) * | 2023-12-01 | 2024-04-09 | 羚羊工业互联网股份有限公司 | 基于大模型的隐私保护方法及相关装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111569429B (zh) | 2024-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111569429A (zh) | 模型训练方法、模型使用方法、计算机设备及存储介质 | |
CN107970608B (zh) | 关卡游戏的设置方法和装置、存储介质、电子装置 | |
CN110443284B (zh) | 人工智能ai模型的训练方法、调用方法、服务器及可读存储介质 | |
US7636701B2 (en) | Query controlled behavior models as components of intelligent agents | |
JP2024026285A (ja) | クラウドゲーミングネットワークを使用した人工知能(ai)モデルの訓練 | |
CN112016704B (zh) | Ai模型训练方法、模型使用方法、计算机设备及存储介质 | |
CN110052031A (zh) | 玩家的模仿方法、装置及可读存储介质 | |
CN111738294B (zh) | Ai模型的训练方法、使用方法、计算机设备及存储介质 | |
CN111282267A (zh) | 信息处理方法、装置、介质及电子设备 | |
CN109513215A (zh) | 一种对象匹配方法、模型训练方法以及服务器 | |
CN110782004B (zh) | 模型训练方法、模型调用方法、设备及可读存储介质 | |
CN109847367A (zh) | 一种游戏胜率的预测方法、模型生成方法和装置 | |
CN109718558B (zh) | 游戏信息的确定方法和装置、存储介质、电子装置 | |
US20200324206A1 (en) | Method and system for assisting game-play of a user using artificial intelligence (ai) | |
CN110639208B (zh) | 交互式任务的控制方法、装置、存储介质和计算机设备 | |
CN114048834B (zh) | 基于事后回顾和渐进式扩展的持续强化学习非完全信息博弈方法及装置 | |
CN112704882B (zh) | 基于模型的棋牌游戏策略更新的方法、系统、介质及装置 | |
CN111494959A (zh) | 游戏操控方法、装置、电子设备及计算机可读存储介质 | |
Piette et al. | General board game concepts | |
CN110598853B (zh) | 一种模型训练的方法、信息处理的方法以及相关装置 | |
CN114404975A (zh) | 决策模型的训练方法、装置、设备、存储介质及程序产品 | |
CN112274935A (zh) | Ai模型训练方法、使用方法、计算机设备及存储介质 | |
CN116570929A (zh) | 游戏智能体确定、游戏运行方法、装置、介质和电子设备 | |
US20030199319A1 (en) | Method and system for enhanced role playing and computer-user interaction | |
CN114870403A (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 |