ML ToolBox

%Meachine Learning ToolBox

%%

工具箱中包含了KNN,K-means,决策树等多种方法。此处解决分类问题。


parallel coordinates plot
% Parallel coordinates plot是用来做特征选择的一个方法。主要解决了在多维(大于三维)情况下数据特征无法可视化的问题。
%
% 图种每个竖线代表一个特征,上面的点代表该特征的值,每个样本表示出来就是一个贯穿所有竖线的折线图。
%
% 一般来说,用不同的颜色代表不同的类别,这样可以方便的看出不同特征对分类的影响。
%
% 有以下两个原则;
%
% 主要看相同颜色的折线是否集中,若在某个属性上相同颜色折线较为集中,不同颜色有一定的间距,则说明该属性对于预测标签类别有较大的帮助.
% 若某个属性上线条混乱,颜色混杂,则较大可能该属性对于标签类别判定没有价值.

%%



%using pca and lda
pcam=pca(X);
pcaDataM=X*pcam(:,1:100);

pcam2=princomp(X);
pcaDataS=X*pcam2(:,1:100);

%pcaDataS与pcaDataM是相同的。
%X 每一行是一个observations(记录)
%pcam与pcam2是变换矩阵,pcaDataS与pcaDataM是降维后的数据,两个是相同的。

%lda
wlda=ldalance(pcaDataS',gptn',20); %wlda 是变换矩阵  ldalance 是自己写的函数
data=pcaDataS*wlda;

%%
%ML Toolbox 使用
%数据处理
pcaldaTrainset=[data,gptn']; %predictors + responses
调用工具箱
导出模型
y=Y*pcam(:,1:100);
preData=y*wlda;
preRe=trainedClassifierPcaLdaKNN.predictFcn(preData);


%%
%混淆矩阵求法
for i=1:15 %15是类别数目
tem1=pre(gptt==i); %gptt是标签
for j=1:15 %pre是预测值
c(i,j)=sum(tem1==j); %c是混淆矩阵
end
end
%作图的话用Excel
xlswrite('D:\ziliao\数模\method_learning\cofunsionMatrix.xlsx',c);

猜你喜欢

转载自www.cnblogs.com/lancezliang/p/10424034.html
ML