异常检测中实值自我集优化与GP过程挖掘方法
立即解锁
发布时间: 2025-08-20 01:05:09 阅读量: 1 订阅数: 6 


人工智能与计算智能前沿进展
### 异常检测中实值自我集优化与GP过程挖掘方法
#### 异常检测中实值自我集优化
在异常检测领域,实值自我集的优化至关重要。首先,我们来了解一些关键的概念和公式。
设 $N_d$ 为检测器的数量,$N_{0d}$ 为候选者的数量。当 $m_p$ 足够小且 $N_s$ 足够大时,有 $(1 - m_p)^{N_s} \approx e^{-N_s m_p}$;当 $N_d$ 足够大时,$(1 - m_p)^{N_d} \approx e^{-N_d m_p}$。由 $N_{0d} = \frac{\ln(f)}{ \ln(1 - m_p)}$ 可推出 $N_{0d} = \frac{\ln(f)}{ \ln(1 - m_p)} = \frac{\ln(f)}{ - m_p}$(当 $m_p$ 很小时),进而得到 $\frac{N_{0d}}{N_s} = \frac{\ln(f)}{(1 - m_p)N_s m_p}$。从这个公式可以看出,$N_{0d}$ 与 $N_s$ 呈指数关系,即自我样本越多,候选者越多,检测器训练成本也越高。
自我样本之间的重叠程度可以用以下公式近似衡量:
$Overlapping(s_i, s_j) = e^{-\frac{\|s_i - s_j\|^2}{2r_s^2}}$
当两个样本之间的距离为 0 时,该函数取得最大值 1;当距离等于 $2r_s$ 时,函数值几乎接近 0。基于此,自我集的重叠量定义为:
$Overlapping(S) = \sum_{i,j = 1,2,\cdots,n; i \neq j} e^{-\frac{\|s_i - s_j\|^2}{2r_s^2}}$
在自我区域的边界,由于自我样本的半径,其覆盖区域会侵入非自我区域的边界,这就是边界入侵现象。在使用自我集训练检测器时,非自我区域边界附近可能无法完全被覆盖。
为了解决这些问题,需要对自我集进行优化。优化的目标是用最少的自我样本覆盖自我区域,同时不侵入非自我区域。优化问题可以表述为:
最小化:$V(S) = Volume\{x \in U | \exists s \in S, \|x - s\| \leq r\}$
约束条件:
$\{s \in S | \exists d \in D, \|s - d\| \leq r\} = \varnothing$
$\{s_i, s_j \in S | \|s_i - s_j\| \leq r \text{ 或 } \|s_i - s_j\| \leq r\} = \varnothing$
当自我样本数量足够大时,其概率分布趋近于高斯分布。根据高斯分布,样本与均值点的距离越小,样本的概率密度值越大。靠近自我区域中心的样本重叠率较高,因此可以利用这种关系处理不必要的自我样本。具体方法是根据样本的概率密度调整每个样本的半径,以解决边界入侵问题,然后根据半径丢弃不必要的样本。
高斯分布中有一个重要的“3σ”准则,即每个正常样本几乎都在“3σ”区间内。可以利用该准则处理错误的自我样本。
优化过程分为三个步骤:
1. **丢弃错误的自我样本**:使用“3σ”准则,将不在“3σ”区间内的样本丢弃。
2. **调整自我样本的半径**:根据自我样本的概率密度调整其半径。
3. **丢弃不必要的自我样本**:根据调整后的半径,丢弃被其他样本覆盖的样本。
以下是优化算法的伪代码:
```plaintext
BEGIN
收集自我样本:S0 ← s;
// 步骤 1: 丢弃错误的自我样本
对 S0 进行正则化,然后计算 μ 和 σ;
n = 0;
while (n < N0) {
if (sn 不在 “3σ” 区间内) {
丢弃 sn, N0--;
}
n++;
}
// 步骤 2: 调整每个样本的半径
计算 maxpdf_s 和 minpdf_s;
L = (maxpdf - minpdf) / num;
while (n < N0) {
l = (pdf_sn - minpdf) / L;
Sn.r = l × k;
}
// 步骤 3: 丢弃不必要的自我样本
S ← s0, N = 1, flag = 0;
while (n < N0) {
i = 0;
while (i < N) {
d
```
0
0
复制全文
相关推荐









