MATLAB Answers

0

How to build a ROC curve using perfcurve with a single class?

Asked by Octavian on 4 Nov 2014
Dear All,
I study a method that estimates the position of a set of test points against a reference point. One of the metrics for method performance is the angle between the locations of a given test point, the reference point, and the estimated point (the smaller the angle the better the method). I need to construct a ROC curve for the method performance (against chance), however when using perfcurve, I need two classes, and I have only one. How can I use the perfcurve here?
Please comment on the following attempt. I have 14 test points, and using the method (class 1), I generated the angles (deg): 0.00 90.00 14.31 0.00 106.78 0.00 21.87 21.87 21.87 21.87 56.03 27.79 0.00 88.51
I transformed those angles in probabilities; given angle ranges (0-180), I divided the above to 180, and I obtained the probabilities:
0.0000 0.5000 0.0795 0.0000 0.5932 0.0000 0.1215 0.1215 0.1215 0.1215 0.3113 0.1544 0.0000 0.4917 I created a 'chance' class (2), with the following probabilities 0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1 I arranged the elements according to class in A(:,1), and the corresponding probabilities A(:,2), then
[X,Y,T,AUC] = perfcurve(A(:,1),A(:,2),'2');
Please let me know if this is correct, if not advise, Thank you,
Octavian

  0 Comments

Sign in to comment.

0 Answers