基于元学习的策略博弈的行为预测方法和预测器

文档序号:31049850发布日期:2022-08-06 06:38阅读:158来源:国知局
基于元学习的策略博弈的行为预测方法和预测器

1.本技术涉及策略博弈技术领域,特别是涉及一种基于元学习的策略博弈的行为预测方法和预测器。


背景技术:

2.随着网络安全技术的持续发展和网络规模的日益扩大,网络安全问题已成为信息时代人类共同面临的挑战。而网络信息攻防对抗也成为了网络安全关注的重要问题之一。网络攻防是一个博弈的过程,网络攻击能否成功,除了攻击能力的强弱外,针对性的防御措施也是重要的因素,因此网络攻防过程也是双方对抗、博弈的过程,预测网络攻防博弈中网络攻击者的攻击策略具有挑战性。
3.近年来,基于机器学习方法的深度神经网络已被用于预测战略环境中的参与者行为,例如风险选择问题和策略博弈中的行为。风险选择问题作为一种单人博弈,决策者面临两种决策之间的选择,每一种决策都有一组在其收益和概率方面不同的结果,进行大规模实验(比如10000个风险选择问题)的机器学习研究发现,人类研究员开发的决策模型在仅考虑少量数据时往往优于机器学习模型,但当更多数据可用时,机器学习模型的效果更好。与风险选择问题相比,一个策略博弈至少涉及两个参与者,一个参与者在做出自己的决定时应该考虑其他博弈参与者的可能选择,比风险选择问题更加复杂。
4.由于网络攻防博弈中可用的实际数据通常很少,导致训练集数据量过少,现有的基于深度神经网络的预测策略博弈中的人类行为方法容易出现过拟合现象;同时,由于可用的实际数据很少,而人类行为特征多种多样,预测方法的适应能力很重要,但是当前的预测方法对于新应用场景来说泛化能力很弱,难以适用于全新的场景中,因此现有的基于神经网络的预测方法对网络攻防博弈中攻击者的战略行为预测结果精确度不高,影响网络安全防御效果。


技术实现要素:

