一种基于小数据集和贝叶斯网络的威胁评估建模方法与流程

文档序号:11286974阅读:798来源:国知局
一种基于小数据集和贝叶斯网络的威胁评估建模方法与流程

本发明涉及一种利用机器学习技术进行威胁评估的建模方法。



背景技术:

对威胁源完成快速准确的威胁评估是实际作战的关键环节。一方面,在错综复杂、瞬息万变的作战环境中,敌方干扰及传感器性能局限等因素导致获取信息量或观测数据量不充分;另一方面,有时为了完成“先敌决策,先敌打击”的战术任务,不得不在数据尚不充分时进行威胁评估和作战决策。因此,亟需一种能够在不充分的数据条件下进行威胁评估建模的方法,这里将不充分数据称为小数据集。目前威胁评估建模方法的主要思想是根据评估对象选取威胁因子,进而将这些威胁因子进行综合。主要的方法有神经网络、支持向量机、贝叶斯网络、vague集、专家系统、模糊推理、线性加权和层次分析法等。在上述的方法中,仅有贝叶斯网络和支持向量机具有在小数据集条件下进行建模的能力,与支持向量机相比,贝叶斯网络具有类似人脑的概率理论基础、可解释的知识表述方式和灵活的推理机制。余舟毅等在文献《基于贝叶斯网络的威胁等级评估算法研究》中研究了基于贝叶斯网络的推理模型和推理算法,但是其中涉及的贝叶斯网络模型是根据经验主观给出的,缺少结合数据进行模型构建的过程,同时并不具备处理小数据集的能力。覃征等人在文献《基于模糊动态贝叶斯网络的态势威胁评估方法》中研究了数据模糊化过程、数据提取以及威胁评估的推理过程,但是同样未涉及小数据集的贝叶斯网络模型构建过程。



技术实现要素:

为了克服现有技术的不足,本发明提供一种基于小数据集的威胁评估建模方法。

本发明解决其技术问题所采用的技术方案包括以下步骤:

步骤1,对战场信息中的威胁数据进行预处理,包括目标速度v、进入角之和a、敌我距离dis以及目标威胁程度t,其中,目标速度vu为无人机速度;进入角之和为目标速度方向与目标线的夹角和无人机速度方向与目标线夹角之和;敌我距离为目标与无人机之间的距离;目标威胁程度

步骤2,将威胁数据作为节点,利用领域知识获取威胁数据的贝叶斯网络结构约束,改进bic评分其中,mijk是样本数据中满足xi=k、其父节点π(xi)=j的样本个数,m为样本数据总量,e为结构约束中对应边的存在概率,δ为调节参数,δ取10~100,i表示网络中第i个节点变量,n为节点变量数,qi为第i个节点的父节点取值状态数,ri为第i个节点的子节点取值状态数;

步骤3,采用k2算法学习威胁评估网络拓扑结构,步骤如下:

步骤a,从一个包含n个节点变量却没有边的图出发开始搜索;

步骤b,按照节点序ρ(x1,x2,...xi...,xn)进行搜索,在节点xi,将排在节点xi之前的变量进行组合,并从中选出节点xi的父节点集π(xi),找出使改进bic评分达到最大的父节点集π(xi);

步骤c,判断i是否等于n,如果相等,则算法结束,输出所得网络结构;否则,i值加一并返回步骤b;

步骤4,利用步骤3得到的网络拓扑结构获取网络参数的单调性约束,对于由n个变量x={x1,x2,...xn}组成的贝叶斯网g,设g中的节点xi有r种取值且取值状态集合为{1,2,...,k,...r},其父节点集π(xi)有q个取值且取值状态集合为{1,2,...,j,...q},令θijk=p(xi=k|π(xi)=j),则有θj1≤θij2≤......≤θijr或θij1≥θij2≥......≥θijr;

步骤5,根据参数的规范性,即父节点取值状态相同而子节点取值不同的一组参数相加的和为1,获取参数的取值区间

步骤6,认为参数在步骤5给出的取值区间内服从均匀分布,设参数θ服从u(θ1,θ2),[θ1,θ2]为参数取值范围,用b(α1,α2)等效u(θ1,θ2),即获取参数贝塔先验分布的超参数其中,均匀分布的期望均匀分布的二阶矩

