bootstrap 对隔离森林的影响

数据挖掘 Python 异常检测 隔离森林
2022-02-12 22:26:07

我一直在使用隔离林进行异常检测,并在 scikit-learn (链接) 上查看其参数。查看“引导程序”,我不太清楚使用引导程序会导致什么。对于监督学习,这应该可以减少过度拟合,但我不清楚对异常检测的影响应该是什么。

认为这需要树就异常是什么达成更多“共识”,因此,减少任何单一特征的影响。即,异常观察可能需要在多个特征上始终保持异常(?)。

这是对该参数的正确解释吗?

1个回答

这在原始论文第 3 节中得到了很好的解释。

与监督随机森林一样,隔离森林在特征和实例上都使用采样,因此在这种情况下,后者有助于缓解两个主要问题:

  1. 沼泽

Swamping 是指错误地将正常实例识别为异常。当正常实例离异常太近时,分离异常所需的分区数量会增加——这使得将异常与正常实例区分开来变得更加困难。

  1. 掩蔽

掩蔽是太多异常的存在掩盖了自己的存在。

与更需要大样本量的现有方法相反,当样本量保持较小时,隔离方法效果最好。大样本量会降低 iForest 隔离异常的能力,因为正常实例会干扰隔离过程,因此会降低其清楚隔离异常的能力。因此,子抽样为 iForest 良好工作提供了有利环境。在整篇论文中,子抽样是通过随机选择实例进行的,无需替换。

在此处输入图像描述