paint-brush
使用特权信息进行异常检测 - 第 1 部分by@dsmoliakov
6,641
6,641

使用特权信息进行异常检测 - 第 1 部分

Dmitrii Smoliakov5m2023/12/13
Read on Terminal Reader

通过支持向量数据描述 (SVDD+) 探索异常检测的高级领域。揭示在训练期间包含特权信息如何提高分类准确性。了解修改后的 SVDD+ 算法、其二次优化任务及其在医疗异常检测和恶意软件分析中的应用。使用 SVDD+ 提高您对异常检测的理解。
featured image - 使用特权信息进行异常检测 - 第 1 部分
Dmitrii Smoliakov HackerNoon profile picture


支持向量数据描述(SVDD)是机器学习中用于异常检测的流行边界方法之一。 SVDD 的目标是创建一个模型,捕获正常(非异常)数据的特征,然后将偏离这些特征的实例识别为异常。


异常检测在各种应用中都有广泛的用途,例如信用卡、保险或医疗保健的欺诈检测、网络安全的入侵检测、安全关键系统的故障检测以及敌方活动的军事监视。


假设您有一组数据点,其中大多数代表正常行为。 SVDD 旨在围绕这些正常数据点创建边界,使大多数数据落在该边界内。此边界之外的任何数据点都被视为异常或离群值。


换句话说,我们正在教计算机根据一组示例识别“正常”的样子,然后能够将某些不符合学习模式的东西标记为“不寻常”。


在本文中,我们深入探讨了 SVDD 的基本概念,探索了训练阶段特权信息的利用——一种旨在提高异常检测场景中分类准确性的技术。


原始SVDD

如上所述,异常检测的经典方法是使用一类分类技术来描述预期的(“正常”)行为,即使用许多示例构建“正常”状态的描述,例如通过描述几何位置特征空间中的训练模式。如果一个新的测试模式不属于“正常”类,我们就认为它是异常的。


为了构建“正常”域,我们可以使用众所周知的方法,例如支持向量域描述。


我们首先对原始 SVDD 进行简要说明,不使用特权信息。我们有一个 iid 样本 (x1, ..., xl)


该算法的主要思想是将大部分被认为是“正常”的样本与在某种意义上被认为是“异常”的样本分开。我们用 φ(·) 表示将原始数据点映射到一些更具表现力的特征空间,例如,添加一些多项式特征,使用深度神经网络应用一些特征提取,甚至假设映射在某个无限维空间中。


令 a 为特征图图像中的某个点,R 为某个正值。如果模式 x 位于球体 ∥a − φ(x)∥ ≤ R 内,则它属于“正常”类。为了找到中心a和半径R ,我们解决优化问题:



这里 xi 是从位于球体外部的 xi 到球体表面的距离。如果一个点在球体内部,我们认为 xii = 0 仅当我们需要变量 R 为正值时,才可以将变量 R 视为半径。然而,可以很容易地证明,如果 ν ε (0, 1),则自动满足该条件,并且对于 ν ̸ ε (0, 1),解要么包含所有点,要么不包含任何点。


正如您可能猜到的那样,由于我们有算法名称的支持,因此我们将解决对偶问题:



这里我们用相应的核 K(xi, xj) 替换标量积 (φ(xi) · φ(xj ))。我们可以使用任何 xi 来计算 a 和 R,使得 αi > 0



基于此我们可以定义决策函数:


如果 f(x) > 0,则图案 x 位于球体外部并被视为异常。我们还可以注意到 f(x) 返回值,我们可以调整阈值以实现真阳性值和真阴性值的目标水平。


SVDD 和特权信息

对于原始的两类支持向量机,一种在不同类数据点之间创建最佳边界的算法,瓦普尼克提议允许在训练阶段考虑特权信息以提高分类准确性的修改。


让我们提供一些特权信息的示例。如果我们解决图像分类问题,那么作为特权信息,我们可以使用文本图像描述。在恶意软件检测的情况下,我们可以使用恶意软件的源代码来获取用于分类的附加特征。


当我们使用经过训练的模型进行异常检测和分类时,此类信息在测试阶段是不可用的(例如,计算量可能过高或获取成本过高)。尽管如此,它仍然可以在训练阶段使用。


假设训练数据成对出现 (xi, xi*)。例如,假设我们正在尝试检测 X 射线图像中的异常情况。我们有图像本身和医生的描述。一般来说,文字描述就足够了,但需要额外的帮助。它们可以在模型训练期间使用但仅使用图像进行预测吗?可以使用这些附加信息来改进检测。


在前面的公式中,我们存在 xii 形式的错误。让我们假设特权数据非常好,可以预测错误的大小:


我们可以将其视为一位聪明的老师,他在训练期间告诉您,您无法获得此值的小错误。将注意力集中在其他更有价值的例子上是合理的。


现在,让我们写下这个怪物般的方程:

这里 γ 是松弛变量线性近似的正则化参数。 ζi 是防止属于“正”半平面的那些模式受到惩罚的工具变量。请注意,如果 γ 趋于无穷大,则解接近 SVDD 的原始解。


为了避免拉格朗日函数出现混乱,请写下该问题的对偶形式:



这里我们用相应的核函数 K* (xi*, xj*) 替换标量积 (φ* (xi* ) · φ*(xj* ))。最后,决策函数的形式与原始 SVDD 的情况相同:


请注意,尽管比原始问题稍微可怕一些,但该任务是一种称为二次优化的特定类型的优化,可以通过对数障碍函数等标准方法轻松解决。


结论

最初的 SVDD 方法侧重于在高维空间中围绕正常数据点构建边界。然而,SVDD+理论在训练阶段引入了特权信息的概念,以提高分类精度。


在测试期间不可用的特权信息可以在训练期间利用来提供额外的见解,从而提高模型检测异常的能力。纳入特权信息涉及对原始 SVDD 算法的修改,使其能够在训练期间考虑补充数据,例如医学异常检测中伴随图像的文本描述。


包含特权信息被视为一种智能指导形式,类似于一位见多识广的老师提供宝贵的见解来改进模型的学习。修改后的 SVDD+ 公式涉及二次优化任务,可通过对数势垒函数等标准方法求解。尽管由于包含特权信息而带来了复杂性,但SVDD+ 理论中的决策函数保持了与原始 SVDD 类似的形式,便于实际实现。


总之,SVDD+ 理论展示了一种通过在训练阶段利用特权信息来改进异常检测的有前途的途径,提供跨多个领域的潜在应用,包括图像分类和恶意软件检测。