本发明属于面向多智能体博弈强化学习模型安全测试领域,具体涉及一种基于元模仿学习的多智能体博弈强化学习安全测试方法和系统。
背景技术:
1、强化学习是近年来人工智能备受关注的方向之一,多智能体强化学习是强化学习的一个分支,专注于多个智能体协同或竞争解决问题的情境。多智能体强化学习在许多领域有着广泛的应用,包括无人系统、智能交通、物流协调、多智能体游戏等。为了保证多智能体强化学习在安全攸关领域的安全应用,关键在于分析、发现多智能体强化学习算法、模型中的漏洞并进行安全测试。
2、不同于传统单智能体强化学习的任务,多智能体强化学习涉及到协同和竞争两种基本情境。在协同情境中,智能体的目标是共同最大化奖励,而在竞争情境中,各智能体可能追求相互竞争的目标。
3、多智能体博弈强化学习作为多智能体和博弈论的结合体,在解决大规模智能体之间的交互计算困难和学习对手策略均取得了不错的成果。随着研究的深入,越来越多的博弈论方法被用来分析多智能体问题,产生了平均场多智能体强化学习算法、基于对手意识的学习算法和多智能体深度确定性策略梯度算法等多智能体博弈强化学习方法。
4、然而,在实际情况下,由于多智能体博弈模型具有较高的模型复杂性,并不能直接获取并进行安全测试。多智能体模型涉及多个智能体之间的交互和协同,每个智能体都有自己的学习目标和策略,这些目标和策略之间需要相互协调,以实现整个系统的最优性能,这种复杂性使得模型的训练和学习变得非常困难。
5、此外,在实际应用中,获取大量的、标注好的数据是非常困难的,而多智能体模型需要大量的数据进行训练和学习,因此,数据的稀缺性也是导致多智能体模型难以获取的原因之一。通信和协同问题也是造成模型难以直接获取的因素。多智能体模型需要解决智能体之间的通信和协同问题,智能体之间需要交换信息、协商决策、共享资源等。因此,现有研究中,关于多智能体模型的直接获取仍然存在空白。
6、为了更好、成本更低地完成多智能体强化学习模型的安全性测试,需要提出一种能获取多智能体模型且高效率、低成本完成安全性测试的方法。
技术实现思路
1、本发明的目的是提供一种基于元模仿学习的多智能体博弈强化学习安全测试方法和系统,针对模型无法获取的问题,提出克隆方法获取影子模型,并对影子模型进行安全测试来挖掘模型中的安全漏洞以对模型进行安全加固,具有低成本、高效率的优势,对保证多智能体强化学习模型安全方面具有极其重要的实践意义。
2、为实现上述发明目的,本发明提供的技术方案如下:
3、第一方面,本发明实施例提供的一种基于元模仿学习的多智能体博弈强化学习安全测试方法,包括以下步骤:
4、步骤1:根据多智能体博弈场景的状态空间、动作空间以及奖励机制,构建目标智能体模型,采用mappo算法对目标智能体模型进行优化,输出最优策略,将包含最优策略的目标智能体模型作为专家模型,获取专家模型的状态动作对,作为专家演示数据并保存;
5、步骤2:构建元模仿学习模型,将专家演示数据输入元模仿学习模型进行迭代训练,使元模仿学习模型学习专家模型的先验知识策略,得到目标智能体模型的影子模型;
6、步骤3:采用策略梯度损失函数作为影子模型的损失函数,基于影子模型输出的模型参数相对于所述损失函数的梯度信息,生成对抗性扰动并添加到影子模型的输入中,重复多轮并评估每轮的模型输出,进行安全测试。
7、本发明提供了一种基于元模仿学习的多智能体博弈强化学习安全测试方法,用于对多智能体博弈强化学习模型进行安全测试。为了挖掘模型策略上安全漏洞的问题,通过元模仿学习的方式,实现仅通过少量专家样本数据进行克隆,获取与原模型策略相同的影子模型。并对影子模型使用梯度下降的方式进行安全测试来发现其策略上的安全漏洞,通过这种方式来发现并修复模型的安全漏洞,能够确保多智能体博弈的敏感信息不被恶意攻击者获取。
8、进一步的,步骤1中,所述的目标智能体模型,用于描述智能体在多智能体博弈场景下,根据自身状态做出动作得到对应奖励的过程,用公式描述为:
9、(n,s,a1,a2,...,an,t,γ,r1,r2,...,rn)
10、其中,n表示智能体的个数,s表示多智能体的联合系统状态,a1,a2,...,an表示多智能体的动作集合,t表示状态转移函数,用于根据系统当前的状态和动作,给出下一个状态的概率分布,t:s×a1×...×an×s’→[0,1],ri(s,a1,...,an,s’)表示第i个智能体在状态s时,执行动作到达下一个状态s’的奖励,γ表示折扣因子,γ∈[0,1]。
11、进一步的,步骤1中,所述的采用mappo算法对目标智能体模型进行优化,具体为:
12、目标智能体模型的当前策略π用公式表示为:
13、π={π1,π2,...,πn}
14、沿着单个智能体期望收益的梯度最大化方向进行优化,期望收益的梯度用公式表示为:
15、
16、其中,θi表示第i个智能体的网络参数,j(θi)表示期望收益,表示智能体i在状态s执行动作ai所获取的收益期望,πi(ai|oi)表示在策略πi下第i个智能体在状态oi时输出动作ai,表示动作值函数,以动作集合a1,a2,...,an和状态信息x为输入,输出第i个智能体的q值。
17、进一步的,步骤2中,所述的构建元模仿学习模型,具体为:
18、对元模仿学习模型进行层归一化,使所有隐层神经元都具有相同的归一化项;
19、基于xavier初始化方法,针对层归一化后的元模仿学习模型进行参数初始化,使元模仿学习模型每层的方差保持一致,得到元模仿学习模型。
20、进一步的,步骤2中,所述的将专家演示数据输入元模仿学习模型进行迭代训练,使元模仿学习模型学习专家模型的先验知识策略,得到目标智能体模型的影子模型,具体为:
21、在迭代训练过程中,使用均方误差作为影子模型的网络策略参数的损失函数,当损失函数最小化时,得到目标智能体模型的影子模型,学习过程中网络策略参数的损失函数lti(fφ),用公式表示为:
22、
23、其中,φ表示影子模型在执行任务ti时的网络策略参数,表示专家模型在时间为t上的观测值,作为影子模型的输入,表示影子模型在时间t上采取的动作输出,表示在任务ti下将观测值和动作输出之间的均方误差作为网络策略参数φ的损失函数。
24、进一步的,步骤3中,所述的采用策略梯度损失函数作为影子模型的损失函数,用公式表示为:
25、
26、其中,l(θ)表示影子模型的损失函数,es,a表示在状态s执行动作a时策略梯度的期望,π(a|s;θ)表示状态s下采取动作a的概率,θ表示模型的参数,θold表示模型的旧参数,表示状态s下采取动作a的优势函数。
27、进一步的,步骤3中,所述的对抗性扰动,用公式表示为:
28、δ=ε·sign(▽sl(θ))
29、其中,δ表示对抗性扰动,ε表示对抗性扰动的大小,▽s表示损失函数对于输入状态变化的梯度。
30、第二方面,为实现上述发明目的,本发明实施例还提供了一种基于元模仿学习的多智能体博弈强化学习安全测试系统,包括专家数据收集单元、影子模型获取单元、模型安全测试单元;
31、所述专家数据收集单元用于根据多智能体博弈场景的状态空间、动作空间以及奖励机制,构建目标智能体模型,采用mappo算法对目标智能体模型进行优化,输出最优策略,将包含最优策略的目标智能体模型作为专家模型,获取专家模型的状态动作对,作为专家演示数据并保存;
32、所述影子模型获取单元用于构建元模仿学习模型,将专家演示数据输入元模仿学习模型进行迭代训练,使元模仿学习模型学习专家模型的先验知识策略,得到目标智能体模型的影子模型;
33、所述模型安全测试单元用于采用策略梯度损失函数作为影子模型的损失函数,基于影子模型输出的模型参数相对于所述损失函数的梯度信息,生成对抗性扰动并添加到影子模型的输入中,重复多轮并评估每轮的模型输出,进行安全测试。
34、第三方面,为实现上述发明目的,本发明实施例还提供了一种基于元模仿学习的多智能体博弈强化学习安全测试设备,包括存储器和处理器,所述存储器用于存储计算机程序,所述处理器用于当执行所述计算机程序时,实现第一方面本发明实施例提供的基于元模仿学习的多智能体博弈强化学习安全测试方法。
35、第四方面,为实现上述发明目的,本发明实施例还提供了一种计算机可读的存储介质,所述存储介质上存储有计算机程序,所述计算机程序使用计算机时,实现第一方面本发明实施例提供的基于元模仿学习的多智能体博弈强化学习安全测试方法。
36、本发明的有益效果如下:
37、(1)本发明提供的元模仿学习的多智能体博弈强化学习模型的安全测试方法,以多智能体近端策略优化算法(mappo)作为网络基础;
38、(2)本发明提出采用元模仿学习的方法,能够在少量样本的情况下学到泛化的策略,相较于模仿学习来说,能在数据有限的情况下提高学习效率;
39、(3)本发明提出通过元模仿学习克隆目标模型,可以在安全测试中复现潜在问题并进行调试,有助于理解模型的决策过程,找到问题的根本原因,并采取相应的改进措施,极大程度上节省了多智能体博弈强化学习场景下安全测试的时间成本和人力财力成本。
1.一种基于元模仿学习的多智能体博弈强化学习安全测试方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于元模仿学习的多智能体博弈强化学习安全测试方法,其特征在于,步骤1中,所述的目标智能体模型,用于描述智能体在多智能体博弈场景下,根据自身状态做出动作得到对应奖励的过程,用公式描述为:
3.根据权利要求1所述的基于元模仿学习的多智能体博弈强化学习安全测试方法,其特征在于,步骤1中,所述的采用mappo算法对目标智能体模型进行优化,具体为:
4.根据权利要求1所述的基于元模仿学习的多智能体博弈强化学习安全测试方法,其特征在于,步骤2中,所述的构建元模仿学习模型,具体为:
5.根据权利要求1所述的基于元模仿学习的多智能体博弈强化学习安全测试方法,其特征在于,步骤2中,所述的将专家演示数据输入元模仿学习模型进行迭代训练,使元模仿学习模型学习专家模型的先验知识策略,得到目标智能体模型的影子模型,具体为:
6.根据权利要求1所述的基于元模仿学习的多智能体博弈强化学习安全测试方法,其特征在于,步骤3中,所述的采用策略梯度损失函数作为影子模型的损失函数,用公式表示为:
7.根据权利要求1所述的基于元模仿学习的多智能体博弈强化学习安全测试方法,其特征在于,步骤3中,所述的对抗性扰动,用公式表示为:
8.一种基于元模仿学习的多智能体博弈强化学习安全测试系统,其特征在于,包括专家数据收集单元、影子模型获取单元、模型安全测试单元;
9.一种基于元模仿学习的多智能体博弈强化学习安全测试设备,包括存储器和处理器,所述存储器用于存储计算机程序,其特征在于,所述处理器用于当执行所述计算机程序时,实现权利要求1-7任一项所述的基于元模仿学习的多智能体博弈强化学习安全测试方法。
10.一种计算机可读的存储介质,所述存储介质上存储有计算机程序,其特征在于,所述计算机程序使用计算机时,实现权利要求1-7任一项所述的基于元模仿学习的多智能体博弈强化学习安全测试方法。