5.基于此,有必要针对上述技术问题,提供一种基于元学习的策略博弈的行为预测方法和预测器。
6.一种基于元学习的策略博弈的行为预测方法,所述方法包括:获取网络攻防博弈数据集,并将所述数据集划分为用于测试训练好的行为预测模型效果的新任务和用于元学习的训练样本;所述数据集由若干独立的网络攻防博弈数据构成,每个网络攻防博弈数据包括网络攻防双方的收益矩阵和动作次数;构建基于深度神经网络的行为预测模型;所述行为预测模型包括混合特征层和动作响应模块;所述混合特征层用于根据网络攻防双方的收益矩阵采用混合专家架构,得到混合的非战略行为特征;所述动作响应模块用于根据所述混合的非战略行为特征采用p层动作响应层,得到网络攻防博弈中攻击者的战略行为预测结果,其中p为大于等于1且小于等于4的整数。
7.根据所述训练样本采用多种元任务划分方法构建行为预测任务。
8.对行为预测模型参数进行随机初始化,并设置元学习率超参数。
9.根据多种所述行为预测任务、所述行为预测模型参数以及所述元学习率超参数,采用模型无关元学习方式对所述行为预测模型进行训练,得到训练好的行为预测模型。
10.将所述新任务中网络攻防双方的收益矩阵输入到所述训练好的行为预测模型中,得到网络攻防博弈中攻击者的战略行为预测结果。
11.一种基于元学习的策略博弈的行为预测器,所述行为预测器包括:数据集获取模块,用于获取网络攻防博弈数据集,并将所述数据集划分为用于测试训练好的行为预测模型效果的新任务和用于元学习的训练样本;所述数据集由若干独立的网络攻防博弈数据构成,每个网络攻防博弈数据包括网络攻防双方的收益矩阵和动作次数;行为预测模型构建模块,用于构建基于深度神经网络的行为预测模型;所述行为预测模型包括混合特征层和动作响应模块;所述混合特征层用于根据网络攻防双方的收益矩阵采用混合专家架构,得到混合的非战略行为特征;所述动作响应模块用于根据所述混合的非战略行为特征采用p层动作响应层,得到网络攻防博弈中攻击者的战略行为预测结果,其中p为大于等于1且小于等于4的整数。
12.行为预测任务划分模块,用于根据所述训练样本采用多种元任务划分方法构建行为预测任务。
13.行为预测模型元学习训练模块,用于对行为预测模型参数进行随机初始化,并设置元学习率超参数;根据多种所述行为预测任务、所述行为预测模型参数以及所述元学习率超参数,采用模型无关元学习方式对所述行为预测模型进行训练,得到训练好的行为预测模型。
14.行为预测模块,用于将所述新任务中网络攻防双方的收益矩阵输入到所述训练好的行为预测模型中,得到网络攻防博弈中攻击者的战略行为预测结果。
15.上述基于元学习的策略博弈的行为预测方法和预测器,所述方法包括获取网络攻防博弈数据集,将数据集划分为用于测试训练好的行为预测模型效果的新任务和用于元学习的训练样本,采用元学习方法对构建的基于深度神经网络的行为预测模型进行训练,并利用训练好的行为预测模型在新任务中对网络攻防博弈中攻击者的战略行为进行预测。本方法采用无监督学习的任务分类方法和专家混合架构的元学习方法,能够在网络攻防博弈数据量较少的场景中明显提升网络攻防博弈中攻击者的战略行为预测精度和预测速度,取得较好的安全防御效果,并达到主动防御的功能,从而为及时有效的进行网络防御提供了重要的技术支持。
附图说明
16.图1为一个实施例中基于元学习的策略博弈的行为预测方法的流程示意图;图2为另一个实施例中博弈数据的收益矩阵;图3为另一个实施例中基于混合专家架构的行为预测模型结构图;图4为另一个实施例中元学习算法的流程示意图。
具体实施方式
17.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
18.在一个实施例中,如图1所示,提供了一种基于元学习的策略博弈的行为预测方法,该方法包括以下步骤:步骤100:获取网络攻防博弈数据集,并将数据集划分为用于测试训练好的行为预测模型效果的新任务和用于元学习的训练样本;数据集由若干独立的网络攻防博弈数据构成,每个网络攻防博弈数据包括网络攻防双方的收益矩阵和动作次数。
19.具体的,策略博弈是同时执行的一次性博弈,所有博弈参与者同时做决策,并且已知对手可选的策略,但是不知道对手具体会选择哪种策略。
20.在网络空间安全领域,网络攻防的双方可以被建模为二人非合作博弈模型,理性的攻击者在考虑攻击成本的情况下,会选择具有低成本的攻击方式,并且追求攻击利益最大化。而防御者总是希望把系统的损失降到最小,因此可以建模为二人非合作的攻防博弈。在网络攻防中,预测攻击者的可能行动,采取主动防御措施,而不是等到被攻击后才有所响应,这对于网络安全而言极为重要。因此,更加精准的预测,为及时有效地主动防御提供有力保证。
21.按照1:10的比例将数据集划分为用于测试训练好的行为预测模型效果的新任务和用于元学习的训练样本。
22.数据集包括收益矩阵如图2所示,图2中收益矩阵的最后一行带有阴影背景列出了每一列动作选择的人类受试者的频率。
23.步骤102:构建基于深度神经网络的行为预测模型。
24.行为预测模型包括混合特征层和动作响应模块。
25.混合特征层用于根据网络攻防双方的收益矩阵采用混合专家架构,得到混合的非战略行为特征。专家混合架构moe是一种集成学习方法,旨在通过利用专家模型的子任务明确解决预测建模问题。将行为特征与moe相结合,而不是单纯使用深度神经网络,增强了模型的可解释性和模型预测精度,使用元学习来消除传统神经网络方法的过拟合现象。
26.动作响应模块用于根据混合的非战略行为特征采用p层动作响应层,得到网络攻防博弈中攻击者的战略行为预测结果,其中p为大于等于1且小于等于4的整数。p的取值可以根据输入样本数量进行调整,随着输入样本数量的增加,调高p的取值效果更好,但是p值不超过4。
27.基于深度神经网络的行为预测模型的结构如图3所示,图中y为网络攻防博弈中攻击者的战略行为预测结果;为防御者通过softmax函数激活后的混合的非战略行为,是对应的动作响应层的输入;为攻击者通过softmax函数激活后的混合的非战略行为,是对应的动作响应层的输入。
28.通过将人类行为特征与专家混合架构结合起来,并采用元学习克服深度神经网络的过拟合问题,提高预测方法在新任务上的泛化性和精确度。
29.步骤104:根据训练样本采用多种元任务划分方法构建行为预测任务。
30.具体的,采用三种方法将策略博弈划分为不同类型的元学习任务,三种方法包括一种采用博弈论方法和两种无监督学习的方法。第一种方法是基于优势可解性和均衡结构的博弈特性。当收益矩阵给定时,可以得到博弈的这些特性。另外两种方法是使用无监督学习方法自动构建任务,其思想受到聚类方法的启发,为无监督元学习自动构建任务。当元学习算法在子任务分布上进行训练时,利用无监督嵌入为元学习算法提出任务优于有监督的元学习。
31.步骤106:对行为预测模型参数进行随机初始化,并设置元学习率超参数。
32.步骤108:根据多种行为预测任务、行为预测模型参数以及元学习率超参数,采用模型无关元学习方式对行为预测模型进行训练,得到训练好的行为预测模型。
33.具体的,行为预测模型的权重参数初始化的好坏可以影响模型最后的分类性能,元学习可以通过学出一个较好的权重参数初始化值,有助于行为预测模型在新任务上进行学习。模型无关元学习方式maml(model-agnostic-meta-learning)专注于提升模型整体的学习能力,而不是解决某个具体问题的能力,训练时,分别在不同类型的任务上训练得到每个子任务的最优参数,从而在许多相关任务中找到共同的最优参数,得到最终的模型,面对新任务时可以学习的更快。
34.基于元学习的方法,从少量数据中学习各种相关任务,适合各种小样本学习场景,避免过拟合,在新的训练样本较少的相关任务中有较好的泛化性效果。
35.步骤110:将新任务中网络攻防双方的收益矩阵输入到训练好的行为预测模型中,得到网络攻防博弈中攻击者的战略行为预测结果。
36.上述基于元学习的策略博弈的行为预测方法中,所述方法包括获取网络攻防博弈数据集,将数据集划分为用于测试训练好的行为预测模型效果的新任务和用于元学习的训练样本,采用元学习方法对构建的基于深度神经网络的行为预测模型进行训练,并利用训练好的行为预测模型在新任务中对网络攻防博弈中攻击者的战略行为进行预测。本方法采用无监督学习的任务分类方法和专家混合架构的元学习方法,能够在网络攻防博弈数据量较少的场景中明显提升网络攻防博弈中攻击者的战略行为预测精度和预测速度,取得较好的安全防御效果,并达到主动防御的功能,从而为及时有效的进行网络防御提供了重要的技术支持。
37.在其中一个实施例中,步骤104包括:根据训练样本,采用博弈论方法构建具有博弈特征的行为预测任务;根据训练样本输入到行为预测模型的混合特征层中得到的混合的非战略行为特征,采用聚类方法来构建具有非战略行为特征的行为预测任务;采用自编码器网络提取训练样本的潜在特征,根据潜在特征采用深度聚类构建行为预测任务。
38.其中,自编码器网络包括由2层线性层组成的编码层,tanh激活函数,与编码层的网络结构对称的解码层,softmax激活函数。
39.在其中一个实施例中,步骤:根据训练样本,采用博弈论方法构建具有博弈特征的行为预测任务,包括:根据每场博弈拥有的纳什均衡解的数量和类型,将训练样本划分为三类元任务,三类元任务分别为:纯策略的单一纳什均衡、混合策略的单一纳什均衡以及拥有多个纯策略或混合策略的多重纳什均衡。
40.在其中一个实施例中,步骤:根据训练样本,采用博弈论方法构建具有博弈特征的行为预测任务,包括:根据每场博弈的不同优势可解性,将训练样本划分为三类元任务,三
类元任务分别为:弱占优可解元任务、严格占优可解元任务和无占优可解元任务。
41.在其中一个实施例中,元学习率超参数包括内循环元学习率超参数和外循环元学习率超参数;步骤108包括:将训练样本划分为训练集和测试集;设置第一种行为预测任务为当前行为预测任务;在当前行为预测任务中,在训练集上抽取一批子任务执行内循环,其中n为一批子任务的数量,ts为第s个子任务,s为整数,;在每个子任务中抽取预设数量个样本分别对行为预测模型进行训练,并计算通过每个子任务训练的行为预测模型的损失;根据每个子任务训练的行为预测模型的损失采用梯度下降法对行为预测模型参数进行更新,得到每个子任务的行为预测模型的最优参数;其中,第s个子任务训练过程中行为预测模型参数更新表达式为:(1)其中,为第s个子任务训练得到的最优参数,为随机初始化的行为预测模型参数,为内循环元学习率超参数为第s个子任务训练中行为预测模型损失,为第s个子任务训练中行为预测模型损失的梯度。
42.计算内循环阶段训练完成后每个子任务中相对于最优参数的梯度,取所有子任务相对于最优参数的梯度的平均值作为外循环参数的初始梯度。
43.在外循环开始之前对行为预测模型参数进行随机初始化。
44.在外循环中根据外循环参数的初始梯度对初始化后的行为预测模型参数进行更新;外循环过程中行为预测模型参数更新表达式为:(2)其中,为外循环元学习率超参数,是所有子任务ts相对于最优参数的梯度的平均值,为元学习子任务的分布。
45.利用测试集对通过每个子任务训练后的行为预测模型在外循环中进行适应训练,训练完成后进入下一轮元学习循环过程,直到满足元学习循环次数为止,得到第一种元学习后的行为预测模型;将当前行为预测任务更新为第二种行为预测任务,将行为预测模型参数进行随机初始化,进入下一轮迭代训练,直到多种行为预测任务遍历完为止,得到多个元学习后的行为预测模型;选取预测精度最高的元学习后的行为预测模型作为训练好的行为预测模型。
46.具体的,在当前行为预测任务中,在训练集上抽取一批子任务t执行内循环。假设抽取了5个子任务,对第s个子任务,其中,抽取k个数据点并训练模型。
47.通过计算第s个子任务中行为预测模型的损失,利用梯度下降最小化行为预测模
型的损失,找到使行为预测模型的损失最小化的最优参数集,使得采样的子任务中的行为预测模型都有最优参数,,每个子任务中行为预测模型参数更新采用式(1)所示的表达式。
48.在抽取下一批子任务之前,执行外循环,也就是元更新过程。通过前面内循环中找到的最优参数,计算每个子任务中行为预测模型的损失的梯度,更新随机初始化的初始参数,这个步骤就是元更新,外循环中参数更新表达式如式(2)所示。
49.模型无关元学习方法包括两个循环,在内循环中找到每个任务的最优参数;在外循环中,通过计算所有子任务中行为预测模型的损失的梯度,更新随机初始化的模型参数,作为下一轮元学习的初始参数。
50.当前行为预测任务训练结束后,将当前行为预测任务更新为第二种行为预测任务,继续进行下一轮训练,直到所有行为预测任务都参与训练为止,得到训练好的具备较好泛化性的行为预测模型。
51.在其中一个实施例中,混合特征层包括两个结构相同的混合专家架构,混合专家架构包括若干个专家,专家的数量与非战略行为特征的种类数量相同;步骤110包括:将新任务中的攻击者和防御者的收益矩阵分别输入到训练好的行为预测模型的混合特征层的两个混合专家架构中,得到混合的非战略行为特征;将混合的非战略行为特征采用softmax函数激活,并将得到的激活结果输入到动作响应模块,得到网络攻防博弈中攻击者的战略行为预测结果。
52.在其中一个实施例中,动作响应模块中的动作响应层为全连接层。
53.在其中一个实施例中,非战略行为特征包括:最大化最大收益、最大化最小收益、最小化最大遗憾、最小化最小不公平性和最大化最大整体利益。
54.博弈论特征可以解释为在给定博弈描述的情况下输出策略,即博弈参与者的动作分布。通过输出一个向量f的方式表达特征,如果攻击者的动作i不对应于目标特征,则对于所有的,;当攻击者的动作i对应于目标特征时,,其中是对应于目标特征的动作次数。如果攻击者的动作i唯一满足该特征,则。使用近似等式,是因为使用softmax函数构造特征,因此输出接近或作为我们的结果。
55.混合特征层将攻击者和防御者的归一化收益矩阵和∈ r作为输入,输出是混合的非战略行为特征,也就是每个博弈参与者所有动作的概率分布。其中攻击者有m个可能的动作,防御者有n个可能的动作。
56.(1)最大化最大收益:攻击者可能的动作i的最大最大动作是最好情况下的最佳动作。博弈参与者希望最大化自己可能的收益,因此将采取最大最大行动(maxmax action),最大最大收益对应于乐观非战略类型。最大化最大收益的表达式为:
(3)其中,为攻击者可能的动作i的最大化最大收益,i为攻击者可能的动作,为由攻击者的m个可能的动作组成的集合,j为防御者可能的动作,为由防御者的n个可能的动作组成的集合,为攻击者和防御者同时分别选择i动作和j动作时对应的收益,是攻击者的归一化收益矩阵。
57.最大化最大收益的含义:假设防御者选择对攻击者最有利动作max
ꢀꢀ
j的情况下,攻击者选择最优动作max i后对应的收益,此时最大最大特征,其中是对应于最大最大行动的动作次数。如果动作i唯一满足该特征,则。
58.(2)博弈参与者的最大最小动作是在最坏情况下的最佳动作。这是对抗其他博弈参与者最安全的行动,最大化最小收益对应于悲观非战略类型。最大化最小收益的表达式为:(4)其中,为攻击者可能的动作i的最大化最小收益。
59.最大化最小收益的含义:对防御者的潜在行为做最悲观的估计,假设防御者选择对攻击者最不利动作min j的情况下,保证最佳的可能结果,即攻击者选择最优动作maxi后对应的收益,此时最大最小特征,其中是对应于最大最小行动的动作次数。
60.(3)基于最小化最大遗憾的准则,通过选择一个可能的动作来评估博弈参与者的最大遗憾,并计算出令遗憾最小的最佳动作。最小化最大遗憾的表达式为:(5)其中为攻击者可能的动作i的最小化最大遗憾,为遗憾,。
61.最小化最大遗憾的含义:对每个可能的动作来说,攻击者都存在一个可能的遗憾:通过对防御者的行为做出最佳响应,攻击者可以获得多少效用,当防御者选择动作j时,攻击者没有选对自己最有利的动作,最有利动作max i对应的收益与当前动作i下收益的差值,就是遗憾值。最小最大遗憾动作是最大遗憾中的最小动作。
62.(4)结果的公平性是指在网络攻防博弈中人类的共同特征。不公平性是指攻击者和防御者同时分别选择i动作和j动作时对应的收益的行最大值池化结果和列最大值池化结果之差的绝对值,即。最小化最小不公平性的表达式为:(6)其中,为攻击者可能的动作i的最小化最小不公平性,为不公平性,为攻击者和防御者同时分别选择i动作和j动作时对应的收益的行最大值池化结果,,为攻击者和防御者同时分别选择i动作和j动作时对应的收益的列最大值池化结果,,为防御者的归一化收益矩阵。
63.(5)一个博弈参与者可能会发现一种可取的动作,这个可能的动作能够为博弈参与者集体产生最佳的整体利益。最大化最大整体利益的表达式为:(7)其中,为攻击者可能的动作i的最大化最大整体利益,为整体利益。
64.最大化最大整体利益的含义:攻击者和防御者都选择对攻击者最有利的动作时,对应的整体利益总和。
65.在一个实施例中,如图4所示,提供了一种基于元学习的策略博弈的行为预测方法,假设策略博弈数据集已经获得,按照图2所示形式将数据集传入预测模型。图2中的矩阵是博弈{gi}的收益矩阵,它的最后一行带有阴影背景列出了每一列动作选择的人类受试者的频率。本方法基于元学习的人类策略博弈行为的预测方法,具体实现步骤如下:步骤一:通过具有混合特征的深度神经网络进行行为预测模型建模,行为预测模型包括混合特征层和动作响应模块两大部分,深度神经网络进行行为预测模型的网络结构如图3所示。与现有的行为特征层不同之处在于,本方法将行为特征与混合专家架构相结合建立预测模型;选定策略博弈的数据集,包括收益矩阵和参与博弈者的动作次数;设置元学习内循环和外循环中神经网络的超参数和。
66.其中,混合特征层以攻击者和防御者的归一化收益矩阵和作为输入,并输出混合的非战略行为特征(即每个博弈参与者在博弈中的动作概率分布),其中攻击者有m个可能的动作,而防御者有n个可能的动作。使用混合专家架构来集成五种非战
略行为,分别是最大化最大收益、最大化最小收益、最小化最大遗憾、最小化最小不公平性和最大化最大整体利益,下面依次说明:最大化最大收益(maxmax payoff):博弈参与者的最大化最大动作指的是最佳情况下的最佳动作,最大化最大收益的定义如式(3)所示。
67.最大化最小收益(maxmin payoff):博弈参与者的最大化最小动作是在最坏情况下选择最好的动作,最大化最小收益的定义如式(4)所示。
68.最小化最大遗憾(minmax regret):基于最小化最大遗憾的准则,通过选择一个可能的动作来评估博弈参与者的最大遗憾,并计算出使遗憾最小的最佳动作。最小化最大遗憾的定义如式(5)所示。
69.最小化最小不公平性(minmin unfairness):结果的公平性是战略情况下人类博弈的一个共同特征,最小化最小不公平性的定义如式(6)所示。
70.最大化最大整体利益(maxmax welfare):一个非战略博弈参与者可能会选择一个对博弈参与者集体产生最佳整体利益的行动,最大化最大整体利益的定义如式(7)所示。
71.为了结合这些特性,使用如图3所示的基于混合专家架构的行为预测模型,其中混合专家架构中的权重取决于输入。每个专家模型作为特征之一。显然,这种混合专家架构中的依赖关系允许权重随着不同的网络攻防过程而变化。这是更接近现实的做法,因为在不同的网络攻防博弈中,一个博弈参与者可能会根据不同的非战略标准做出决定。
72.动作响应模块的架构与现有方法的架构相同,但是现有方法中仅使用了一个可能的动作响应层,因为当动作响应层超过一个时,神经网络显示出过拟合的迹象。本发明中使用元学习来消除这种过度拟合,并根据数据集中样本数的增加调整动作响应层的层数,更有效地获得潜在的行为预测模型。
73.步骤二:随机初始化行为预测模型参数;从数据集中提取出一部分数据作为新任务来测试训练好的行为预测模型的学习效果,其余部分划分为训练集和测试集为元学习提供训练数据。
74.步骤三:使用三种构建行为预测任务的方法从数据集中提取特征,并划分元任务。每个元任务由u个网络攻防博弈和人类受试者所选动作的统计数据组成。
75.第一种构建任务的方法是采用博弈论方法。研究结果表明,预测模型的性能对具有不同优势可解性和均衡结构属性的所选博弈类型敏感。基于这点,将网络攻防博弈划分为两大类任务:(1)一个网络攻防博弈是否可以通过迭代去除主导策略(严格或弱)来解决,以及需要多少步迭代。主要有弱占优可解、严格占优可解和无占优可解三类元任务。
76.(2)每场博弈所拥有的纳什均衡的数量和类型。根据纳什均衡解的数量和类型,划分为纯策略的单一纳什均衡、混合策略的单一纳什均衡以及拥有多个纯策略或混合策略的多重纳什均衡。
77.第二种构建任务的方法是使用混合专家架构中生成的非战略行为特征。对于每个网络攻防博弈,我们将其提取的博弈参与者特征表示为,其中每个特征的评价向量是博弈参与者所有动作的概率分布。例如,如果一个网络攻防博弈允许一个博弈参与者有m个可能的动作可供选择,并且在神经网络中设计了k个特征,那么
可以使用导出的 m
ꢀ×ꢀ
k 矩阵来表征网络攻防博弈的非战略行为特征。此外,可以在网络攻防博弈中使用所有这些特征向量来进行抽象表示。鉴于这些网络攻防博弈的非战略行为特征,我们使用聚类方法来构建元学习任务。特别是,将训练好的神经网络的隐藏层输出作为网络攻防博弈的特征收益矩阵,然后选择关联系数来衡量这些样本特征的相似性,并根据特征在空间中的分布形式,采用高斯混合模型进行聚类,实现子任务的自动构建。
78.第三种构建任务的方法是使用深度聚类构建任务。对于原始网络攻防博弈集{gi},根据其潜在的特征,可以通过深度聚类构建元学习任务,联合学习神经网络的参数和结果特征的聚类分配。一般来说,我们无法确定符合真实网络攻防博弈类别的标签信息,因此在深度聚类方法中使用自动编码器网络进行无监督学习。自编码器网络由编码器和解码器组成,以输入数据作为监督信息,引导神经网络学习映射关系。在训练网络时,期望得到能够准确表征网络攻防博弈的重构输出在{gi}中,并对输出信息进行聚类。与前两种方法相比,深度聚类通过自编码器网络提取原始网络攻防博弈中攻防双方的数据集的潜在特征,可以很好地找到策略博弈中的自然聚类结构,提高算法的学习性能。
79.步骤四:元训练阶段,采用模型无关元学习方法,在训练集上按批次采样n个子任务。maml使元学习器能够从各种预测任务中聚合上下文信息,从而产生一个通用模型初始化模型参数。一个有效的通用初始化将作为新任务中的一个最优初始权重,而无需在新任务中从头开始学习。
80.步骤五:进入内循环部分,在每个子任务中针对u个网络攻防博弈评估损失。
81.步骤六:使用梯度下降计算每个子任务中的适应参数,内循环中参数更新公式如式(1)所示。在内循环中,通过对每个子任务的训练找到相对于该子任务的最优参数,计算相对于这些最优参数的梯度,并通过在新一批子任务上训练,更新随机初始化参数,使得随机初始化参数移动到最佳位置上。
82.步骤七:适应阶段,在测试集中更新模型参数,外循环中参数更新公式为如式(2)所示。在外循环中结合每个子任务相对于最优参数的梯度更新元学习的网络参数,以此作为元知识送入元学习模型中,引导预测器在下一个子任务上向拥有共同规律的方向学习。
83.步骤八:根据元学习训练得到的预测模型在新任务中对网络攻防博弈中攻击者略博弈行为进行预测。
84.应该理解的是,虽然图1和图4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1和图4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
85.在一个实施例中,提供了一种基于元学习的策略博弈的行为预测器,包括:数据集获取模块、行为预测模型构建模块、行为预测任务划分模块、行为预测模型元学习训练模块和行为预测模块,其中:数据集获取模块,用于获取网络攻防博弈数据集,并将数据集划分为用于测试训
练好的行为预测模型效果的新任务和用于元学习的训练样本;数据集由若干独立的网络攻防博弈数据构成,每个网络攻防博弈数据包括网络攻防双方的收益矩阵和动作次数。
86.行为预测模型构建模块,用于构建基于深度神经网络的行为预测模型;行为预测模型包括混合特征层和动作响应模块;混合特征层用于根据网络攻防双方的收益矩阵采用混合专家架构,得到混合的非战略行为特征;动作响应模块用于根据混合的非战略行为特征采用p层动作响应层,得到网络攻防博弈中攻击者的战略行为预测结果,其中p为大于等于1且小于等于4的整数。
87.行为预测任务划分模块,用于根据训练样本采用多种元任务划分方法构建行为预测任务。
88.行为预测模型元学习训练模块,用于对行为预测模型参数进行随机初始化,并设置元学习率超参数;根据多种行为预测任务、行为预测模型参数、元学习率超参数以及新任务,采用模型无关元学习方式对行为预测模型进行训练,得到训练好的行为预测模型。
89.行为预测模块,用于将新任务中网络攻防双方的收益矩阵输入到训练好的行为预测模型中,得到网络攻防博弈中攻击者的战略行为预测结果。
90.在其中一个实施例中,行为预测任务划分模块,还用于根据训练样本,采用博弈论方法构建具有博弈特征的行为预测任务;根据训练样本输入到行为预测模型的混合特征层中得到的混合的非战略行为特征,采用聚类方法来构建具有非战略行为特征的行为预测任务;采用自编码器网络提取训练样本的潜在特征,根据潜在特征采用深度聚类构建行为预测任务。
91.在其中一个实施例中,行为预测任务划分模块,还用于根据每场博弈拥有的纳什均衡解的数量和类型,将训练样本划分为三类元任务,三类元任务分别为:纯策略的单一纳什均衡、混合策略的单一纳什均衡以及拥有多个纯策略或混合策略的多重纳什均衡。
92.在其中一个实施例中,行为预测任务划分模块,还用于根据每场博弈的不同优势可解性,将训练样本划分为三类元任务,三类元任务分别为:弱占优可解元任务、严格占优可解元任务和无占优可解元任务。
93.在其中一个实施例中,元学习率超参数包括内循环元学习率超参数和外循环元学习率超参数;行为预测模型元学习训练模块,还用于将训练样本划分为训练集和测试集;设置第一种行为预测任务为当前行为预测任务;在当前行为预测任务中,在训练集上抽取一批子任务执行内循环,其中n为一批子任务的数量,ts为第s个子任务,s为整数,;在每个子任务中抽取预设数量个样本分别对行为预测模型进行训练,并计算通过每个子任务训练的行为预测模型的损失;根据每个子任务训练的行为预测模型的损失采用梯度下降法对行为预测模型参数进行更新,得到每个子任务的行为预测模型的最优参数;其中,第s个子任务训练过程中行为预测模型参数更新表达式如式(1)所示;计算内循环阶段训练完成后每个子任务中相对于最优参数的梯度,取所有子任务相对于最优参数的梯度的平均值作为外循环参数的初始梯度;对外循环参数随机初始化后,根据外循环参数的初始梯度对外循环参数进行更新,外循环参数更新表达式如式(2)所示;利用测试集对通过每个子任务训练后的行为预测模型在外循环中进行适应训练,训练完成后进入下一轮元学习循环过程,直到满足元学习循环次数为止,得到第一种元学
习后的行为预测模型;将当前行为预测任务更新为第二种行为预测任务,将行为预测模型参数进行随机初始化,进入下一轮迭代训练,直到多种行为预测任务遍历完为止,得到多个元学习后的行为预测模型;选取预测精度最高的元学习后的行为预测模型作为训练好的行为预测模型。
94.在其中一个实施例中,混合特征层包括两个结构相同的混合专家架构,混合专家架构包括若干个专家,专家的数量与非战略行为特征的种类数量相同;行为预测模型元学习训练模块,还用于将新任务中的攻击者和防御者的收益矩阵分别输入到训练好的行为预测模型的混合特征层的两个混合专家架构中,得到混合的非战略行为特征;将混合的非战略行为特征采用softmax函数激活,并将激活结果输入到动作响应模块,得到网络攻防博弈中攻击者的战略行为预测结果。
95.在其中一个实施例中,该行为预测器的行为预测模型的动作响应模块中的动作响应层为全连接层。
96.在其中一个实施例中,非战略行为特征包括:最大化最大收益、最大化最小收益、最小化最大遗憾、最小化最小不公平性和最大化最大整体利益。
97.最大化最大收益的表达式如式(3)所示。
98.最大化最小收益的表达式如式(4)所示。
99.最小化最大遗憾的表达式如式(5)所示。
100.最小化最小不公平性的表达式如式(6)所示。
101.最大化最大整体利益的表达式如式(7)所示。
102.关于基于元学习的策略博弈的行为预测器的具体限定可以参见上文中对于基于元学习的策略博弈的行为预测方法的限定,在此不再赘述。上述基于元学习的策略博弈的行为预测器中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
103.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
104.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1