计算sklearn中无监督LOF的AUC

我在尝试对数据集运行LOF模型的fit_predict后计算ROCAUC

我使用sklearn来实现LOF。我知道可以通过调用model.negative_outlier_factor_来获取分数,但我不确定如何将这些分数转换为概率来进行AUC计算。

这是为了与另一个模型进行比较。我应该如何操作呢?


回答:

你不需要将model.negative_outlier_factor_转换为概率来计算ROC_AUC,相对分数就足够了。

samples = [[0., 0., 0.], [0., .5, 0.], [1., 1., .5]]from sklearn.neighbors import LocalOutlierFactorlof = LocalOutlierFactor(n_neighbors=3,novelty=True)lof.fit(samples) roc_auc(1/lof.score_samples(X_test),y_test)

Related Posts

如何为SVC模型设置特定阈值并生成混淆矩阵?

我需要为特定阈值设置一个数值并生成混淆矩阵。数据在一个…

Keras, Score v.s Predict

我目前正在训练一个用于分类(20个类别)的Keras模…

使用StratifiedKFold进行CatboostRegressor的值错误

我刚开始学习Catboost,并尝试使用Stratif…

在Pytorch中自定义LSTM模型显示输入大小不匹配

我有一个自定义的双向LSTM模型,其中自定义的部分是 …

朴素贝叶斯 – 类标签0没有样本

不久前,我问了一个问题,关于Accord.net的朴素…

Scikit-Learn的.fit()方法如何将数据传递给.predict()?

我正在尝试理解sklearn的.fit()方法与.pr…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注