- 基于免疫进化的算法及应用研究
- 张瑞瑞 陈春梅
- 1031字
- 2025-02-25 16:15:10
2.2 RNSA的基本定义
SNS(self/nonself)理论表明机体依靠抗体(T细胞和B细胞)来识别自体抗原和非自体抗原,从而消除外来物质并维持机体的平衡和稳定。受此理论激发,在人工免疫系统中抗体被定义为检测器,用以识别非自体抗原,它们的质量决定了检测系统的准确率和有效性。但是,随机生成的候选检测器能够识别自体抗原并引发免疫自反应。依据生物免疫系统中的免疫耐受机制和免疫细胞的成熟过程,Forrest提出了否定选择算法来清除可以识别自体的检测器。本书讨论的否定选择算法是基于实值的算法。RNSA的基本概念表述如下。
定义2.1抗原。Ag={ag ag=<x1, x2, …, xn, rs>, xi∈ [0,1],1≤i≤n, rs∈[0,1]},为问题空间的全部样本。ag是集合中的一个抗原;n为数据维度;xi是样本ag的第i个属性的归一化值,同时代表了实值空间的位置;rs是ag的半径,代表了ag的变化阈值。
定义2.2自体集。Self⊂Ag代表了抗原集合中的全部正常样本。
定义2.3非自体集。Nonself⊂Ag代表了抗原集合中的全部异常样本。自体和非自体在不同的领域有不同的含义。对网络入侵检测来说,非自体代表网络异常,自体代表正常的网络活动;对病毒检测来说,非自体代表病毒特征码,自体代表合法的代码。

定义2.4训练集。Train⊂Self是自体集的一个子集,是检测的先验知识。Ns是训练集的大小。
定义2.5检测器集合。D={d|d=<y1, y2, …, yn, rd>, yj∈[0,1],1≤j≤n, rd∈[0,1]}。d是集合中的一个检测器,yj是检测器d的第j维属性,rd是检测器的半径,Nd是检测器集合的大小。
定义2.6匹配规则。A(ag, d)=dis(ag, d), dis(ag, d)是抗原ag和检测器d之间的欧式距离。在检测器的生成过程中,若dis(ag, d)≤rs+rd,那么检测器d引发了免疫自反应,不能成为成熟检测器。在检测器的检测过程中,若dis(ag, d)≤rd,那么检测器d识别该抗原ag为非自体。
定义2.7检测率。DR为非自体样本被检测器正确识别的数量占全部非自体的比例,表示为式(2.2)。TP为true positive,表示被检测器正确识别的非自体数量。FN为false negative,表示被检测器错误识别的非自体数量。

定义2.8误报率。FAR为自体样本被错误识别为非自体的数量占全部自体样本的比例,表示为式(2.3)。FP为false positive,表示被检测器错误识别的自体数量,TN为true negative,表示被检测器正确识别的自体数量。

检测器的生成过程,即RNSA的基本思想如表2.1所示。
表2.1 RNSA算法的基本思想

在RNSA算法中,随机生成的候选检测器需要与训练集中的全部元素进行距离计算dis(dnew, ag)。随着自体数量Ns的增加,执行时间将呈指数增长,同时检测器间的冗余覆盖率也将增长,导致大量无效检测器出现且效率低下。前面提到的问题极大地限制了否定选择算法的实际应用。