我有一个理论问题,并且用高斯内核理解内核规模的概念,但是当我在Matlab中运行fitcsvm中的'OptimizeHyperparameters'时,它给出了不同于一个值的值,我想理解这意味着什么......
线性内核svm中内核规模的高值是什么意思?在多项式?
小智 -1
请注意 MATLAB 帮助中的以下段落:
您不能将任何交叉验证名称-值对组参数与“OptimizeHyperparameters”名称-值对组参数一起使用。您只能使用“HyperparameterOptimizationOptions”名称-值对组参数来修改“OptimizeHyperparameters”的交叉验证。
OptimizeHyperparameters 值会覆盖您使用其他名称-值对组参数设置的任何值。例如,将 OptimizeHyperparameters 设置为“auto”会导致应用“auto”值。
MATLAB 将预测矩阵 X 的所有元素除以 KernelScale 的值。然后,软件应用适当的核范数来计算 Gram 矩阵。因此,核尺度的高值意味着预测矩阵的所有元素必须被划分为一个大值。
KernelScale 可以在 [1e-3,1e3] 之间。Fitcsvm 在正值中搜索,默认情况下在 [1e-3,1e3] 范围内按对数缩放。
如果您指定 KernelScale 和您自己的内核函数,例如“KernelFunction”、“kernel”,则软件会抛出错误。您必须在内核中应用缩放。
| 归档时间: |
|
| 查看次数: |
907 次 |
| 最近记录: |