步骤7,利用贝叶斯估计得到参数学习的结果式中nijk为符合父节点取值为j、子节点取值为k时的样本数,nij为父节点取值为j时的样本数,[αi,αj]为贝塔分布的超参数。

本发明的有益效果是:针对小数据集条件下的威胁评估建模问题,通过在结构建模阶段中引入贝叶斯网络边的存在约束,在参数建模阶段引入参数单调性约束,弥补了小数据集所包含信息不充分导致建模精度差的问题,不仅为小数据集条件下的威胁评估建模问题提供了一条可行的解决途径,而且也为其它领域中的小数据集建模问题提供了可参考的方法,具有较为广泛的应用前景。

附图说明

图1是无人机战场想定图;

图2是贝叶斯网络边的存在约束示意图;

图3是本文结构学习算法的中间结果示意图;

图4是20组数据量所得威胁评估bn结构示意图,其中,(a)是本文算法所得威胁评估bn结构,(b)是原始k2算法所得威胁评估bn结构;

图5是k2算法5000组数据所得的威胁评估bn结构示意图。

具体实施方式

下面结合附图和实施例对本发明进一步说明,本发明包括但不仅限于下述实施例。

本发明提供了一种基于小数据集的威胁评估建模方法,具体包含以下几个步骤:

步骤1:威胁数据的预处理

数据预处理包含威胁因素的选取和威胁数据的离散化。选用如图1所示的战场想定,想定中威胁目标包括雷达和防空阵地,我方有人机指挥无人机对敌方阵地进行防空压制。战场环境的复杂性决定了与威胁相关的因素非常多,本发明选取部分威胁因素作为威胁评估建模考虑的因子,下面给出所选的威胁因素和离散化的方法。

(1)目标速度(velocity,v):特指速度大小,无人机速度记为vu

(2)进入角之和(angel,a):目标速度方向与目标线的夹角和无人机速度方向与目标线夹角之和

(3)敌我距离(distance,dis):目标与无人机之间的距离

(4)目标威胁程度(threat,t),目标对我方作战单元威胁程度

步骤2:利用结构约束改进bic评分。

(1)根据领域知识获取的贝叶斯网络边的存在约束如图2所示。其中,虚线表示两个节点之间不存在边的概率,带箭头的实线表示存在边的概率。

(2)通过图2中给出的边的存在约束改进bic评分函数。结合评分函数的可分解性,将图2中的边的存在约束以一种类似局部结构先验的方式融入到结构学习评分中,进而得到改进后的bic评分如公式(1)所示。

其中,mijk是样本数据中满足xi=k,其父节点π(xi)=j的样本个数,m为样本数据总量,e为结构约束中对应边的存在概率,δ为调节参数,建议δ在10到100之间取值,i为网络中节点变量的下标,n为节点变量数,qi为父节点取值状态数,ri为子节点取值状态数。

步骤3:结合改进后的bic评分,采用k2算法学习威胁评估网络拓扑结构。具体步骤如下:

步骤a:从一个包含n个节点变量却没有边的图出发开始搜索。

步骤b:按照节点序ρ(x1,x2,...xi...,xn)进行搜索,以xi为例,将排在节点xi之前的变量进行组合,并从中选出xi的父节点集π(xi),通过计算vnew=bic((xi,π(xi))|d),找出使vnew=bic((xi,π(xi))|d)达到最大的父节点集π(xi),需要注意的是:x1的父节点集是空集。这里的评分为步骤2中的改进bic评分。

步骤c:判断i是否等于n,如果相等,则算法结束,输出所得网络结构。否则,执行i=i+1返回步骤b。

步骤4:利用步骤3得到的网络拓扑结构获取网络参数的单调性约束。一个由n个变量x={x1,x2,...xn}组成的贝叶斯网g,不失一般性,设g中的节点xi有r种取值且取值状态集合为{1,2,...,k,...r},1≤k≤r,其父节点集π(xi)有q个取值且取值状态集合为{1,2,...,j,...q},1≤j≤q。令θijk=p(xi=k|π(xi)=j),则有θij1≤θij2≤......≤θijr或θij1≥θij2≥......≥θijr。

