zoukankan      html  css  js  c++  java
  • 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_learningcofunsionMatrix.xlsx',c);

  • 相关阅读:
    WebDriverException: Message: 'geckodriver' executable needs to be in PATH.
    Django安装与使用
    初识Django
    python学习之xlrd的使用
    python 学习笔记
    根据当前日期生成一个唯一标识的名称
    用Python生成组织机构代码,附源码
    IO流基础
    多线程
    日期时间类
  • 原文地址:https://www.cnblogs.com/lancezliang/p/10424034.html
Copyright © 2011-2022 走看看