libSVM多分类问题,准确率都非常高99%+且测试集准确率高于训练集

文章描述了一个SVM模型在训练集和测试集上表现出极高的准确性,包括100%准确率的情况,但作者对某些结果表示疑惑并寻求解答,关注点在于测试集使用了训练集的归一化方法后出现的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.训练集测试集都99%+的准确率

2.测试集还要高于训练集

3.用每个被试放到模型上跑,每个被试的准确率如下:

Accuracy = 100% (155/155) (classification)
Accuracy = 100% (102/102) (classification)
Accuracy = 100% (82/82) (classification)
Accuracy = 100% (111/111) (classification)
Accuracy = 100% (79/79) (classification)
Accuracy = 100% (113/113) (classification)
Accuracy = 92.1875% (118/128) (classification)
Accuracy = 100% (334/334) (classification)
Accuracy = 100% (195/195) (classification)
Accuracy = 100% (286/286) (classification)
Accuracy = 92.5926% (150/162) (classification)
Accuracy = 100% (164/164) (classification)
Accuracy = 100% (293/293) (classification)
Accuracy = 100% (272/272) (classification)
Accuracy = 100% (264/264) (classification)
Accuracy = 100% (252/252) (classification)
Accuracy = 100% (230/230) (classification)
Accuracy = 100% (282/282) (classification)
Accuracy = 100% (268/268) (classification)
Accuracy = 100% (269/269) (classification)
Accuracy = 89.4231% (93/104) (classification)
Accuracy = 100% (265/265) (classification)

ps:

测试集用训练集的mapminmax的ps归一的

SVM代码如下:

[bestacc,bestc,bestg] = SVMcgForClass(trainlabel,traindata,-5,5,-5,5,5,1,1,0.5);

cmd = [' -s 0',' -t 2','-c ',num2str(bestc),' -g ',num2str(bestg)];
model=libsvmtrain(trainlabel,traindata,cmd);
disp(cmd);

[predict_label_1,accuracy_train,dec_values] = libsvmpredict(trainlabel,traindata,model);
[predict_label_2,accuracy_test,dec_values2] = libsvmpredict(testlabel,testdata,model);
result_1 = [trainlabel predict_label_1];
result_2 = [testlabel predict_label_2];

 

上述三个问题是怎么回事啊,看着很不对劲,也不知道问题在哪,求教各位大神!

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值