【发布时间】:2020-04-29 10:56:21
【问题描述】:
我有 7 类与大脑信号活动 (EEG) 相关的输入。 当类的数量很大时,分类算法的性能可能会受到影响。 正如您在以下代码中看到的那样,我为它们提取了特征,在第一阶段,我用 70% 的数据训练了我的模型,并获得了 100% 的准确率,但在测试阶段,我没有得到剩下的 30%超过 42.5% 的准确率。您对提高模型的准确性有什么建议?
for i=1:7
[A D]=dwt2(segment_train(i).train,'db1');
wave_train(i).A=A;
wave_train(i).D=D;
f1=mean(A);
f2=median(A);
f3=max(D);
f4=abs(fft(D));
f4=mean(f4);
f5=var(D);
f6=skewness(D);
f7=entropy(D);
f8=var(A);
f9=mean(D);
f(i,:)=[f1 f2 f3 f4 f5 f6 f7 f8 f9];
end
% feature extraction
% Classifier
nOfSamples=7;
nOfClassInstance=10;
Sample=f;
class=[1 2 3 4 5 6 7]'
%SVM
Model=fitcecoc(Sample,class);
predictt=predict(Model,Sample);
disp('class predict')
disp([class predictt])
%Accuracy
Accuracy=mean(class==predictt)*100;
fprintf('\nAccuracy =%d\n',Accuracy)
【问题讨论】:
标签: matlab machine-learning classification svm feature-extraction