首页 > 解决方案 > 如果我有一个“ground truth”数据集没有异常值用于初始训练来比较新数据,我可以使用隔离森林算法吗?

问题描述

我猜这是不可能的,但与“基本事实”数据集相比,我基本上想在新数据集中找到异常值或异常。如果我尝试使用 Isolation Forest 训练模型,则必须在训练时设置污染参数,但我认为在运行测试时我无法更改此污染设置。是否有人对解决此问题有任何其他建议,或者是否有我没有看到的解决方案?

标签: pythonmachine-learningscikit-learn

解决方案


如果您有可用于训练的标记数据,我会使用监督方法。如果您只想使用地面实况数据集评估隔离森林,则必须提前提出污染因子,以便进行更诚实的评估。

假设您正在使用,scikit-learn您还可以使用该score_samples方法获取每个样本的分数: https ://scikit-learn.org/stable/modules/generated/sklearn.ensemble.IsolationForest.html#sklearn.ensemble.IsolationForest.score_samples


推荐阅读