Sto provando a classificare un set di dati contenente due classi che utilizzano classificatori diversi (LDA, SVM, KNN) e vorrei confrontare le loro prestazioni. Ho trasformato le curve ROC per la LDA modificando la probabilità a priori.Classificazione KNN in MATLAB - matrice di confusione e ROC?
Ma come posso fare lo stesso per un classificatore KNN?
ho cercato la documentazione e hanno trovato alcune funzioni:
Class = knnclassify(Sample, Training, Group, k)
mdl = ClassificationKNN.fit(X,Y,'NumNeighbors',i,'leaveout','On')
posso correre (a) e ottenere una matrice di confusione utilizzando leave-one-out cross- validazione ma non è possibile modificare la probabilità a priori di creare un ROC?
Non ho provato (b) prima ma questo crea un modello in cui è possibile modificare mdl.Prior. Ma non ho idea di come ottenere una matrice di confusione.
C'è un'opzione che ho perso o qualcuno che può spiegare come utilizzare pienamente tali funzioni per ottenere un ROC?
Grazie per il commento. Prenderò in considerazione la possibilità di altre opzioni e di esaminare il tuo suggerimento! – user1865820