异常检测 101

离群点检测广泛指的是识别那些在给定样本分布中可能被视为异常的观测值的任务。任何属于该分布的观测值被称为内点,而任何偏离的点被称为离群点。

在机器学习的背景下,有三种常见的方法来完成这项任务:

  1. 无监督异常检测
    • 训练数据(未标注)包含正常和异常的观测结果。

    • 模型在拟合过程中识别异常值。

    • 当异常值被定义为数据中存在于低密度区域的点时,采用这种方法。

    • 任何不属于高密度区域的新观测值都被视为异常值。

  2. 半监督的新颖性检测
    • 训练数据仅包含描述正常行为的观察结果。

    • 模型在训练数据上拟合,然后用于评估新的观测数据。

    • 当异常值被定义为与训练数据分布不同的点时,采用这种方法。

    • 任何与训练数据在阈值内不同的新观测值,即使它们形成高密度区域,也被视为异常值。

  3. 监督异常分类
    • 每个观测值的地面真值标签(内点 vs 外点)是已知的。

    • 该模型在失衡的训练数据上进行拟合,然后用于对新观测值进行分类。

    • 当有地面实况数据可用时,采用这种方法,并假设异常值将遵循与训练集相同的分布。

    • 任何新的观察结果都使用模型进行分类。

PyOD 中找到的算法主要集中在前面两种方法,这两种方法在训练数据的定义方式和模型输出的解释方式上有所不同。如果对此感兴趣,请参考我们的 异常检测资源 页面,获取相关的书籍、论文、视频和工具箱。