Matlab 非结构阵列参考场的尝试——训练svm模型

Matlab 非结构阵列参考场的尝试——训练svm模型,matlab,libsvm,undefined-function,Matlab,Libsvm,Undefined Function,嗨,世界 因此,我试图通过svm训练模型运行一些数据,遇到以下错误: Undefined function or variable 'bestc'. Error in train_svm_model_sh (line 28) cmd = ['-s 0 -t 0 -c', num2str(bestc), '-g', num2str(bestg)]; 我最初的剧本是: bestcv = 0; for log2c = -10:10, for log2g = -10:10, cmd

嗨,世界

因此,我试图通过svm训练模型运行一些数据,遇到以下错误:

Undefined function or variable 'bestc'.
Error in train_svm_model_sh (line 28)
cmd = ['-s 0 -t 0 -c', num2str(bestc), '-g', num2str(bestg)];
我最初的剧本是:

bestcv = 0; 
for log2c = -10:10, 
  for log2g = -10:10, 
    cmd = ['-s 0 -t 0 -v 20 -c', num2str(2^log2c), '-g', num2str(2^log2g) '-q']; 
    cv = svmtrain(labels, data, cmd); 
    if (cv > bestcv),
        bestcv = cv; bestc = 2^log2c; bestg = 2^log2g;
        fprintf('%g %g %g (best c = %g, g = %g, rate = %g)\n', log2c, log2g, cv, bestc, bestg, bestcv);
    end
  end
end 
cmd = ['-s 0 -t 0 -c', num2str(bestc), '-g', num2str(bestg)];
运行中出现问题的线路是:

cmd = ['-s 0 -t 0 -c', num2str(bestc), '-g', num2str(bestg)];

这是因为我只在if循环中定义了变量
bestc
bestg
?我如何解决这个问题

我猜
cv
永远不会大于
bestcv
。要帮助调试,您可以执行以下操作:

bestc = []; bestg = [];
然后检查它们是否
isempty