How to write simple predict() function for ClassificationSVM

4 ビュー (過去 30 日間)
Robert Kowalski
Robert Kowalski 2016 年 12 月 2 日
コメント済み: Aditi Vedalankar 2018 年 9 月 10 日
I have trained ClassificationSVM. What is the simplest way to write function working like predict( SVMModel , X ) ? I would be gratefull for equation containing properties names from ClassificationSVM class.
Thanks !

回答 (1 件)

Iddo Weiner
Iddo Weiner 2016 年 12 月 2 日
First you'd have to select features, check out:
https://www.mathworks.com/discovery/feature-selection.html
for info and/or ideas on how to do this.
You'll also need to decide what kind of model you're using, for the standard multi-linear regression check out the documentation on regress()
https://www.mathworks.com/help/stats/regress.html?s_tid=srchtitle
Now - if you really want the simplest model, I'd say you could skip feature selection and just run:
regress(labels, features)
and this will give you the regressor for each feature. Now your model is simply
prediction = A1*feature1 + ... + AN*featurenN
But I would generally advise against this, mainly becasue of the danger of overfitting. I suggest building a train and test based algorithm
  3 件のコメント
Aditi Vedalankar
Aditi Vedalankar 2018 年 9 月 10 日
dear all, I have similar doubt . I have trained model generated by classification learner model. now when i use it for predicting the test data, the error appears as Function 'subsindex' is not defined for values of class 'cell'.
Error in trainClassifier (line 48) predictors = inputTable(:, predictorNames);
Error in Test_svm1 (line 7) [trainedClassifier, validationAccuracy] = trainClassifier(trainingData); pl help

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

Community Treasure Hunt

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

Start Hunting!

Translated by