1
$\begingroup$

I am training a SVM with linear kernel over a training set of 3759 elements. The dimension of my problem is 2055, in other words, each example belonged to my training set is described by 2055 features. When I plot the learning curves, I got the curves of the figure. How can I interpret this image and evaluate my model? I really consider that obtaining a very high precision in the testing set at the very beginning is not usual.

Learning Curve SVM

Average of 30 runs

Confusion matrix

$\endgroup$

1 Answer 1

1
$\begingroup$

It is possible that your problem is relatively simple, so your SVM converges to a good solution really fast.

However if your dataset is highly skewed, then simply a high precision might be misleading. For example, if you are doing a spam email classification and 95% of your training data is 0 (or non-spam), then a classifier always prediction 0 will give you 95% accuracy.

You may want to look at the confusion matrix of your model output to see whether it is such a case. If it is, you may consider to upsample the minority class(es) or to assign different weights to your classes ( see some discussions here).

$\endgroup$
4
  • $\begingroup$ this is the confusion matrix, I see it quite well? $\endgroup$
    – Stone
    Commented May 7, 2018 at 19:08
  • $\begingroup$ Yes @WilberConcepciónLugo, it seems quite well. $\endgroup$
    – user12075
    Commented May 7, 2018 at 19:20
  • $\begingroup$ you know, I just realized that it's not balanced (1340, 2419), I'll try again when I swing it... thank you so much $\endgroup$
    – Stone
    Commented May 7, 2018 at 19:25
  • $\begingroup$ balance the data and everything remains the same $\endgroup$
    – Stone
    Commented May 15, 2018 at 20:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.