How do I improve my result of KNN classification using confusion matrix?

4 ビュー (過去 30 日間)
youb mr
youb mr 2019 年 11 月 16 日
コメント済み: Ridwan Alam 2019 年 11 月 20 日
Hello everyone.
I'm trying to classify a data set containing two classes using a Knn classifer.
and would like to evaluate the performance using its confusion matrix. But how can I use it with the KNN classifier?
This is my code of KNN classifer
model=ClassificationKNN.fit(X,Y,'NumNeighbors',9);
[~,result1]=predict(model,x);
  2 件のコメント
Image Analyst
Image Analyst 2019 年 11 月 16 日
編集済み: Image Analyst 2019 年 11 月 16 日
You forgot to attach X and Y in a .mat file
save('answers.mat', 'X', 'Y');
Have you tried the "Classification Learner" App on the App tab of the tool ribbon?
You tagged it with image processing. What about this is at all related to image processing???
youb mr
youb mr 2019 年 11 月 17 日
how i can use confusion_matrix in this situation

サインインしてコメントする。

回答 (1 件)

Ridwan Alam
Ridwan Alam 2019 年 11 月 20 日
yhat = predict(model,x);
[C,order] = confusionmat(y,yhat);
Use this help file to understand how to use C and order:
  2 件のコメント
youb mr
youb mr 2019 年 11 月 20 日
Error using confusionmat (line 98)
G and GHAT need to have same number of rows
Error in knn (line 189)
C = confusionmat(Y,yhat)
Ridwan Alam
Ridwan Alam 2019 年 11 月 20 日
Here, I am assuming you have trained the model with “X” and “Y”, and are testing with “x” and “y”. “X” and “x” are different data, if in matrix format, they should have same number of columns but different row sizes.
“yhat” is the prediction of your model for test data “x” (not “X”). Confusionmat compares “yhat” with the ground truth or labels “y” (not “Y”) for the test data “x”.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeStatistics and Machine Learning Toolbox についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by