【问题标题】:LibSVM - Model is EmptyLibSVM - 模型为空
【发布时间】:2013-09-03 05:14:03
【问题描述】:

我是 LibSVM 的新手,我想根据由 3 个变量形成的一组训练值来预测某些值。这是一个训练数据的例子(测试类似):

1 2 3 232  
3 4 5 23  
6 7 8 126  
9 10 11 57  
...  

我使用 LibSVM 的方式如下:

 param.s=3  
 param.C=max(train_data.y)-min(train_data.x)  
 param.t=2  
 param.g=2^-13  
 param.p=2^17
 param.libsvm=['-s',param.s,'-t',param.t,'-c',param.C,'-g',param.g,'-p',param.p]  
 model=svmtrain[train_data.y,train_data.x,param.libsvm]

train_data.y 是 1000x1 的向量,而 train_data.x 是 1000x3 的矩阵。问题是“模型”是空的,然后我有预测部分:

[y_hat,accuracy,projection]=svmpredict(test_data.y,test_data.x,model);

其中 test_data.y 是一个 3998x1 的向量,而 test_data.x 是一个 3998x3 的矩阵。 感谢您的帮助。

【问题讨论】:

    标签: matlab libsvm


    【解决方案1】:

    问题出在这行:

    param.libsvm=['-s',param.s,'-t',param.t,'-c',param.C,'-g',param.g,'-p',param.p]  
    

    你不能用这样的数字连接字符串,而且选项需要空格。 应该是

    param.libsvm=[' -s ',num2str(param.s),' -t ',num2str(param.t),' -c ',num2str(param.C),' -g ',num2str(param.g),' -p ',num2str(param.p)]
    

    【讨论】:

      猜你喜欢
      • 2011-12-12
      • 2012-05-28
      • 2014-07-11
      • 2010-12-17
      • 2017-04-13
      • 2013-09-26
      • 2013-08-15
      • 2017-04-20
      • 2015-12-11
      相关资源
      最近更新 更多