Python 使用离散预测实现朴素贝叶斯分类器的ROC曲线

Python 使用离散预测实现朴素贝叶斯分类器的ROC曲线,python,naivebayes,roc,Python,Naivebayes,Roc,我需要实现朴素贝叶斯分类器并绘制ROC曲线 1) only 2 classes(Trousers and pullovers) out of 10 classes of the [FMNIST][1] dataset and then 2) second for all the ten classes without using scikit library and just basic matplotlib, pandas libraries from scratch. 我已经成功地

我需要实现朴素贝叶斯分类器并绘制ROC曲线

1) only 2 classes(Trousers and pullovers) out of 10 classes of the [FMNIST][1] dataset and then  

2) second for all the ten classes without using scikit library and just basic matplotlib, pandas libraries from scratch. 
我已经成功地为这两种情况实现了朴素贝叶斯分类器,但我无法理解如何实现ROC曲线,因为它需要设置阈值。朴素贝叶斯分类器仅使用似然和先验来获取离散分布的后验值,特征值为RGB(0-255)值,使用127的阈值进行二值化(每个测试样本的特征数为28*28=784)。对于10个类,我想我需要绘制10条曲线,其中一个类为正,其余为负

我的分类器根据所有类的最大后验概率预测测试样本的类。但我无法理解如何确定阈值以及如何绘制ROC曲线。我浏览了一些stackoverflow和其他链接,但无法理解。请解释一下,因为我是机器学习新手

有点晚了,但是

在二元情况下,不要将预测作为具有最大后验值的类,只保留肯定情况下的后验值,并将其与阈值进行比较


例如,如果阈值为0.8,则1和0分别表示正和负;如果P(Y=1 | X)>=0.8,那么你的预测值将为1,否则为0。

@AbienFredAgarap:非常感谢你的链接,但它没有提到他们如何获得阈值谢谢你的回复,但已经很晚了。无论如何谢谢你!可能会帮助其他人:)