的 题 强> :
我不明白为什么我必须生成集合 X_test 和 X_outliers 因为,当我得到我的数据时,我不知道是否有异常值。
X_test
X_outliers
的 回答 强> :
你不必生成 X_outliers 。这是一个示例,向您展示隔离林可以检测异常值。该数据集是随机的。它与原始数据无关。
你需要做的只是适合你的 IsolationForest 到你的训练数据。然后,如果您需要,请检查测试集 - 作为预处理步骤 - 如果存在一些异常值。
IsolationForest
“隔离森林算法是无监督算法还是有监督算法(如随机森林算法)?”
隔离树是一种无监督算法,因此不需要标签来识别异常值/异常。它遵循以下步骤:
一旦数据的递归分区完成,就到达树的末尾。预计到达异常值的距离远小于正常数据的距离(见图)。
将路径的距离平均并归一化以计算异常分数。异常得分为1被认为是异常值,接近0的值被认为是正常的。
异常值的判断是根据得分进行的。不需要标签栏。因此,它是一种无监督算法。