What "Kernel Scale" in svm really is?

조회 수: 103 (최근 30일)
Zeynab Mousavikhamene
Zeynab Mousavikhamene 2020년 4월 9일
댓글: PR 2020년 12월 2일
I checked several places in matlab tutorial but did not find explicit definition of "kernel scale". According to question like this or this or this that they are constants of kernels. Based on the definition of kernel from matlab it should be sigma which is "the width of kernel". So kernel scake is ONLY applied to RBF not to linear or polynomial. Am I right?
And what is the default value of kernel scale? According to this question the default value for kernel scale is 1. But according to here, it uses heuristic to determine the kernel scale.
I would appreciate your thoughts.

답변 (1개)

Hiro Yoshino
Hiro Yoshino 2020년 4월 21일
This gives you a clearer view for you:
Let me answer you questions.
  • Kernel scale is just for RBF kernel? Yes, you're right. This is a hyper parameter.
  • use 'KernelScale' to apply a kernel scale of your choice. The option 'auto' evokes the heuristic method.
  • according to the documentation, the default value for the kernel scale is 1.
It does not elaborate on the heuristic method but I bet it will use a method like cross validation.
I would optimize the parameter via hyper parameter tuning, e.g., bayes optimization.
  댓글 수: 3
Hiro Yoshino
Hiro Yoshino 2020년 8월 24일
Hi, let me take back what I wrote before.
Looing into the documentation, I found the KernelScale not to be what I thought it would be. I thought it was one of the parameters used for RBF kernel.
Kernelscale is literally a scaling parameter for the input data.
The input data is recommended to be scaled with respect to a feature before being applied to the Kernel function. When the absolute values of some features range widely or can be large, their inner product can be dominant in the Kernel calculation. So this kernelScale can be used to prevent this from happening. It also helps maintain the information.
PR
PR 2020년 12월 2일
Hi Hiro. Thanks for the elaboration.
Can i get some information on the algorithm that Matlab uses to determine 'auto' kernel scale in SVM classification.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Statistics and Machine Learning Toolbox에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by