CN114681924A - 虚拟对象的推荐方法、装置和电子设备 - Google Patents
虚拟对象的推荐方法、装置和电子设备 Download PDFInfo
- Publication number
- CN114681924A CN114681924A CN202210208284.8A CN202210208284A CN114681924A CN 114681924 A CN114681924 A CN 114681924A CN 202210208284 A CN202210208284 A CN 202210208284A CN 114681924 A CN114681924 A CN 114681924A
- Authority
- CN
- China
- Prior art keywords
- virtual object
- target
- virtual
- recommended
- target account
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
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/70—Game security or game management aspects
- A63F13/79—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
-
- 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/80—Special adaptations for executing a specific game genre or game mode
- A63F13/822—Strategy games; Role-playing games
-
- 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/048—Activation functions
-
- 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
-
- 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/80—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 specially adapted for executing a specific type of game
- A63F2300/807—Role playing or strategy games
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Business, Economics & Management (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种虚拟对象的推荐方法、装置和电子设备,将目标游戏对局的当前组队中已选择的第一虚拟对象的对象编码输入至预先训练完成的推荐网络模型,输出备选虚拟对象的初始推荐分数;其中的推荐网络模型包括嵌入层;根据初始推荐分数、目标账号的历史战斗场次和目标账号针对备选虚拟对象的熟练度,从备选虚拟对象中为目标账号推荐目标虚拟对象。其中的嵌入层,能够根据映射的虚拟对象的属性特征,确定备选虚拟对象在当前组队中被推荐的概率信息,根据目标账号针对虚拟对象的历史战斗场次和熟悉度,确定与第一虚拟对象最为契合的目标虚拟对象,提高了当前组队多样性和合理性,以及当前组队在对局中的胜率,进而提高了用户游戏的体验感。
Description
技术领域
本发明涉及游戏技术领域,尤其是涉及一种虚拟对象的推荐方法、装置和电子设备。
背景技术
游戏阵容实时推荐通常是指,在需要搭配阵容进行战斗的游戏中进行阵容的推荐与搭配,考虑同队中虚拟对象的配合,提升队伍的合理性,增强玩家的游戏体验。在多人在线战术竞技游戏中,体现在为组队队友推荐虚拟对象,选择合理阵容;在卡牌收集游戏中,体现在为卡组的选择和搭配推荐。相关技术中,在多人在线战术竞技游戏中,每个虚拟对象都标注有标签,通常根据标签和玩家对英雄的熟练度,为组队队伍推荐合理的阵容;但是,标签和熟练度难以全面的表征虚拟对象的属性特征,推荐的阵容可能不合理,影响队伍的胜率。在卡牌收集游戏中,通常是根据预先设置好的成套卡组攻略,为玩家推荐合理的阵容。该种方式推荐的阵容相对固化,缺乏多样性,玩家游戏体验感不佳。
发明内容
有鉴于此,本发明的目的在于提供一种虚拟对象的推荐方法、装置和电子设备,以提高推荐对象的多样性和合理性,提高组队在对局中的胜率,进而提高用户游戏的体验感。
第一方面,本发明实施例提供了一种虚拟对象的推荐方法,该方法包括:获取目标游戏对局的当前组队中已选择的第一虚拟对象;其中,第一虚拟对象至少包括两个;将第一虚拟对象的对象编码输入至预先训练完成的推荐网络模型,输出目标游戏对局中备选虚拟对象的初始推荐分数;其中,推荐网络模型包括嵌入层,嵌入层用于基于第一虚拟对象的属性特征,以及备选虚拟对象的属性特征,确定备选虚拟对象在当前组队中被推荐的概率信息;根据备选虚拟对象的初始推荐分数、目标账号的历史战斗场次、以及目标账号针对备选虚拟对象的熟练度,从备选虚拟对象中为目标账号推荐目标虚拟对象;其中,目标账号为当前组队的账号中未选择虚拟对象的账号。
进一步的,将第一虚拟对象的对象编码输入至预先训练完成的推荐网络模型,输出目标游戏对局中备选虚拟对象的初始推荐分数的步骤,包括:将第一虚拟对象的对象编码输入至嵌入层,以使嵌入层根据映射的虚拟对象的属性特征,输出备选虚拟对象的第一特征向量;其中,备选虚拟对象的第一特征向量包含备选虚拟对象在当前组队中被推荐的概率信息;将第一特征向量输入至预先训练完成的推荐网络模型的隐藏层,以使隐藏层输出备选虚拟对象的第二特征向量;将第二特征向量输入至预先训练完成的推荐网络模型的激活函数,以使激活函数输出备选虚拟对象的初始推荐分数。
进一步的,推荐网络模型通过下述方式训练得到:从目标游戏的历史对战数据中,获取胜利阵容中包括的第二虚拟对象,同时随机获取第一预设数量的第三虚拟对象;其中,第二虚拟对象携带有第一标识,用于指示第二虚拟对象为训练正样本,第三虚拟对象携带有第二标识,用于指示第三虚拟对象为训练负样本;根据训练正样本和训练负样本,更新推荐网络模型的模型参数,以使嵌入层学习胜利阵容中包括的第二虚拟对象的属性特征,得到训练完成的推荐网络模型。
进一步的,根据训练正样本和训练负样本,更新推荐网络模型的模型参数的步骤,包括:将训练正样本输入至推荐网络模型,计算训练正样本的第一损失值;将训练负样本输入至推荐网络模型,计算训练负样本的第二损失值;基于第一损失值与第二损失值之和,通过反向梯度传播更新推荐网络模型的模型参数。
进一步的,将训练正样本输入至推荐网络模型,计算训练正样本的第一损失值的步骤,包括:将第二虚拟对象中第一预设数量的虚拟对象的对象编码,输入至推荐网络模型,输出预测虚拟对象;根据预测虚拟对象和第二虚拟对象中除第一预设数量的虚拟对象之外的标准虚拟对象,计算预测虚拟对象的第一损失值。
进一步的,将训练负样本输入至推荐网络模型,计算训练负样本的第二损失值的步骤,包括:将第三虚拟对象的对象编码,输入至推荐网络模型的嵌入层,得到第三虚拟对象的特征向量;通过预设的辅助分支,计算第三虚拟对象的特征向量之间的乘积值,将乘积值之和,确定为第二损失值。
进一步的,根据备选虚拟对象的初始推荐分数、目标账号的历史战斗场次、以及目标账号针对备选虚拟对象的熟练度,从备选虚拟对象中为目标账号推荐目标虚拟对象的步骤,包括:从历史战斗场次中,获取预设场次或预设时间内目标账户针对每个虚拟对象的目标战斗场次;根据初始推荐分数,目标战斗场次,以及目标账号针对虚拟对象的熟练度,为目标账号推荐目标虚拟对象。
进一步的,根据初始推荐分数,目标战斗场次,以及目标账号针对虚拟对象的熟练度,为目标账号推荐目标虚拟对象的步骤,包括:针对每个虚拟对象,按照目标账号针对该虚拟对象的目标战斗场次和熟练度对该虚拟对象的初始推荐分数进行加权计算,得到目标游戏对局中备选虚拟对象的目标推荐分数;将备选虚拟对象中目标账号无法选择的虚拟对象删除,得到针对目标账号的待推荐的备选虚拟对象的目标推荐分数;根据目标推荐分数,以及目标账号预先指定的分路,从待推荐的备选虚拟对象中为目标账号推荐目标虚拟对象。
进一步的,根据目标推荐分数,以及目标账号预先指定的分路,从待推荐的备选虚拟对象中为目标账号推荐目标虚拟对象的步骤之后,方法还包括:从待推荐的备选虚拟对象中获取满足预设条件的第四虚拟对象,将第四虚拟对象确定为目标虚拟对象;其中,预设条件包括:目标账户针对虚拟对象的熟练度低于第一预设阈值,且虚拟对象的推荐分数高于第二预设阈值。
第二方面本发明实施例提供了一种虚拟对象的推荐装置,装置包括:获取模块,用于获取目标游戏对局的当前组队中已选择的第一虚拟对象;其中,第一虚拟对象至少包括两个;输出模块,用于将第一虚拟对象的对象编码输入至预先训练完成的推荐网络模型,输出目标游戏对局中备选虚拟对象的初始推荐分数;其中,推荐网络模型包括嵌入层,嵌入层用于基于第一虚拟对象的属性特征,以及备选虚拟对象的属性特征,确定备选虚拟对象在当前组队中被推荐的概率信息;推荐模块,用于根据备选虚拟对象的初始推荐分数、目标账号的历史战斗场次、以及目标账号针对备选虚拟对象的熟练度,从备选虚拟对象中为目标账号推荐目标虚拟对象;其中,目标账号为当前组队的账号中未选择虚拟对象的账号。
第三方面本发明实施例提供了一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现第一方面任一项的虚拟对象的推荐方法。
第四方面本发明实施例提供了一种机器可读存储介质,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现第一方面任一项的虚拟对象的推荐方法。
本发明实施例带来了以下有益效果:
本发明提供了一种虚拟对象的推荐方法、装置和电子设备,将目标游戏对局的当前组队中已选择的第一虚拟对象的对象编码输入至预先训练完成的推荐网络模型,输出目标游戏对局中备选虚拟对象的初始推荐分数;其中的推荐网络模型包括嵌入层;根据初始推荐分数、目标账号的历史战斗场次和目标账号针对备选虚拟对象的熟练度,从备选虚拟对象中为目标账号推荐目标虚拟对象。其中的嵌入层,能够根据映射的虚拟对象的属性特征,确定备选虚拟对象在当前组队中被推荐的概率信息,根据目标账号针对虚拟对象的历史战斗场次和熟悉度,确定与第一虚拟对象最为契合的目标虚拟对象,提高了当前组队多样性和合理性,以及当前组队在对局中的胜率,进而提高了用户游戏的体验感。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种虚拟对象的推荐方法的流程图;
图2为本发明实施例提供的一种虚拟对象的推荐方法中推荐网络模型的结构示意图;
图3为本发明实施例提供的一种虚拟对象的推荐方法中嵌入层输出的特征可视化的示意图;
图4为本发明实施例提供的一种虚拟对象的推荐装置的结构示意图;
图5为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前在游戏内发展人工智能的优势在于能够获取到大量真实的数据,而难点在于游戏内的环境往往比现实中更加复杂,因此发展游戏人工智能是对于人工智能整体技术的检验与预演,象征其解决现实问题的能力也在同步提升。游戏人工智能的应用并不局限于智能体的应用,或者赋予NPC(Non-Player Character,非玩家角色)拟人的效果。通常的人工智能是电脑控制的单位和玩家进行交互,做出各种仿真的行为,从而让真实玩家获得更佳的沉浸感。
游戏阵容实时推荐通常是指,在需要搭配阵容进行战斗的游戏中进行阵容的推荐与搭配,考虑同队中虚拟对象的配合,提升队伍的合理性,增强玩家的游戏体验。在多人在线战术竞技游戏中,体现在为组队队友推荐虚拟对象,选择合理阵容;在卡牌收集游戏中,体现在为卡组的选择和搭配推荐。
相关技术中,在多人在线战术竞技游戏中,每个虚拟对象都标注有标签,通常根据标签和玩家对英雄的熟练度,为组队队伍推荐合理的阵容;比如,需要五个玩家对阵另外五个玩家,需要玩家之间在选人阶段的默契配合以及虚拟对象熟练度等相关游戏内限制,所以直接以攻略形式(或虚拟对象的标签)推荐成套阵容并不现实,可能有玩家不配合,也有可能对应位置的玩家并没有攻略推荐里的虚拟对象或者自身熟练度不够。通常在多人在线战术竞技游戏中推荐组队的虚拟对象可能包括下述方式:
单纯考虑特殊搭配,例如A和B两个虚拟对象有一套非常搭配的技能衔接,那么当队友选择了A或者B的情况下,就直接推荐B或者A。或者,单纯考虑虚拟对象的强度,以胜率为基准进行推荐。或者,单纯考虑虚拟对象熟练度,给玩家推荐自己玩得多的虚拟对象。或者,给虚拟对象打上标签,例如“战士”、“刺客”、“法师”等职业标签,“物理”、“魔法”、“持久”、“爆发”等输出标签,“脆皮”、“肉盾”等坦度标签。最后根据强势标签组合推荐阵容。但是,单纯考虑特殊组合而不是整套阵容,可能导致位置冲突,例如A是中路,B是打野,AB有特殊连击,在A选择后,C已经选择了打野位置,此时再给其他玩家推荐B,就会导致分路冲突,其恶劣后果远大于多一套特殊连击产生的优势。单纯考虑虚拟对象的强度和胜率,首先导致阵容单一,玩家迷信强势英雄,违背多人在线战术竞技游戏多元化的设计。
其次高胜率虚拟对象不一定是对应玩家的熟练英雄,高胜率不代表选择后就可以提高胜率。而且高胜率的虚拟对象并不一定能够搭配在一起,可能他们都是物理输出,最终阵容缺乏法系输出,容易被对面克制。单纯考虑虚拟对象熟练度,玩家始终选择自己最熟悉的几个虚拟对象,和大部分玩家自己无推荐自由选择差别不大。标签难以覆盖一个虚拟对象的全部特征,多人在线战术竞技游戏中很多虚拟对象都有自己的特殊机制,而这种独有机制不可能直接以标签的形式表现,所以综合标签的推荐阵容往往比较平庸,推荐的阵容可能不合理,影响队伍的胜率。
在卡牌收集游戏中,主要对战模式属于单人现有的出战卡组阵容推荐集中于以攻略的形式推荐一整套卡组,单人玩家有能力有上分动机凑足完全一致的卡组,如果缺少某些非核心卡牌,也能自己替代。所以卡牌对战类现有阵容推荐方式主要是成套卡组的攻略。但是,以攻略推荐成套卡组的方式自身的缺点在于阵容固化,每个版本的强势卡组可能被攻略制作人发现后推广,最后对战场上大家都是使用同一套卡组,缺乏多样性,对游戏生命的延续有损害。其次某些抽卡游戏,核心卡组往往需要高昂的代价才能拥有,如果玩家缺乏对应的核心卡牌,整个推荐卡组就没有使用价值。如果缺少非核心卡牌,仍然需要玩家有一定的游戏理解才能为缺失的阵容自我填补卡组,玩家游戏体验感不佳。
基于此,本发明实施例提供的一种虚拟对象的推荐方法、装置和电子设备,该技术可以应用于具有选择虚拟对象组队进行游戏对局功能的设备。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种虚拟对象的推荐方法进行详细介绍,如图1所示,该方法包括:
步骤S102,获取目标游戏对局的当前组队中已选择的第一虚拟对象;其中,第一虚拟对象至少包括两个;
上述目标游戏可以是多人在线战术竞技游戏,也可以是卡牌收集游戏,当然也可以是其他竞技游戏。上述目标游戏对局可以包括两组队伍相互对战,也可以包括多组队伍相互对战。对于多人在线战术竞技游戏,目标游戏对局通常包括两组队伍,上述当前组队包括五个玩家,每个玩家都需要选择一个虚拟对象用于目标游戏对局;对于卡牌收集游戏,通常包括两个以上的队伍,上述当前组队包括一个玩家,该玩家需要选择指定数量的虚拟对象用于目标游戏对局。上述第一虚拟对象包括两个、三个、或者四个等。
实际实现时,当前组队需要选择五个虚拟对象时,玩家在目标游戏对局中选择了两个、三个或者四个第一虚拟对象后,目标游戏后端会根据玩家的操作获取已经选择的第一虚拟对象。另外,在获取目标游戏对局的当前组队中已选择的第一虚拟对象之前,还需要根据预设的编码方式,对目标游戏中包括的虚拟对象进行编码处理。其中预设的编码方式可以是one-hot编码。比如,目标游戏中包括100个虚拟对象,每个虚拟对象都具有对应的编号,对每个编号映射为对应虚拟对象的对象编码;例如编号“1059”映射到对象编号为1,“1094”映射到对象编号为2,如果有100个虚拟对象,就是把虚拟对象对应映射到1-1000。
步骤S104,将第一虚拟对象的对象编码输入至预先训练完成的推荐网络模型,输出目标游戏对局中备选虚拟对象的初始推荐分数;其中,推荐网络模型包括嵌入层,嵌入层用于基于第一虚拟对象的属性特征,以及备选虚拟对象的属性特征,确定备选虚拟对象在当前组队中被推荐的概率信息;
上述预先训练完成的推荐网络模型中的嵌入层映射有虚拟对象的属性特征,在进行虚拟对象推荐时,只需要将第一虚拟对象的对象编码输入至嵌入层,即可根据映射的第一虚拟对象的属性特征和备选虚拟对象的属性特征,确定与第一虚对象组队最为契合的虚拟对象,具体表现为嵌入层输出备选虚拟对象的特征向量,其中包括备选虚拟对象在当前组队中被推荐的概率信息;然后嵌入层的输出,输入到推荐网络模型的下一网络层,最终输出备选虚拟对象的初始推荐分数。其中初始推荐分数越高的虚拟对象与第一虚拟对象组队后的阵容胜率越高。
举例说明,如果第一推荐对象包括两个,则备选虚拟对象的初始推荐分数最高的前三个虚拟对象通常是与第一虚拟对象组队最合理的虚拟对象。如果第一推荐对象包括三个,则备选虚拟对象的初始推荐分数最高的前两个虚拟对象通常是与第一虚拟对象组队最合理的虚拟对象。如果第一推荐对象包括四个,则备选虚拟对象的初始推荐分数最高的一个虚拟对象通常是与第一虚拟对象组队最合理的虚拟对象。
上述备选虚拟对象是指目标游戏中包括的所有虚拟对象中除第一虚拟对象之外的虚拟对象。上述嵌入层中映射的虚拟对象的属性特征是通过胜利阵容的虚拟对象训练得到的,因此嵌入层中映射的虚拟对象的属性特征包括的多种属性,比如,虚拟对象的位置属性,技能属性,成长属性,物理属性,血量属性,不同出装的属性等,由于是通过模型训练嵌入层映射的属性特征,因此嵌入层具体映射的属性特征难以直观的观察到,都映射到了嵌入层中。其中的属性特征可以理解为embedding特征,其中处于相同位置的embedding特征之间的距离会相近。
步骤S106,根据备选虚拟对象的初始推荐分数、目标账号的历史战斗场次、以及目标账号针对备选虚拟对象的熟练度,从备选虚拟对象中为目标账号推荐目标虚拟对象;其中,目标账号为当前组队的账号中未选择虚拟对象的账号。
由于上述初始推荐分数是目标游戏中除第一虚拟对象以外的所有虚拟对象,因此当前组队用户的可能对初始推荐分数高的虚拟对象不熟练,或者没有拥有初始推荐分数高的虚拟对象,需要根据当前组队用户的实际情况,对初始推荐分数进行处理,才可以从备选虚拟对象中为目标账号推荐目标虚拟对象,使得最后为目标账号推荐的目标虚拟对象能够被目标账户选择,同时使得组成的阵容胜率最高。
上述历史战斗场次是指目标账户在历史战斗中,使用每个虚拟对象参与对战的场次,可以是历史100场战斗中,针对每个虚拟对象的战斗场次,也可以是历史预设时间段内,针对每个虚拟对象的战斗场次。上述熟练度是目标游戏根据历史游戏计算得到的,可以直接在目标游戏的后端获取。具体的,可以根据历史战斗场次和熟练度,对备选虚拟对象的初始推荐分数进行加权处理,得到备选虚拟对象的最终推荐分数,根据最终推荐分数选择分数较高的虚拟对象推荐至目标账号,其中如果目标账号包括多个,由于不同每个目标账号针对虚拟对象的历史战斗场次以及熟练度不同,因此为不同目标账号推荐的虚拟对象可能会不同。
另外,如果当前组队中未选择虚拟对象的账户包括三个,当为三个目标账户推荐了目标虚拟对象后,其中目标账户A选择了目标虚拟对象,其中目标账户B和目标账户C没有选择,则会继续执行上述步骤S102-步骤S106,为目标账户B和目标账户C继续推荐目标虚拟对象。
本发明实施例提供了一种虚拟对象的推荐方法,将目标游戏对局的当前组队中已选择的第一虚拟对象的对象编码输入至预先训练完成的推荐网络模型,输出目标游戏对局中备选虚拟对象的初始推荐分数;其中的推荐网络模型包括嵌入层;根据初始推荐分数、目标账号的历史战斗场次和目标账号针对备选虚拟对象的熟练度,从备选虚拟对象中为目标账号推荐目标虚拟对象。其中的嵌入层,能够根据映射的虚拟对象的属性特征,确定备选虚拟对象在当前组队中被推荐的概率信息,根据目标账号针对虚拟对象的历史战斗场次和熟悉度,确定与第一虚拟对象最为契合的目标虚拟对象,提高了当前组队多样性和合理性,以及当前组队在对局中的胜率,进而提高了用户游戏的体验感。
如图2所示,上述推荐网络模型包括依次连接的嵌入层(也可以称为embeddinglayer)、隐藏层(也可以称为hidden layer)和激活函数(也可以称为relu)。上述将第一虚拟对象的对象编码输入至预先训练完成的推荐网络模型,输出目标游戏对局中备选虚拟对象的初始推荐分数的步骤,一种可能的实施方式:
将第一虚拟对象的对象编码输入至嵌入层,以使嵌入层根据映射的虚拟对象的属性特征,输出备选虚拟对象的第一特征向量;其中,备选虚拟对象的第一特征向量包含备选虚拟对象在当前组队中被推荐的概率信息;将第一特征向量输入至预先训练完成的推荐网络模型的隐藏层,以使隐藏层输出备选虚拟对象的第二特征向量;将第二特征向量输入至预先训练完成的推荐网络模型的激活函数,以使激活函数输出备选虚拟对象的初始推荐分数。
上述嵌入层映射的虚拟对象的属性特征,是根据胜利阵容中的虚拟对象在训练过程中学习到的,其中学习到的虚拟对象的位置特征,具体是将特征相似的虚拟对象放到相近的位置,定位不同的虚拟对象放到分隔较远的位置。实际上,可以通过主成分分析为第一特征向量投影出了虚拟对象的位置特征,以及在对局中虚拟对象的站位特征,从而把他们以平面图的形式展现出来,如图3所示,以辅助为例,“软辅”也就是主要是躲在后面放技能,给队友加血加抗性的辅助站位集中在上半区,而“硬辅”也就是扛在队伍前面吃伤害,靠控制技能开团的,站位集中在下半部分。
上述预先训练完成的推荐网络模型的隐藏层用于增加网络深度,让网络能够学习到更多的信息,上述推荐网络模型可以包括多个嵌入层和隐藏层组成的网络层,并不仅限于图2中所示的一层嵌入层和隐藏层组成的网络层。上述第二特征向量中也包含有备选虚拟对象在当前组队中被推荐的概率信息,最后根据激活函数根据第二特征向量,计算得到备选虚拟对象的初始推荐分数。其中的激活函数作为非线性计算,在深度学习神经网络中起到激活特定神经元的作用。
举例说明,如果一个阵容缺少辅助,并不是直接根据属性特征在备选虚拟对象中随便选择一个辅助提高它被推荐的概率就完事了,嵌入层会考虑第一虚拟对象的属性特征,如果第一虚拟对象的属性特征的血量少(也可以称为脆皮),没有开团对象,那就会推荐硬辅;如果上路有肉坦,中路有控制,射手强势,就倾向于推荐软辅,给第一虚拟对象加血加续航。
另外,上述嵌入层通常设置有当前层特征的维数,可以是(heropool size,embedsize)大小的维数,通常heropool size为目标游戏中虚拟对象的数量,如果目标游戏中虚拟对象的数量为100,则heropool size为100;通常embed size可以根据实际需要进行设置。如果(heropool size,embed size)为(100,20)则上述每个备选虚拟对象的第一特征向量的维数即为100×20。上述隐藏层通常也设置有当前层特征的维数,可以是(embed size,hidden size)大小的维数,其中的embed size可以根据实际需要进行设置。如果(embedsize,hidden size)为(20,50)则上述每个备选虚拟对象的第一特征向量的维数即为20×50。
上述方式中,通过推荐网络模型中嵌入层映射的虚拟对象的属性特征,能够根据输入的第一虚拟对象的对象编码,输出包含备选虚拟对象在当前组队中被推荐的概率信息的第一特征向量,然后根据隐藏层和激活函数输出备选虚拟对象的初始推荐分数。规避了繁琐且不稳定的标注标签等需要对游戏有极强理解的专家标注阶段,节省了人力成本;另外,嵌入层映射的虚拟对象的属性特征相比标签能够更好、更全面地表征虚拟对象的特征。进一步提高了当前组队多样性和合理性,以及当前组队在对局中的胜率。
下面描述如何训练推荐网络模型,具体包括:
步骤21,从目标游戏的历史对战数据中,获取胜利阵容中包括的第二虚拟对象,同时随机获取第一预设数量的第三虚拟对象;其中,第二虚拟对象携带有第一标识,用于指示第二虚拟对象为训练正样本,第三虚拟对象携带有第二标识,用于指示第三虚拟对象为训练负样本;
本实施例以目标游戏为5V5对战游戏为例进行说明,游戏会匹配10名玩家,分成两个阵容进行虚拟对象选择,然后控制虚拟对象进行游戏对战。为了确保阵容的合理性,上述历史对战数据来自高水平天梯排位的对战数据,玩家对于阵容的理解比较高,同时也较少出现多个人抢位置的情况,比较合适用来做训练数据。抛开玩家自身的水平和发挥,在拥有大量样本的情况下,胜方阵容在统计学意义上能够表征合理的阵容,因此获取胜利阵容中包括的第二虚拟对象作为训练正样本。而败方难以直接表征阵容的不合理,因此随机获取第一预设数量的第三虚拟对象作为训练负样本。
其中的第一预设数量需要根据实际需要设置,比如阵容需要五个虚拟对象,如果是训练已选择两个虚拟对象,推荐三个虚拟对象,则上述第一预设数量为2;如果是训练已选择三个虚拟对象,推荐两个虚拟对象,则上述第一预设数量为3;如果是训练已选择四个虚拟对象,推荐一个虚拟对象,则上述第一预设数量为4。
为了使推荐网络模型能够识别输入的对象编码是训练正样本还是训练负样本,需要预先为每个第二虚拟对象设置第一标识,比如符号“Y”,同时为每个第三虚拟对象设置第二标识,比如符号“N”。通过上述步骤即可得到大量的训练样本。
另外,上述随机获取第一预设数量的第三虚拟对象的步骤,一种具体的实施方式:统计历史对战数据中,各个虚拟对象的参战概率,然后不放回概率采样第一预设数量的次数,以此构建负样本,在保证负样本阵容不合理的情况下,还能让模型一定程度地避免过度推荐高频英雄。
步骤22,根据训练正样本和训练负样本,更新推荐网络模型的模型参数,以使嵌入层学习胜利阵容中包括的第二虚拟对象的属性特征,得到训练完成的推荐网络模型。
具体的,可以将上述第二虚拟对象其中的两个、三个或者四个虚拟对象的对象编码作为输入,剩下的三个、两个或者一个虚拟对象作为被推荐的目标虚拟对象,训练推荐网络模型,以使推荐网络模型能够根据胜利阵容中的虚拟对象学习各个虚拟对象的属性特征。根据训练负样本更新推荐网络模型的模型参数,也就是训练过程中是推荐网络模型学习这样的样本是不好的,不要推荐这样的阵容,要规避该阵容。
上述训练正样本来自真实的战斗数据,如果虚拟对象A非常热门,那么虚拟对象A就会出现在各种各样的阵容组合中作为训练正样本,那么模型就会加强这种强势,在推荐里也会喜欢过度推荐热门的虚拟对象,因此按照概率构建相应的训练负样本,相当于使推荐网络模型学习到虚拟对象A虽然很热门,但是也不能随便塞到任何阵容里,属于一种训练正负样本的平衡。
需要说明的是,上述训练过程类似于自然语言处理中Word2Vec模型,通过大量语句训练,训练过程就是选词填空,最后发现大量近义词可以填补到相似的语句空缺中,它们的embedding特征就会被拉近。与此类似,当大量的打野英雄被填补进缺少打野的阵容,打野英雄的embedding特征也会被拉近。如果此时队友都是脆皮,训练数据中高端玩家会有意识地补上血厚甲高的坦克的话,模型就会学到此时要弥补阵容缺憾,也会偏向于给坦克英雄更高的推荐分数,从而构造出合理的阵容。
上述方式中,通过历史对战数据中的胜利阵容构建训练正样本,同时通过随机的方式构建训练负样本,进而训练推荐网络模型中的模型参数,使得推荐网络模型能够学习到虚拟对象更为全面合理的属性特征,相比标签能够更好、更全面地表征虚拟对象的特征,进而提高了推荐的虚拟对象的合理性,和推荐阵容的胜率。
上述步骤22,一种可能的实施方式:
步骤221,将训练正样本输入至推荐网络模型,计算训练正样本的第一损失值;
一种可能的实施方式:将第二虚拟对象中第一预设数量的虚拟对象的对象编码,输入至推荐网络模型,输出预测虚拟对象;根据预测虚拟对象和第二虚拟对象中除第一预设数量的虚拟对象之外的标准虚拟对象,计算预测虚拟对象的第一损失值。
可以将胜利阵容中五个第二虚拟对象中的两个、三个或者四个虚拟对象的对象编码输入至推荐网络模型,得到备选虚拟对象的预测分数,将分数最高的前三个、两个或者一个作为预测虚拟对象。然后根据交叉熵函数,计算预测虚拟对象,与胜利阵容中输入至推荐网络模型以外的三个、两个或者一个标准虚拟对象进行交叉熵损失计算,得到上述第一损失值。
步骤222,将训练负样本输入至推荐网络模型,计算训练负样本的第二损失值;
一种可能的实施方式:将第三虚拟对象的对象编码,输入至推荐网络模型的嵌入层,得到第三虚拟对象的特征向量;通过预设的辅助分支,计算第三虚拟对象的特征向量之间的乘积值,将乘积值之和,确定为第二损失值。
上述预设的辅助分支只有在训练推荐网络模型的时候存在。具体的,在训练正样本的时候,输入至嵌入层的第二虚拟对象包括几个,则在训练负样本的时候,输入至嵌入层的第三虚拟对象就包括几个。但是在训练负样本的时候,嵌入层输出的第三虚拟对象的特征向量,可以直接计算特征向量之间的乘积值,将乘积值之和,确定为第二损失值。目的是希望负样本之间的特征向量彼此正交,即上述乘积值为零,进而保证输入的第三虚拟对象不会被推荐至一个组队阵容中。
另外,为了模型本身的轻量,在模型的预测过程还会删除辅助分支,提高预测速度非,同时保证了线上运行的实时性。
步骤223,基于第一损失值与第二损失值之和,通过反向梯度传播更新推荐网络模型的模型参数。
举例说明,如果第三虚拟对象的特征向量之间的乘积值为零,则说明嵌入层学习到了第三虚拟对象不会被推荐至同一个组队阵容,如果第三虚拟对象的特征向量之间的乘积值不为零,则基于第一损失值与第二损失值之和,去训练更新推荐网络模型的模型参数。直到第一损失值满足第一预设损失值,同时第二损失值也满足第二预设损失值,停止训练。
另外,历史对战数据中,包括多组胜利阵容,每组胜利阵容中的第二虚拟对象,只需要迭代一次,并不需要模型输出的最高分虚拟对象就是标签虚拟对象,而是通过这次迭代,参数经过了反向传播之后,模型输出的最高分虚拟对象会更加“靠近”标签虚拟对象,然后就开始其他阵容的迭代。训练数据全部迭代完算是一次epoch,一个完整的训练过程一般包括很多次epoch,在一个epoch里面每个样本阵容只迭代一次。也就是整个模型的参数是慢慢地越训练越好的。
上述方式中,通过计算训练正样本的第一损失值以及,同时训练负样本的第二损失值,通过第一损失值和第二损失值之和,训练推荐网络模型中的模型参数,使得推荐网络模型不仅能够学习到虚拟对象更为全面合理的属性特征,还避免了过度推荐热门和高频的虚拟对象,进而提高了推荐的虚拟对象的合理性,和推荐阵容的胜率。
另外,需要说明的是,训练完成的推荐网络模型需要去除辅助分支后,部署到线上的游戏应用中;具体的,可以将训练完成的推荐网络模型从pth格式(标准pytorch模型)转换为ONNX(Open Neural Network Exchange,一种针对机器学习所设计的开放式的文件格式,用于存储训练好的模型)格式,使得不同的人工智能框架(如Pytorch、MXNet)可以采用相同格式存储模型数据并交互。另外,还将ONNX格式的推荐网络模型,在Intel(R)Core(TM)i5-10400 CPU@2.90GHz 2.90GHz的CPU上进行预测时长测试,一万次预测的时间从0.971s减少到0.226s,加速了4倍,保证了推荐网络模型在CPU服务器上的实时性和稳定性。
由于当前组队用户可能对初始推荐分数高的虚拟对象不熟练,或者没有拥有初始推荐分数高的虚拟对象,因此需要对初始推荐分数进行后处理,具体的包括:
步骤31,从历史战斗场次中,获取预设场次或预设时间内目标账户针对每个虚拟对象的目标战斗场次;
比如,历史100场战斗中,目标账户针对每个虚拟对象的战斗场次,或者前一周的时间段内,目标账户针对每个虚拟对象的战斗场次。
步骤32,根据初始推荐分数,目标战斗场次,以及目标账号针对虚拟对象的熟练度,为目标账号推荐目标虚拟对象。
具体的,可以根据目标战斗场次,以及目标账号针对虚拟对象的熟练度对初始推荐分数进行进一步处理,最后基于处理后的推荐分数,为目标账号推荐目标虚拟对象。
一种可能的实施方式:针对每个虚拟对象,按照目标账号针对该虚拟对象的目标战斗场次和熟练度对该虚拟对象的初始推荐分数进行加权计算,得到目标游戏对局中备选虚拟对象的目标推荐分数;将备选虚拟对象中目标账号无法选择的虚拟对象删除,得到针对目标账号的待推荐的备选虚拟对象的目标推荐分数;根据目标推荐分数,以及目标账号预先指定的分路,从待推荐的备选虚拟对象中为目标账号推荐目标虚拟对象。
具体的,可以将按照目标账号针对该虚拟对象的目标战斗场次和熟练度进行归一化处理,将归一化处理后的虚拟对象的目标战斗场次和熟练度与该虚拟对象的初始推荐分数相乘,得到该虚拟对象的目标推荐分数。也可以直接将目标账号针对该虚拟对象的目标战斗场次和熟练度与该虚拟对象的初始推荐分数相乘,得到该虚拟对象的目标推荐分数。比如,虚拟对象M的初始推荐分数为100,但是目标账号针对该虚拟对象的目标战斗场次为0和熟练度为0,经过加权以后得到的该虚拟对象的目标推荐分数即为0,如果虚拟对象N的初始推荐分数为50,但是目标账号针对该虚拟对象的目标战斗场次为30和熟练度为70%,经过加权以后得到的该虚拟对象的目标推荐分数会比之前的50提高,进而提高虚拟对象N被推荐的概率。
最后,首先,按照目标推荐分数由高到低的顺序,确定第二预设数量的中间虚拟对象;然后,根据目标账户预先指定的分路,将第二预设数量的中间虚拟对象中不属于预先指定的分路对应的虚拟对象去除,得到最终目标虚拟对象。如果目标账户未预先指定分路,则可以直接将第二预设数量的中间虚拟对象,确定为目标虚拟对象,将目标虚拟对象推荐至目标账号。上述第二预设数量可以根据实际需要进行设置。
上述方式中,充分考虑了目标账户的实际需求,根据目标账号所拥有的虚拟对象、预先指定的分路、历史战斗场次、以及熟练度等,为目标账号推荐目标虚拟对象,提高了推荐对象的多样性和合理性,以及组队在对局中的胜率的同时,提高了用户游戏的体验感。
为了进一步提高游戏的趣味性以及用户的游戏体验感,考虑到推广新的虚拟对象,可以为目标账户提供多一个的虚拟对象的选择。具体的,上述方式还包括:从待推荐的备选虚拟对象中获取满足预设条件的第四虚拟对象,将第四虚拟对象确定目标虚拟对象;其中,预设条件包括:目标账户针对虚拟对象的熟练度低于第一预设阈值,且虚拟对象的推荐分数高于第二预设阈值。
也就是说,上述第四虚拟对象通常是指,初始推荐分数较高,与第一虚拟对象较为契合,组队胜率较高,但是目标账户对该第四虚拟对象熟练度较低,还可以是新开发的或者新上线的虚拟对象,目标账户还未尝试的虚拟对象。上述第一预设阈值和第二预设阈值可以根据实际需要进行设置。
比如,当一个虚拟对象的初始推荐分数在前10个,表示它非常契合阵容,同时,对于目标账号,它的熟练度很低,属于没怎么玩过的类型,可以将该虚拟对象在第四位进行推荐。如果前10个都是目标账号熟练的虚拟对象,就不推荐或者推荐正序第四位的虚拟对象。该方式中,考虑到推广新的虚拟对象,以及促使目标账号使用新的虚拟对象,可以为目标账户提供多一个的虚拟对象的选择,提高了游戏的趣味性以及用户的游戏体验感。
上述方式中,全面有效的后处理能适应不同多人在线战术竞技游戏或不同对战模式的要求,移植性好较好。对于挑选固定数量的虚拟对象进行对抗的游戏,在获取目标账号的历史对战数据后,经过本实施例提出的训练和预测过程,都能够有效进行阵容推荐。在卡牌收集类游戏中,能够帮助玩家搭配合理强势的出战卡组,也能在攻略卡组不全的情况下,寻找可替代的卡牌。在多人在线战术竞技游戏中,能作为选人对战时期的决策参考,保证阵容和分路的合理性。且对计算资源友好,运行效率高,其移植性可以保证。
对应上述方法实施例,发明实施例提供了一种虚拟对象的推荐装置,如图4所示,该装置包括:
获取模块41,用于获取目标游戏对局的当前组队中已选择的第一虚拟对象;其中,第一虚拟对象至少包括两个;
输出模块42,用于将第一虚拟对象的对象编码输入至预先训练完成的推荐网络模型,输出目标游戏对局中备选虚拟对象的初始推荐分数;其中,推荐网络模型包括嵌入层,嵌入层用于基于第一虚拟对象的属性特征,以及备选虚拟对象的属性特征,确定备选虚拟对象在当前组队中被推荐的概率信息;
推荐模块43,用于根据备选虚拟对象的初始推荐分数、目标账号的历史战斗场次、以及目标账号针对备选虚拟对象的熟练度,从备选虚拟对象中为目标账号推荐目标虚拟对象;其中,目标账号为当前组队的账号中未选择虚拟对象的账号。
本发明提供了一种虚拟对象的推荐装置,将目标游戏对局的当前组队中已选择的第一虚拟对象的对象编码输入至预先训练完成的推荐网络模型,输出备选虚拟对象的初始推荐分数;其中的推荐网络模型包括嵌入层;根据初始推荐分数、目标账号的历史战斗场次和目标账号针对备选虚拟对象的熟练度,从备选虚拟对象中为目标账号推荐目标虚拟对象。其中的嵌入层,能够根据映射的虚拟对象的属性特征,确定备选虚拟对象在当前组队中被推荐的概率信息,根据目标账号针对虚拟对象的历史战斗场次和熟悉度,确定与第一虚拟对象最为契合的目标虚拟对象,提高了当前组队多样性和合理性,以及当前组队在对局中的胜率,进而提高了用户游戏的体验感。
进一步的,上述输出模块,还用于将第一虚拟对象的对象编码输入至嵌入层,以使嵌入层根据映射的虚拟对象的属性特征,输出备选虚拟对象的第一特征向量;其中,备选虚拟对象的第一特征向量包含备选虚拟对象在当前组队中被推荐的概率信息;将第一特征向量输入至预先训练完成的推荐网络模型的隐藏层,以使隐藏层输出备选虚拟对象的第二特征向量;将第二特征向量输入至预先训练完成的推荐网络模型的激活函数,以使激活函数输出备选虚拟对象的初始推荐分数。
进一步的,上述装置还包括训练模块,用于:从目标游戏的历史对战数据中,获取胜利阵容中包括的第二虚拟对象,同时随机获取第一预设数量的第三虚拟对象;其中,第二虚拟对象携带有第一标识,用于指示第二虚拟对象为训练正样本,第三虚拟对象携带有第二标识,用于指示第三虚拟对象为训练负样本;根据训练正样本和训练负样本,更新推荐网络模型的模型参数,以使嵌入层学习胜利阵容中包括的第二虚拟对象的属性特征,得到训练完成的推荐网络模型。
进一步的,上述训练模块还用于:将训练正样本输入至推荐网络模型,计算训练正样本的第一损失值;将训练负样本输入至推荐网络模型,计算训练负样本的第二损失值;基于第一损失值与第二损失值之和,通过反向梯度传播更新推荐网络模型的模型参数。
进一步的,上述训练模块还用于:将第二虚拟对象中第一预设数量的虚拟对象的对象编码,输入至推荐网络模型,输出预测虚拟对象;根据预测虚拟对象和第二虚拟对象中除第一预设数量的虚拟对象之外的标准虚拟对象,计算预测虚拟对象的第一损失值。
进一步的,上述训练模块还用于:将第三虚拟对象的对象编码,输入至推荐网络模型的嵌入层,得到第三虚拟对象的特征向量;通过预设的辅助分支,计算第三虚拟对象的特征向量之间的乘积值,将乘积值之和,确定为第二损失值。
进一步的,上述推荐模块还用于:从历史战斗场次中,获取预设场次或预设时间内目标账户针对每个虚拟对象的目标战斗场次;根据初始推荐分数,目标战斗场次,以及目标账号针对虚拟对象的熟练度,为目标账号推荐目标虚拟对象。
进一步的,上述推荐模块还用于:针对每个虚拟对象,按照目标账号针对该虚拟对象的目标战斗场次和熟练度对该虚拟对象的初始推荐分数进行加权计算,得到目标游戏对局中备选虚拟对象的目标推荐分数;将备选虚拟对象中目标账号无法选择的虚拟对象删除,得到针对目标账号的待推荐的备选虚拟对象的目标推荐分数;根据目标推荐分数,以及目标账号预先指定的分路,从待推荐的备选虚拟对象中为目标账号推荐目标虚拟对象。
进一步的,上述推荐模块还用于:从待推荐的备选虚拟对象中获取满足预设条件的第四虚拟对象,将第四虚拟对象确定为目标虚拟对象;其中,预设条件包括:目标账户针对虚拟对象的熟练度低于第一预设阈值,且虚拟对象的推荐分数高于第二预设阈值。
本发明实施例提供的虚拟对象的推荐装置,与上述实施例提供的虚拟对象的推荐方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
本实施例还提供一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述虚拟对象的推荐方法。该电子设备可以是服务器,也可以是终端设备。
参见图5所示,该电子设备包括处理器100和存储器101,该存储器101存储有能够被处理器100执行的机器可执行指令,该处理器100执行机器可执行指令以实现上述虚拟对象的推荐方法。
进一步地,图5所示的电子设备还包括总线102和通信接口103,处理器100、通信接口103和存储器101通过总线102连接。
其中,存储器101可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口103(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线102可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器100可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器100中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器100可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processor,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器101,处理器100读取存储器101中的信息,结合其硬件完成前述实施例的方法的步骤。
本实施例还提供一种机器可读存储介质,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述虚拟对象的推荐方法。
本发明实施例所提供的虚拟对象的推荐方法、装置、电子设备以及系统的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (12)
1.一种虚拟对象的推荐方法,其特征在于,所述方法包括:
获取目标游戏对局的当前组队中已选择的第一虚拟对象;其中,所述第一虚拟对象至少包括两个;
将所述第一虚拟对象的对象编码输入至预先训练完成的推荐网络模型,输出所述目标游戏对局中备选虚拟对象的初始推荐分数;其中,所述推荐网络模型包括嵌入层,所述嵌入层用于基于所述第一虚拟对象的属性特征,以及所述备选虚拟对象的属性特征,确定所述备选虚拟对象在所述当前组队中被推荐的概率信息;
根据所述备选虚拟对象的初始推荐分数、目标账号的历史战斗场次、以及所述目标账号针对所述备选虚拟对象的熟练度,从所述备选虚拟对象中为所述目标账号推荐目标虚拟对象;其中,所述目标账号为所述当前组队的账号中未选择虚拟对象的账号。
2.根据权利要求1所述的方法,其特征在于,将所述第一虚拟对象的对象编码输入至预先训练完成的推荐网络模型,输出所述目标游戏对局中备选虚拟对象的初始推荐分数的步骤,包括:
将所述第一虚拟对象的对象编码输入至所述嵌入层,以使所述嵌入层根据映射的所述虚拟对象的属性特征,输出所述备选虚拟对象的第一特征向量;其中,所述备选虚拟对象的第一特征向量包含所述备选虚拟对象在所述当前组队中被推荐的概率信息;
将所述第一特征向量输入至所述预先训练完成的推荐网络模型的隐藏层,以使所述隐藏层输出所述备选虚拟对象的第二特征向量;
将所述第二特征向量输入至所述预先训练完成的推荐网络模型的激活函数,以使所述激活函数输出所述备选虚拟对象的初始推荐分数。
3.根据权利要求1所述的方法,其特征在于,所述推荐网络模型通过下述方式训练得到:
从所述目标游戏的历史对战数据中,获取胜利阵容中包括的第二虚拟对象,同时随机获取第一预设数量的第三虚拟对象;其中,所述第二虚拟对象携带有第一标识,用于指示所述第二虚拟对象为训练正样本,所述第三虚拟对象携带有第二标识,用于指示所述第三虚拟对象为训练负样本;
根据所述训练正样本和所述训练负样本,更新所述推荐网络模型的模型参数,以使所述嵌入层学习所述胜利阵容中包括的第二虚拟对象的属性特征,得到训练完成的所述推荐网络模型。
4.根据权利要求3所述的方法,其特征在于,根据所述训练正样本和所述训练负样本,更新所述推荐网络模型的模型参数的步骤,包括:
将所述训练正样本输入至所述推荐网络模型,计算所述训练正样本的第一损失值;
将所述训练负样本输入至所述推荐网络模型,计算所述训练负样本的第二损失值;
基于所述第一损失值与所述第二损失值之和,通过反向梯度传播更新所述推荐网络模型的模型参数。
5.根据权利要求4所述的方法,其特征在于,将所述训练正样本输入至所述推荐网络模型,计算所述训练正样本的第一损失值的步骤,包括:
将所述第二虚拟对象中第一预设数量的虚拟对象的对象编码,输入至所述推荐网络模型,输出预测虚拟对象;
根据所述预测虚拟对象和所述第二虚拟对象中除所述第一预设数量的虚拟对象之外的标准虚拟对象,计算所述预测虚拟对象的第一损失值。
6.根据权利要求4所述的方法,其特征在于,将所述训练负样本输入至所述推荐网络模型,计算所述训练负样本的第二损失值的步骤,包括:
将所述第三虚拟对象的对象编码,输入至所述推荐网络模型的嵌入层,得到所述第三虚拟对象的特征向量;
通过预设的辅助分支,计算所述第三虚拟对象的特征向量之间的乘积值,将所述乘积值之和,确定为所述第二损失值。
7.根据权利要求1所述的方法,其特征在于,根据所述备选虚拟对象的初始推荐分数、目标账号的历史战斗场次、以及所述目标账号针对所述备选虚拟对象的熟练度,从所述备选虚拟对象中为所述目标账号推荐目标虚拟对象的步骤,包括:
从所述历史战斗场次中,获取预设场次或预设时间内所述目标账户针对每个所述虚拟对象的目标战斗场次;
根据所述初始推荐分数,所述目标战斗场次,以及所述目标账号针对所述虚拟对象的熟练度,为所述目标账号推荐目标虚拟对象。
8.根据权利要求7所述的方法,其特征在于,根据所述初始推荐分数,所述目标战斗场次,以及所述目标账号针对所述虚拟对象的熟练度,为所述目标账号推荐目标虚拟对象的步骤,包括:
针对每个所述虚拟对象,按照所述目标账号针对该虚拟对象的目标战斗场次和熟练度对该虚拟对象的初始推荐分数进行加权计算,得到所述目标游戏对局中备选虚拟对象的目标推荐分数;
将所述备选虚拟对象中所述目标账号无法选择的虚拟对象删除,得到针对所述目标账号的待推荐的备选虚拟对象的目标推荐分数;
根据所述目标推荐分数,以及所述目标账号预先指定的分路,从所述待推荐的备选虚拟对象中为所述目标账号推荐目标虚拟对象。
9.根据权利要求8所述的方法,其特征在于,根据所述目标推荐分数,以及所述目标账号预先指定的分路,从所述待推荐的备选虚拟对象中为所述目标账号推荐目标虚拟对象的步骤之后,所述方法还包括:
从所述待推荐的备选虚拟对象中获取满足预设条件的第四虚拟对象,将所述第四虚拟对象确定为所述目标虚拟对象;其中,所述预设条件包括:所述目标账户针对所述虚拟对象的熟练度低于第一预设阈值,且所述虚拟对象的推荐分数高于第二预设阈值。
10.一种虚拟对象的推荐装置,其特征在于,所述装置包括:
获取模块,用于获取目标游戏对局的当前组队中已选择的第一虚拟对象;其中,所述第一虚拟对象至少包括两个;
输出模块,用于将所述第一虚拟对象的对象编码输入至预先训练完成的推荐网络模型,输出所述目标游戏对局中备选虚拟对象的初始推荐分数;其中,所述推荐网络模型包括嵌入层,所述嵌入层用于基于所述第一虚拟对象的属性特征,以及所述备选虚拟对象的属性特征,确定所述备选虚拟对象在所述当前组队中被推荐的概率信息;
推荐模块,用于根据所述备选虚拟对象的初始推荐分数、目标账号的历史战斗场次、以及所述目标账号针对所述备选虚拟对象的熟练度,从所述备选虚拟对象中为所述目标账号推荐目标虚拟对象;其中,所述目标账号为所述当前组队的账号中未选择虚拟对象的账号。
11.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1-9任一项所述的虚拟对象的推荐方法。
12.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现权利要求1-9任一项所述的虚拟对象的推荐方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210208284.8A CN114681924A (zh) | 2022-03-04 | 2022-03-04 | 虚拟对象的推荐方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210208284.8A CN114681924A (zh) | 2022-03-04 | 2022-03-04 | 虚拟对象的推荐方法、装置和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114681924A true CN114681924A (zh) | 2022-07-01 |
Family
ID=82137718
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210208284.8A Pending CN114681924A (zh) | 2022-03-04 | 2022-03-04 | 虚拟对象的推荐方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114681924A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117815674A (zh) * | 2024-03-06 | 2024-04-05 | 深圳市迷你玩科技有限公司 | 游戏信息的推荐方法、装置、计算机可读介质及电子设备 |
-
2022
- 2022-03-04 CN CN202210208284.8A patent/CN114681924A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117815674A (zh) * | 2024-03-06 | 2024-04-05 | 深圳市迷你玩科技有限公司 | 游戏信息的推荐方法、装置、计算机可读介质及电子设备 |
CN117815674B (zh) * | 2024-03-06 | 2024-05-24 | 深圳市迷你玩科技有限公司 | 游戏信息的推荐方法、装置、计算机可读介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107970608B (zh) | 关卡游戏的设置方法和装置、存储介质、电子装置 | |
Lee et al. | The computational intelligence of MoGo revealed in Taiwan's computer Go tournaments | |
Andrade et al. | Dynamic game balancing: An evaluation of user satisfaction | |
Hingston | A new design for a turing test for bots | |
Buro et al. | Improving state evaluation, inference, and search in trick-based card games | |
CN108491930A (zh) | 一种样本数据的处理方法以及数据处理装置 | |
Font et al. | A card game description language | |
CN112843725A (zh) | 智能体处理方法及装置 | |
WO2019085823A1 (zh) | 游戏信息的确定方法和装置、存储介质、电子装置 | |
CN111841018A (zh) | 模型训练方法、模型使用方法、计算机设备及存储介质 | |
Cerny et al. | Rogue-like games as a playground for artificial intelligence–evolutionary approach | |
Kachalsky et al. | Applying reinforcement learning and supervised learning techniques to play hearthstone | |
CN114681924A (zh) | 虚拟对象的推荐方法、装置和电子设备 | |
CN112685921B (zh) | 一种高效精确搜索的麻将智能决策方法、系统及设备 | |
Rebstock et al. | Learning policies from human data for skat | |
Kowalski et al. | Summarizing strategy card game AI competition | |
CN113393063A (zh) | 比赛结果预测方法、系统、程序产品及存储介质 | |
Teófilo et al. | Computing card probabilities in Texas Hold'em | |
US10780351B2 (en) | Information processing device and information processing program | |
Huang et al. | PokerGPT: An End-to-End Lightweight Solver for Multi-Player Texas Hold'em via Large Language Model | |
Yang et al. | Deck building in collectible card games using genetic algorithms: A case study of legends of code and magic | |
CN111389010B (zh) | 虚拟机器人训练方法、装置、电子设备和介质 | |
CN112870727B (zh) | 一种游戏中智能体的训练及控制方法 | |
Chen et al. | Challenging artificial intelligence with multiopponent and multimovement prediction for the card game Big2 | |
CN115271072A (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 |