步骤5:结合单调性约束和参数的规范性获取参数的取值区间。参数的规范性的含义为:父节点取值状态相同而子节点取值不同的一组参数相加的和为1。具体的转化过程可参考公式(2)。

步骤6:结合步骤5中参数的取值区间获取参数贝塔先验分布的超参数。公式(2)给出了参数的取值范围,在无其它先验的情况下,则可认为参数在区间内服从均匀分布。设参数θ服从u(θ1,θ2),[θ1,θ2]为参数取值范围。问题转化为如何用b(α1,α2)等效u(θ1,θ2),即:

采用矩估计求解公式(3)所描述的问题,具体步骤如公式(4)~(6)所示。

其中,[α1,α2]为待求贝塔分布的超参数,m1为贝塔分布的期望,m2为贝塔分布的二阶矩,m1为均匀分布的期望,m2为均匀分布的二阶矩。

步骤7:结合步骤6得到的贝塔先验分布的超参数,利用贝叶斯估计得到参数学习的结果。具体方法可参考公式(7),式中nijk为符合父节点取值为j,子节点取值为k时的样本数,nij为父节点取值为j时的样本数,[αi,αj]为贝塔分布的超参数。

通过计算机仿真对本算法进行了虚拟实施,具体实施过程如下:

步骤1通过对图1所示的战场任务想定进行仿真,获取战场信息并进行离散化,进而得到威胁信息数据,如表1所示。

表1经过数据预处理后的部分威胁信息数据

步骤2利用领域知识获取的贝叶斯网络结构约束如图2所示。目标威胁节点为1号节点,目标距离、目标与无人机的进入角之和以及目标速度节点分别为2、3、4号节点。

步骤3结合步骤2中的结构约束和公式(1)给出的改进后的bic评分,采用k2算法学习网络拓扑结构。

步骤a:从一个包含4个节点变量却没有边的图出发开始搜索。

步骤b:按照节点序ρ(x1,x2,x3,x4)进行搜索,x1的父节点集是空集,从i=2开始,通过计算vnew=bic((xi,π(xi))|d),找出使vnew=bic((xi,π(xi))|d)达到最大的父节点集π(xi),这里的评分为步骤2中的改进bic评分,d为样本数据。

步骤c:判断i是否等于4,如果相等,则算法结束,返回所得网络结构。否则,执行i=i+1返回步骤b。

图3给出了结构学习算法的中间结果,最终得到的网络结构如图4所示。图4(a)给出了利用本文算法得到的威胁评估bn结构。图4(b)给出了经典k2算法得到的威胁评估bn结构。图5给出了样本数据为5000时经典k2算法所得的威胁评估bn结构。通过对比分析发现,与经典k2算法相比,本文算法在数据量为20时所得的威胁评估bn结构与数据量为5000时所得的结构更为接近,说明本文算法能够更好的适应小数据集,在小数据集条件下能够获得较高的结构学习精度。

步骤4结合步骤3得到的威胁评估bn结构获取参数的单调性约束,如公式(8)~(10)所示。

步骤5利用公式(2)并结合步骤4给出的参数单调性计算得到参数的取值范围,具体如公式(11)所示。

步骤6利用公式(3)~(6)和步骤5中得到的参数区间求解参数贝塔先验的超参数,具体如公式(12)~(13)所示。

步骤7利用公式(7)和步骤6中得到的参数贝塔先验的超参数计算威胁评估bn参数,具体结果如表2~4所示。表2是数据量为5000时最大似然估计算法所得的参数,表3是数据量为20时最大似然估计算法所得参数,表4是数据量为20时本文算法所得参数。

表2数据量为5000时最大似然估计所得参数

表3数据量为20时最大似然估计所得参数

表4数据量为20时本文算法所得参数

通过对比分析发现,在数据量为20时,与最大似然估计算法相比,本文算法所得的参数更接近于数据量为5000时所得的参数,说明本文算法更适应于小数据集条件下的bn参数学习问题,具有更高的学习精度。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1