One Class SVM not working correctly

Hi all, I have to train a one class SVM for anomaly detection. I have a dataset with two features. I trained the model on normal instances with ocsvm function. What I don't understand are the contour lines for the ocsvm scores... I do not expect those to be like that. In the figure are represented the normal instances in the space (feature1, feature2) and the contour lines corresponding to some values of ocsvm score. They are simply absurd, not like the example see on the matlab guide. I would expect ellipsoidal contour lines, not these! Any help? Thank you!

5 Comments

No one? I really need to understand this thing for my master degree thesis
Can you upload the data and code you used to generate the figure? You can use the paper clip icon in the INSERT section of the toolbar.
If you cannot load all the data, perhaps a subset that shows the same behavior?
Sure! This is a subsample of the dataset, I kept a data point every 5. It's a 250000x2 matrix. First columns is feature 1 and second column is feature2 :)
I'm having the same problem too
fitcsvm with one class option makes the contour lines normal, so I would say that there is definitely something wrong in the ocsvm function

Sign in to comment.

 Accepted Answer

Angelo Yeo
Angelo Yeo on 30 Nov 2023
Edited: Angelo Yeo on 30 Nov 2023
Thank you for reporting this. I can see that something is broken in ocsvm. Can you please contact Technical Support and report this issue?

4 Comments

Done! Thank you!
Plz, let know if there are developments about this issue, im interested
@Lorenzo Zarantonello, please reach out to Technical Support if you need further explanation on the issue and workaround. I don't think I'm allowed to share it on public technical forums.
I will do so, thank you!

Sign in to comment.

More Answers (0)

Products

Release

R2023a

Community Treasure Hunt

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

Start Hunting!