我正在尝试使用不同的分类器(LDA、SVM、KNN)对包含两个类的数据集进行分类,并希望比较它们的性能。我通过修改先验概率为 LDA 制作了 ROC 曲线。
但是我怎样才能对 KNN 分类器做同样的事情呢?
我搜索了文档,发现了一些功能:
Class = knnclassify(Sample, Training, Group, k)
mdl = ClassificationKNN.fit(X,Y,'NumNeighbors',i,'leaveout','On')
我可以运行 (a) 并通过使用留一法交叉验证获得混淆矩阵,但不可能更改先验概率来生成 ROC?
我以前没有尝试过 (b),但这会创建一个模型,您可以在其中修改 mdl.Prior。但我不知道如何获得混淆矩阵。
有没有我错过的选项或有人可以解释如何充分利用这些功能来获得 ROC?