%-----载入生成的训练数据、标签以及测试数据、标签-------%
load('E:\GraduateDesign\DeepLearnToolbox-master\data\TrainInput.mat','TrainData');
load('E:\GraduateDesign\DeepLearnToolbox-master\data\TrainOut.mat','TrainOut');
load('E:\GraduateDesign\DeepLearnToolbox-master\data\TestInput.mat','TestData');
load('E:\GraduateDesign\DeepLearnToolbox-master\data\TestOut.mat','TestOut');
%处理训练数据,构造决策树
for i=1:2000
for j = 1:15
traindata(i,j) = TrainData(i,ceil(j/5),trans(j,5));
end
end
trainLabel = TrainOut - 2;
%预处理数据,看噪声对识别的影响。 噪声对信号的影响表现在信号特征[PRI,RF,PW]上是测量误差,因此在特征维上加上误差
TestData_noise = zeros(2000,3,5);
for i = 1:2000
for j = 1:3
for k = 1:5
TestData_noise(i,j,k) = TestData(i,j,k)+TestData(i,j,k)*(rand(1)-0.5)*2*biasRate;
end
end
end
%将标签值改为0-3
testLabel = TestOut-2;
%处理测试数据
testdata = zeros(2000,15);
for i=1:2000
for j = 1:15
testdata(i,j) = TestData_noise(i,ceil(j/5),trans(j,5));
end
end
%生成决策树
Ctree = fitctree(traindata,trainLabel,'MaxNumSplits',12,'CrossVal','on');
view(Ctree.Trained{1},'Mode','graph');
%使用决策树
predict(Ctree,testdata);
希望有大佬帮忙解答,谢谢。