我正在使用 Matlab 中的VLFeat库进行一些图像分析工作。我想使用他们的 Pegasos SVM 实现,因为他们已经实现了一些内核,特别是 Chi2 内核。
但是,我发现文档让我感到困惑。按照本教程,我有一个模型w
和一个偏差b
,但是我如何使用它来对我的测试数据进行分类?
我的起始数据是这样的(尺寸)..
size(train_data) =
200 210
size(train_labels) =
1 210
size(test_data) =
200 140
size(test_labels) =
1 140
我可以用..构建数据集
dataset = vl_maketrainingset(train_data, int8(train_labels))
给我..
dataset =
data: [200x210 double]
labels: [1x210 int8]
然后我可以建立模型..
[w b info] = vl_svmpegasos(dataset,0.01,'MaxIterations',5000);
w
200 x 1
我的模型 ('w'eights?) 是一个大小为 0 到 1的向量大小。
我相信我需要将此向量乘以 mytest_data
以获得某种分数,但我不确定这些分数的含义是什么。
任何方向都非常感谢。