我正在为 libsvm 使用 Python 接口,我注意到的是,在使用网格搜索选择最佳参数C
和gamma
参数(RBF 内核)后,当我训练模型并交叉验证它时(5 倍,如果相关),我收到的准确度与我的训练数据集中的标签比率相同。
我有 3947 个样本,其中 2898 个有标签 -1,其余的有标签 1。所以这是样本的 73.4229%。
当我训练模型并交叉验证 5 次时,这就是我得到的 -
optimization finished, #iter = 1529
nu = 0.531517 obj = -209.738688,
rho = 0.997250 nSV = 1847, nBSV = 1534
Total nSV = 1847
Cross Validation Accuracy = 73.4229%
这是否意味着 SVM 没有考虑这些特征?还是这里的数据有问题?他们俩有关系吗?我只是无法让它超过 73.4229 号码。此外,支持向量的数量应该远小于数据集的大小,但在这种情况下,似乎并非如此。
一般来说,当交叉验证准确率与数据集中标签的比率相同时,这意味着什么?