如何使用 libsvm 库(Matlab)实现 1 对 1 多类分类?

How to realize a 1 vs 1 multiclass classification using libsvm library (Matlab)?

如何使用libsvm实现一对一多class class化?请帮我解决这个问题。

我还从这个答案中阅读了一种方法...Full example of multiple-class SVM with cross-validation using Matlab [closed]

我的测试数据:特征和最后一列是标签

D = [

1           1          1           1             1
1           1          1           9             1
1           1          1           1             1
11          11         11          11            2
11          11         11          11            2
11          11         11          11            2
30          30         30          30            3
30          30         30          30            3
30          30         30          30            3
60          60         60          60            4
60          60         60          60            4
60          60         60          60            4
];

我的测试数据是

inputTest = [
    1           1           1           1             
    11          11          11          10            
    29          29          29          30            
    60          60          60          60            
];

LIBSVM提供Matlab接口。在包中,有一个非常好的README如何通过Matlab使用这个接口。

用法为:

matlab> model = svmtrain(training_label_vector, training_instance_matrix [, 'libsvm_options']);

使用以下参数:

    -training_label_vector:
        An m by 1 vector of training labels (type must be double).
    -training_instance_matrix:
        An m by n matrix of m training instances with n features.
        It can be dense or sparse (type must be double).
    -libsvm_options:
        A string of training options in the same format as that of LIBSVM.

然而,由 12 个示例组成的训练数据不足以构建良好的 SVM 分类器。你应该得到更多训练和测试过程的例子。