What is the right formula for the RBF 'KernelScale' of fitcsvm?

11 次查看(过去 30 天)
RBF kernel function is defined as exp(-1/(2*sigma^2) ....
The option 'KernelScale' of the Matlab function fitcsvm, does it refer to sigma, sigma^2, 2*sigma^2, or sqrt(2)*sigma ?

采纳的回答

Ayush Anand
Ayush Anand 2024-1-12
编辑:Ayush Anand 2024-1-12
Hi,
The RBF kernel function is defined as :
The "KernelScale" option in the function "fitcsvm" refers to σ (sigma) in the above equation.
You can read more through the definition of parameters of the "fitcsvm" function here:
Hope this helps!
  1 个评论
Leon
Leon 2025-4-7
编辑:Leon 2025-4-7
KernelScale is not quite the same as sigma: KernelScale = sqrt(2) * sigma, see my answer below.

请先登录,再进行评论。

更多回答(1 个)

Leon
Leon 2025-4-7
编辑:Leon 2025-4-7
The RBF (Gaussian) kernel can be defined with either gamma or sigma:
or
where sigma is the standard deviation of the Gaussian distribution.
According to the fitcsvm documentation, instead of using sigma or gamma, the prediction data is simply divided by KernelScale before training, and
Therefore,
KernelScale = 1/sqrt(gamma)
as clarified by MathWorks staff here:
And:
KernelScale = sqrt(2) * sigma

类别

Help CenterFile Exchange 中查找有关 Classification 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by