我正在尝试使用 Matlab 中的 SVM 库执行多标签分类。有一个解决方案可以使用这里称为 svmtrain() 的“旧”SVM 函数。基于此,我使用 fitcsvm() 创建了自己的函数。但是,当我尝试存储经过 SVM 训练的模型时,出现以下错误:
使用 classreg.learning.internal/DisallowVectorOps/subsasgn 时出错(第 28 行)
您不能使用 () 索引分配给 double 类的对象。
multiClassSVM>(parfor body) 中的错误(第 16 行)
SVMModel(i) = SVMModelHolder;
multiClassSVM 中的错误(第 8 行)
平均 i=1:9
如何将多个 ClassificationSVM 模型存储在一个变量中?
如果有帮助,代码如下:
parfor i=1:9
label = (labels==i);
label = i * label;
disp(size(label));
disp(size(trainSet));
SVMModelHolder = fitcsvm(trainSet, label);
disp(class(SVMModelHolder))
SVMModel(i) = SVMModelHolder;
end;
我将不胜感激任何帮助,或者任何以完全不同的方式解决问题的建议,如果这是要走的路。