二次否定选择算法
否定选择算法(NSA)是人工免疫系统应用于异常检测生成检测器的重要算法,传统NSA随机产生候选检测器与全部训练集进行耐受以消除免疫自反应,该匹配过程是NSA的主要时间开销,由于候选检测器在自体耐受过程中未考虑其与已有成熟检测器集的相互覆盖,导致生成的成熟检测器与已有检测器重复覆盖,经历不必要的自体耐受,从而导致NSA生成检测器数量过多,检测器的生成效率过低,限制了人工免疫系统在异常检测中的应用.为此,本文提出了二次否定选择算法(2一NSA),算法包括两次否定选择过程,分别耐受检测器集和训练集.每个随机产生的候选检测器先与已有成熟检测器集耐受为第一次否定选择,清除识别已有成熟检测器的候选检测器,耐受成功的候选检测器成为半成熟检测器;半成熟检测器在已有成熟检测器覆盖之外进行训练集的自体耐受为第二次否定选择,清除识别自体的半成熟检测器,耐受成功的半成熟检测器成为成熟检测器加入检测器集合.2-NSA算法有效避免了候选检测器在已有成熟检测器覆盖范围之内的自体耐受,大大减少了成熟检测器的数量,提高了成熟检测器集的生成效率,降低了算法的时间复杂度.此外,2-NSA算法按检测器半径从大到小优先产生覆盖范围更大的检测器,进一步避免与已有成熟检测器的重复覆盖,减少成熟检测器的数量.理论分析表明2-NSA算法有效减小了成熟检测器数量、提高了检测器生成效率,降低了系统的误报率.对比实验结果表明:在标准数据集Iris和期望覆盖率为99%的情况下,与经典的RNSA和V-Detector等实值否定选择算法相比,2-NSA算法需要成熟检测器的数量分别减少了99.84%和95.69%,误报率分别降低了60.13%和50.90%,产生成熟检测器集的时间代价分别缩减了99.79%和66.84%.
人工免疫系统、否定选择算法、检测器、变半径检测器、二次否定选择算法
43
国家自然科学基金61173159,60873246;教育部重大培育基金708075
2014-03-17(万方平台首次上网日期,不代表论文的发表时间)
共16页
529-544