MATLAB SVM:使用相同的数据集进行训练和测试会产生不同的结果
Posted
技术标签:
【中文标题】MATLAB SVM:使用相同的数据集进行训练和测试会产生不同的结果【英文标题】:MATLAB SVM: Using the same dataset for training and testing gives different results 【发布时间】:2017-07-01 02:46:42 【问题描述】:我正在使用函数“fitcsvm”在具有 4 个类的数据集上使用一对多的方法训练具有多项式内核的 SVM。为了进行完整性检查,我尝试将生成的模型应用于我使用函数“predict”进行训练的同一数据集。我为每个 SVM 的所有观察预测标签,并选择与特定观察的后验概率最高的 SVM 对应的标签作为其最终标签。但是,训练和测试错误并不完全相同。这背后的原因是什么?
【问题讨论】:
能否提供一些代码和数据?! 【参考方案1】:这 4 个类的实例数是否相同?如果不是,那么fitcsvm
可能会将准确度归一化以考虑到这一点。
这对于 Mathworks 技术支持来说听起来也是个好问题。
【讨论】:
4个类的实例数相同。以上是关于MATLAB SVM:使用相同的数据集进行训练和测试会产生不同的结果的主要内容,如果未能解决你的问题,请参考以下文章
Inria 数据集使用 neg 文件训练 matlab 错误
如何标记 PCA 获得的训练投影以用于训练 SVM 进行分类? MATLAB
使用GTSDB训练集实现基于最大稳定极值区域和SVM的交通标志检测识别算法matlab仿真
基于CIFAR10图像数据集和SVM的图像分类算法matlab仿真