1.一种基于CNN‑GRU模型的实时策略游戏中稀疏指令的预测方法,其特征在于,它包括以下步骤:步骤1:收集游戏平台产生的对战数据;
步骤2:对收集到的对战数据进行清理,剔除冗余数据;
步骤3:提取出数据中己方、敌方信息相关特征因素,并对获取到的数据进行数据处理;
步骤4:进行CNN‑GRU网络模型的构建,并采用所构建的网络模型进行指令类型的预测;
在步骤2中,具体包括以下步骤:
步骤2‑1)将从步骤1获取到的对战数据中进行状态信息的提取,同时提取标签信息,其中标签分为两大类一类是空白指令,一类是有效指令;
步骤2‑2)剔除掉不符合规范的推演数据;
步骤2‑3)删除掉不必要的特征;
在步骤3中,对获取到的数据进行min‑max归一化,然后采用PCA主成分分析法对输入的特征向量进行降维处理;具体的,包括以下步骤:步骤3‑1)构建每一个时间步的输入,所有的时间步组成一个完整的时间序列也就是一场游戏对战的过程;
步骤3‑2)把按时间顺序提取到的信息进行补齐操作,使用手工的方式将每一个时间点的向量维度补成相同的长度;
步骤3‑3)进行数据的归一化处理,归一化的公式如下:x′ij为xij归一化之后的数值,xij是第i列第j维特征,xi是第i列特征,min(xi)是第i列的所有维度中的数值的最小值,max(xi)是第i列所有维度中的数值最大值;
步骤3‑4)对上述数据使用PCA主成分分析法对数据进行降维处理。
2.根据权利要求1所述的方法,其特征在于,它还包括步骤5:将数据分成多份进行交叉验证,从而选择出更好的超参数。
3.根据权利要求1所述的方法,其特征在于,在步骤4中,在构建CNN‑GRU网络模型时,包括以下步骤:步骤4‑1)构建卷积神经网络,提取游戏状态特征,生成特征矩阵,这里卷积神经网络使用多个卷积核,不同的卷积核关注不同的特征;
步骤4‑2)使用门控循环网络GRU提取时间序列的依赖特征;
步骤4‑3)使用dropout技术防止过拟合现象;
步骤4‑4)使用多层感知器将门控循环神经网络的输出映射到线性空间;
步骤4‑5)使用softmax函数进行标签的预测;
步骤4‑6)使用带权重的交叉熵函数最小化损失;
采用以上步骤建立CNN‑GRU网络模型。
4.根据权利要求3所述的方法,其特征在于,在步骤4‑1)中,构建卷积神经网络,提取游戏状态特征,生成特征矩阵,其计算公式如下:t
x=σcnn(wcnn⊙xt+bcnn);
xt表示当前状态和动作特征,wcnn表示过滤器的权重,bcnn表示偏差参数,σcnn是激活函数;
在步骤4‑2)中,使用门控循环网络GRU提取时间序列的依赖特征:GRU重置门:
t t t‑1
r=σ(Wrx+Urh +br)
GRU更新门:
t t t‑1
z=σ(Wzx+Uzh +bz)
t t‑1
σ为sigmoid函数,W、U和b为权重和偏置项,x即为卷积神经网络的输出,h 为上一个状态所传递下来的信息;更新门和重置门确定历史节点信息对当前节点信息的贡献程度;
上一状态信息经过重置后,通过权重和偏置项与当前输入进行聚合更新以形成当前时刻状态:t t
为当前时刻t的候选隐藏状态;W、U和b为权重和偏置项,x为卷积神经网络的输出,rt‑1为重置门,h 为上一状态的信息;tanh激活函数将数据缩放至‑1到1的范围内;
t t t‑1
h为当前隐藏状态信息,z为更新门,h 为上一个状态所传递下来的信息。
5.根据权利要求4所述的方法,其特征在于,在步骤4‑3)中,使用dropout对隐藏层节点进行随机丢弃,从而防止过拟合时,采用以下步骤:使用dropout防止过拟合:
(l)
rj =Bernoulli(p)
Bernoulli函数是随机生成一个概率的向量,也就是以一个概率为p的伯努利分布随机地生成与节点数相同的0、1值。
6.根据权利要求3至5其中之一所述的方法,其特征在于,在步骤4‑4)中,将经过dropout层之后的GRU网络的输出映射到线性空间时,采用以下公式:f1为多层感知机MLP。
7.根据权利要求6所述的方法,其特征在于,在步骤4‑5)中,将多层感知机的输出作为softmax函数的输入来进行标签预测时,采用以下方式:W为权重,b为偏置项,hv为多层感知机的输出,为预测的标签;
在步骤4‑6)中,在使用带权重的交叉熵函数最小化损失时;
计算公式如下:
wj是权重;M为类别的数量,yij为指示变量,取值为0或1,如果样本i的真实类别与j相同,此时yij取值为1,否则取值为0; 为样本i属于类别j的预测概率;
是第j类样本类型的样本数量;其中wj的计算公式如下:wj为第j类类别的权重,nclasses是数据集中所有类型种类数量,nsamples是数据集中的样本总数。