我正在使用sklearn' EllipticEnvelope
来查找数据集中的异常值。但我不确定如何模拟我的问题?我应该只使用所有数据(不分为培训和测试集)并应用fit
吗?另外,我如何获得每个数据点的外围性?我应该在同一数据集上使用predict
吗?
答案 0 :(得分:1)
是的,请致电Fit
以使用您的所有数据进行培训。然后,您可以使用所有数据调用Predict
,对于异常值返回1,为异常值返回-1,或者建立所有点的矩阵(以包含所有数据点)并调用Predict
在每个点上,然后绘制结果,这将给你一个很好的椭圆图像。
这是与其他方法进行比较的full example。
答案 1 :(得分:1)
正确的方法是:
normal
和outliers
。normal
数据中的大样本作为normal_train
,以拟合新颖性检测模型。normal
的未在培训中使用的样本(例如normal_test
)和来自outlier
的样本(例如outlier_test
)这样test
数据(normal_test
+ outlier_test
)的分布保留了人口分布。test
数据以获取常用指标(accuracy
,sensitivity
,positive-predictive-value
等。)哇。我走了很长的路!