发布时间:2023-07-20 16:30
再数学建模学习(72)这一篇,我们尝试过用隔离森林对大量数据集的异常值检测,这一篇我们简单的来学习使用它,如果你那一篇没看懂,可以先看这一篇,可能会轻松很多。
隔离森林是一种用于异常值检测的无监督学习算法,该算法基于决策树。该算法隔离通过随机选择一个特征来观察。然后它在所选特征的最大值和最小值之间随机选择一个分割值。这可以用决策树结构来表示。在这种决策树中从根到叶的路径长度是该点的正态性的度量。该路径长度相当于分离样品所需的分裂次数。与其他常规数据点相比,异常值是少数。在特征空间中,它们远离常规数据点。因此,使用这种决策树和随机分区,这些点应该更接近树的根部来识别。这是因为异常值的平均路径长度较短。当几个这样的随机决策树聚合成一个森林时,它们很可能会为异常点产生更短的路径长度。
这里先创建一个数据集:
import pandas as pd
data = [[1,4], [2,2], [3,4], [4