(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 CN 108363909 A(43)申请公布日 2018.08.03
(21)申请号 201810131387.2(22)申请日 2018.02.09
(71)申请人 南京航空航天大学
地址 210007 江苏省南京市秦淮区御道街
29号(72)发明人 曲健 王鹏 许蕾 杨能俊 (74)专利代理机构 南京苏高专利商标事务所
(普通合伙) 32204
代理人 柏尚春(51)Int.Cl.
G06F 19/24(2011.01)G06F 19/00(2018.01)G06F 19/18(2011.01)
权利要求书2页 说明书6页 附图1页
(54)发明名称
基于信息熵的异常检测方法
(57)摘要
本发明公开了一种基于信息熵的异常检测方法,包括:(1)建立抗原数据信息熵模型;(2)初始化抗原数据群及相关参数;(3)选取部分抗原数据对当前抗原采样;(4)进行抗原动态迁移;(5)判断是否存在新抗原;若仍有新抗原,则转至步骤3;若无,进行步骤6;(6)根据成熟抗原评定被采样抗原安全性。本发明在标准DCA算法的基础上,通过规格化函数统一处理原始数据,建立了抗原数据信息熵模型,用于量化抗原携带的信息中每一维数据的权重,在此基础上得到了后续待检测抗原与当前抗原的平均差异性,并借助Sigmoid函数动态设置迁移阈值,提升了异常检测的检测效果。
CN 108363909 ACN 108363909 A
权 利 要 求 书
1/2页
1.一种基于信息熵的异常检测方法,其特征在于:包括:(1)建立抗原数据信息熵模型;(2)初始化抗原数据群及相关参数;
(3)选取部分抗原数据对当前抗原采样;(4)进行抗原动态迁移;(5)判断是否存在新抗原;若仍有新抗原,则转至步骤3;若无,进行步骤6;(6)根据成熟抗原评定被采样抗原安全性。
2.根据权利要求1所述的基于信息熵的异常检测方法,其特征在于:所述步骤(1)中,创建工程应用问题与树突状细胞算法的映射关系,利用规格化函数处理原始抗原数据后,建立抗原数据信息熵模型,计算每一维抗原数据权重。
3.根据权利要求1所述的基于信息熵的异常检测方法,其特征在于:所述步骤(4)中,计算当前抗原与后续抗原的平均差异性,根据动态迁移阈值确定抗原是否迁移;迁移出成熟抗原,未成熟抗原放回抗原数据群。
4.根据权利要求1所述的基于信息熵的异常检测方法,其特征在于:所述步骤(1)中,具体步骤:
(1.1)待检测抗原数据集A包含n个抗原,每个抗原携带m维数据,构造抗原数据集属性值矩阵为:
A中第i个抗原可以表示为:ai=(xi1,xi2,…,xij,…,xim)
其中,xij表示第i个抗原的第j维数据值;
(1.2)计算第i个抗原的第j维数据在所有抗原的第j维数据中出现的概率:
第i个抗原的第j维数据的不确定性概率可以表示为:
(1.3)计算第j维数据的平均不确定性,即该维数据的信息熵:
(1.4)计算第j维数据的波动系数:uj=1-Hj
(1.5)计算各维数据在抗原检测中所占的权重:
2
CN 108363909 A
权 利 要 求 书
2/2页
s.t.j=1,2,…,m其中,0≤wj≤1且两个抗原之间的差异性:
其中,aij和akj分别表示第i个抗原和第k个抗原的第j维数据值,dw∈[0,10]。5.根据权利要求4所述的基于信息熵的异常检测方法,其特征在于:所述步骤(4)中,具体步骤:
(4.1)按照输入时间序列,选取当前抗原ai后的连续t个抗原(ai+1,ai+2,…,ai+t),计算这t个抗原与当前抗原ai的平均差异性:
(4.2)引入Sigmoid函数,建立抗原平均差异性与迁移阈值间的关系:
Sigmoid函数进一步拓展为:
其中,θ表示范围系数,使得(4.3)动态迁移阈值为:
ε表示敏感系数;
3
CN 108363909 A
说 明 书
基于信息熵的异常检测方法
1/6页
技术领域
[0001]本发明涉及一种异常检测方法,尤其涉及一种基于信息熵的异常检测方法。背景技术
[0002]免疫系统是生物体中除神经系统以外,最为智能和复杂的系统,通过多重机制共同保护生物体免收外来抗原的入侵。这种复杂性,使得免疫系统至今仍未被科研学者彻底了解,但是也为人工计算模型提供了源源不断的参考依据。人工免疫系统(Artificial Immune System,AIS)便是借鉴以人类为代表的生物体免疫系统内的各种机制,逐渐发展形成的求解各类工程问题的计算和信息技术,现在已经被广泛应用于自动控制、故障诊断、网络安全、优化计算等方面。[0003]免疫网络算法、克隆选择算法和否定选择算法等人工免疫研究成果,都是基于20世纪80年代的生物免疫研究中的“Self-NonSelf”理论,通过判断抗原与自体、非自体的相似性,从而确定抗原是否具有威胁。但是这种理论难以解释很多现象,例如人体对食物和水没有产生免疫反应。因此,生物学界在1994年提出了全新的生物免疫危险理论模式,认为引起免疫应答的关键因素是机体中是否存在足够强度的危险信号,而不是机体中是否存在非己抗原。
[0004]树突状细胞算法(Dendritic Cells Algorithm,DCA)便是基于“危险理论”的人工免疫研究成果,在2005年被首次提出。DCA算法不需要大量的训练集,在实时检测中具有较好的性能,与较早的人工免疫算法相比更具说服力,拥有更广的适用范围,现在已经被应用于信息通信、异常检测等多个领域。但是DCA算法忽略了算法初始化阶段对输入数据进行统一处理的重要性,没有考虑后续待检测抗原对当前抗原检测结果准确性的影响。发明内容
[0005]发明目的:针对以上问题,本发明提出一种基于信息熵的异常检测方法。[0006]技术方案:为实现本发明的目的,本发明所采用的技术方案是:一种基于信息熵的异常检测方法,包括:[0007](1)建立抗原数据信息熵模型;[0008](2)初始化抗原数据群及相关参数;[0009](3)选取部分抗原数据对当前抗原采样;[0010](4)进行抗原动态迁移;[0011](5)判断是否存在新抗原;若仍有新抗原,则转至步骤3;若无,进行步骤6;[0012](6)根据成熟抗原评定被采样抗原安全性。[0013]所述步骤(1)中,创建工程应用问题与树突状细胞算法的映射关系,利用规格化函数处理原始抗原数据后,建立抗原数据信息熵模型,计算每一维抗原数据权重。[0014]所述步骤(4)中,计算当前抗原与后续抗原的平均差异性,根据动态迁移阈值确定抗原是否迁移;迁移出成熟抗原,未成熟抗原放回抗原数据群。
4
CN 108363909 A[0015]
说 明 书
2/6页
所述步骤(1)中,具体步骤:
[0016](1.1)待检测抗原数据集A包含n个抗原,每个抗原携带m维数据,构造抗原数据集属性值矩阵为:
[0017]
[0018][0019][0020][0021][0022][0023][0024][0025][0026][0027][0028][0029][0030][0031][0032][0033][0034]
A中第i个抗原可以表示为:ai=(xi1,xi2,…,xij,…,xim)
其中,xij表示第i个抗原的第j维数据值。
(1.2)计算第i个抗原的第j维数据在所有抗原的第j维数据中出现的概率:
第i个抗原的第j维数据的不确定性概率可以表示为:
(1.3)计算第j维数据的平均不确定性,即该维数据的信息熵:
(1.4)计算第j维数据的波动系数:uj=1-Hj
(1.5)计算各维数据在抗原检测中所占的权重:
s.t.j=1,2,…,m其中,0≤wj≤1且两个抗原之间的差异性:
[0035]
其中,aij和akj分别表示第i个抗原和第k个抗原的第j维数据值,dw∈[0,10]。
[0037]所述步骤(4)中,具体步骤:[0038](4.1)按照输入时间序列,选取当前抗原ai后的连续t个抗原(ai+1,ai+2,…,ai+t),计算这t个抗原与当前抗原ai的平均差异性:
[0036]
5
CN 108363909 A
说 明 书
3/6页
[0039][0040][0041][0042][0043][0044][0045][0046][0047]
(4.2)引入Sigmoid函数,建立抗原平均差异性与迁移阈值间的关系:
Sigmoid函数进一步拓展为:
其中,θ表示范围系数,使得(4.3)动态迁移阈值为:
ε表示敏感系数。
有益效果:本发明方法在标准DCA算法的基础上,通过规格化函数统一处理原始数
据,建立抗原数据信息熵模型,量化抗原携带的信息中每一维数据的权重,在此基础上得到后续待检测抗原与当前抗原的平均差异性,并借助Sigmoid函数动态设置迁移阈值。本发明提出的改进方法提升了标准DCA算法的准确性,在环境状态转换时,依然具有稳定的性能。
附图说明
[0048]图1是本发明的实施流程示意图。
具体实施方式
[0049]下面结合附图和实施例对本发明的技术方案作进一步的说明。[0050]如图1所示,本发明所述的基于信息熵的异常检测方法,具体包括:[0051](1)建立抗原数据信息熵模型;[0052]创建工程应用问题与DCA算法的映射关系,利用规格化函数处理原始抗原数据后,建立抗原数据信息熵模型,计算每一维抗原数据权重。[0053]Shannon的信息熵理论与信息熵计量模型,为量化随机事件的信息量提供了依据。根据该理论,信息量的大小与信息的不确定程度密切相关。信息不确定程度越大,该信息携带的信息量越大;信息不确定程度越小,该信息携带的信息量也就越小。[0054]每个抗原携带多种信息,每个信息对于未成熟DC分化的作用程度也不相同。由于抗原相互,抗原携带的某一类信息的平均不确定性,可以通过计算单个抗原携带的该类数据的不确定性的平均值而得到,因此借鉴信息熵理论的思想,构建抗原输入信号的信息熵模型,为抗原携带的每一维数据加权。[0055]具体步骤:[0056](1.1)假设待检测抗原数据集A包含n个抗原,每个抗原携带m维数据,可以构造抗原数据集属性值矩阵为:
6
CN 108363909 A
说 明 书
4/6页
[0057]
[0058][0059][0060][0061][0062][0063]
A中第i个抗原可以表示为:ai=(xi1,xi2,…,xij,…,xim)
其中,xij表示第i个抗原的第j维数据值。
(1.2)计算第i个抗原的第j维数据在所有抗原的第j维数据中出现的概率:
所占的比重越大,表示该数据出现次数越多,其不确定性也就越小,则第i个抗原
的第j维数据的不确定性概率可以表示为:
[0065][0066][0067]
[00]
(1.3)计算第j维数据的平均不确定性,即该维数据的信息熵:
其中,Hj越大,表示待检测抗原数据集A中所有抗原的第j维数据取值差异较小,用
于区分抗原是否安全的作用越小;Hj越小,表示第j维数据的取值差异较大,用于区分抗原是否安全的作用越大;当所有抗原的第j维数据均为相同值时,Hj=1,该维数据无法用于区分抗原是否安全。[0069](1.4)计算第j维数据的波动系数:[0070]uj=1-Hj[0071]其中,波动系数越小,该维数据用于区分抗原是否安全的作用越小;波动系数越大,该维数据用于区分抗原是否安全的作用越大。[0072](1.5)计算各维数据在抗原检测中所占的权重:
[0073][0074][0075][0076]
[0068]
s.t.j=1,2,…,m其中,0≤wj≤1且
在输入信号信息熵模型的基础上,可以定义加权欧氏距离计算公式,用来表示两个抗原之间的差异性:
[0077]
7
CN 108363909 A[0078]
说 明 书
5/6页
其中,aij和akj分别表示第i个抗原和第k个抗原的第j维数据值;dw(ai,ak)的值越
小,两个抗原差异性越小,相似性越高;由于每个抗原的输入信号已经通过规格化函数映射到[0,10],所以dw∈[0,10]。
[0079]与DCA算法相关的现有研究成果,忽略了算法初始化阶段对数据进行统一处理的重要性,导致算法应用于其他领域时需要重新考虑数据映射及处理方式,为算法在工程领域的实际应用带来的障碍。
[0080]由于同一抗原中不同属性的输入信号可能存在较大差异,为了便于分析和比较输入信号,在算法初始化阶段可以对PAMP、DS、SS等输入信号进行规格化处理。规格化函数为:
[0081]
其中,x为原始输入信号值,当x∈[m,n]时进行线性映射,映射后的输入信号在0到10之间。[0083](2)初始化DC群及算法参数;[0084]创建DCs,计算加入每一维抗原数据权重后的抗原输入信号PAMP、DS、SS,初始化相关参数。[0085](3)选取部分DC采样;
[0086]从DCs中随机选取部分DC对当前抗原采样,计算输出信号。[0087](4)动态迁移;
[0088]
[0082]
计算当前抗原与后续抗原的平均差异性根据动态迁移阈值确定
DC是否迁移;迁移出成熟DC,未成熟DC放回DC群。
[00]迁移阈值MThreshold用于控制DC细胞的成熟速度,影响着算法对当前环境状态的响应时间,标准DCA算法中采用固定迁移阈值。但是,外界环境复杂多变,环境状态可能在“安全-危险”之间切换,还可能发生多种不同类型的抗原入侵生物体的情况。[0090]为了优化这一问题,本发明对待采样抗原按照输入时间序列排序,通过后续抗原与当前抗原的差异性,动态设置迁移阈值,从而提高算法在环境状态变换时的响应速度,减小时间序列上后续不同类型的抗原对当前抗原检测结果的影响。[0091](4.1)按照输入时间序列,选取当前抗原ai后的连续t个抗原(ai+1,ai+2,…,ai+t),计算这t个抗原与当前抗原ai的平均差异性:
[0092][0093]
的值越小,表示环境状态变化越小,后续抗原类型可能与当前抗原越相似;
的值越大,表示环境状态变化越大,应该适当减小迁移阈值,加快DC细胞成熟,从而降低后
续抗原对当前抗原检测结果的影响。[0094](4.2)为了建立抗原平均差异性与迁移阈值间的关系,本发明引入Sigmoid函数:
[0095][0096]
Sigmoid函数在与神经网络相关的研究中常被用作阈值函数,当x趋于-∞时,
8
CN 108363909 A
说 明 书
渐近于1。
6/6页
渐近于0;当x趋于+∞时,
[0097][0098][0099]
Sigmoid函数可以进一步拓展为:
其中,θ表示范围系数,使得
的值越容易由于
ε表示敏感系数,在
的逐渐增大而产生变化。
所在的[0,10]区
间内ε越小,
[0100][0101]
(4.3)则动态迁移阈值可以表示为:
在实际应用中,可以通过调整范围系数、敏感系数的数值大小,来控制动态迁移阈值的变化情况。[0103](5)判断是否存在新抗原;若仍有新抗原,则转至步骤3;若无,进行步骤6;[0104](6)根据成熟DC评定被采样抗原安全性;计算每个被采样过的抗原的MCAV,判定抗原安全性。
[0105]本发明在标准DCA算法的基础上,通过规格化函数统一处理原始数据,建立了抗原数据信息熵模型,用于量化抗原携带的信息中每一维数据的权重,在此基础上得到了后续待检测抗原与当前抗原的平均差异性,并借助Sigmoid函数动态设置迁移阈值,提升了异常检测的检测效果。
[0102]
9
CN 108363909 A
说 明 书 附 图
1/1页
图1
10