是否必须在python中为隔离林设置污染值?

问题描述

我将建立一个模型来识别数据集中的异常。我做了很多研究,发现隔离林是最好的隔离林。在我的数据集中,我没有任何标签(这意味着数据集仅包含解释变量)。但是我不知道在隔离林中设置污染参数(大多数解释该文章文章已经具有输出变量[标记为异常],使用它们来计算离群比率,然后将其设置为污染值)。是否必须设置?污染的认值为0.1。可以忽略它吗? 如果我没有为此付出任何价值,这会影响模型结果吗?

model = IsolationForest(contamination=0.1,n_estimators=1000)

解决方法

否,不是必须设置污染值。默认情况下,它设置为“自动”。

污染“自动”或“浮动”,默认为“自动” 数据集的污染,即 数据集。在拟合时定义分数的阈值时使用 样本。

Reference in documentation

因此,您可以忽略它,但是它会/将影响模型结果,因为预测方法会使用由污染值设置的阈值。

预测方法使用原始评分的阈值 估计器计算的函数。该评分功能是 可通过score_samples方法访问,而阈值可以 由contamination参数控制。

Reference in documentation