Difference fitrkernel and fitrsvm

19 views (last 30 days)
Dimitri
Dimitri on 20 Nov 2018
Edited: antlhem on 29 May 2021
Hello,
I'm looking at the different fitr-models and I'm wondering where the difference is between the default fitrkernel and fitrsvm with gaussian kernel. Both have the same hyperparameters. Fitrkernel is a gaussian kernel model, that uses an svm as a linear regression model and fitrsvm is an svm with a gauss kernel. Isn't that redundant?
Furthermore I do not understand the exact function of the hyperparameter "KernelScale" in both models. Are there any papers explaining the parameter used in Matlab?
Best regards,
Dimitri

Answers (1)

Don Mathis
Don Mathis on 30 Nov 2018
The basic difference is that fitrsvm fits an exact SVM model, in the sense that it uses the exact kernel function and solves the "dual" problem. fitrkernel solves the "primal" problem using an explicit finite-sized feature space, which results in an approximation of the kernel function. For large datasets, the kernel approximation can be much faster and give good enough results.
According to this Doc page,
"The software divides all elements of the predictor matrix X by the value of KernelScale. Then, the software applies the appropriate kernel norm to compute the Gram matrix."
  1 Comment
antlhem
antlhem on 29 May 2021
Edited: antlhem on 29 May 2021
Could take a look into my question? https://uk.mathworks.com/matlabcentral/answers/842800-why-matlab-svr-is-not-working-for-exponential-data-and-works-well-with-data-that-fluctuates?s_tid=prof_contriblnk

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!