How to deploy SVM on ARM Cortex-M processor

8 views (last 30 days)
Hi everyone.
I have a project in which I have to deploy a SVM (support vector machine) model into an ARM Cortex-M processor. I have already successfully trained my SVM, but I don't know how to deploy it on my edge device (microcontroller). I know that there is a library for neural network (CMSIS NN), but it has little support, as far as I can see. Can anyone help?

Accepted Answer

Walter Roberson
Walter Roberson on 1 Jan 2019
In your interactive MATLAB session, you save() the classification model you trained. In the code for use on the deployed machine, you load() the model and predict() using it.
  2 Comments
Nikhilesh Karanam
Nikhilesh Karanam on 15 Mar 2019
Dear Walter Roberson,
Which interactive MATLAB session you mean? Could you please share the link of it? Thanks in advance :)
Regards,
Nikhilesh K
Walter Roberson
Walter Roberson on 15 Mar 2019
I am referring to the matlab desktop .

Sign in to comment.

More Answers (1)

Micael Coutinho
Micael Coutinho on 2 Jan 2019
Thank you. It worked.
  4 Comments
Nikhilesh Karanam
Nikhilesh Karanam on 18 Mar 2019
Edited: Nikhilesh Karanam on 18 Mar 2019
Thanks. Well, yes. deploying the training portion is not possible. I have used classification learner App, selected Linear SVM for my project, trained the model got a validation accuracy of 98%. I generated a matlab script from the App and used the function for prediction of new data in the generated script which looks like this:
yfit = trainedClassifier.predictFcn(T2)
I get good results on MATLAB and I am stuck here. Please let me know how I can move forward from this point in generating C code if you have any idea. Thanks :)
Walter Roberson
Walter Roberson on 18 Mar 2019
I am not sure. You might have to alter that to use
yfit = predict(trainedClassifier, T2);

Sign in to comment.

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!