我尝试使用孤立森林进行异常值检测(欺诈检测)。如果我运行以下代码(使用训练和测试集):
from sklearn.ensemble import IsolationForest
iso = IsolationForest(random_state=0).fit(X_train)
isopred = iso.predict(X_test)
我得到一个数组:
array([1, 1, -1, ..., 1, 1, 1])
,其中包含1或-1。我该如何使用predict_proba
函数,这个函数可以用于DecisionTrees。在文档中有没有可用于IsolationTree的函数,因为它没有被提及?当我运行
iso.predict_proba(X_test)
时,我会收到以下错误:
我正在寻找一个数组,它可以给出预测属于哪个类别(是否是异常点)的概率。AttributeError: 'IsolationForest'对象没有属性'predict_proba'
我的
X_test
看起来像:A B C
11 1 0
11 3 0
11 0 1
和y_test.values.ravel()
一起使用:
array([0,0,1])