我正在检测未标记数据集中的异常值(数据未标记为内点/异常值),并且我正在 Python 中使用隔离森林(scikit-learn 库)。
我想获得数据集中数据的异常分数,因此我使用以下代码:
if_model = IsolationForest(max_samples=100)
if_model.fit(dataset)
anomaly_score = if_model.score_samples(dataset)
但是我有一些问题:
- 前面的过程是否正确,或者我应该将我的数据集分成两部分,以在一组上执行拟合并在另一组上获得异常分数?
- 该方法的用途是什么
predict
?我应该如何使用它?