zoukankan      html  css  js  c++  java
  • 降维

    0 - 引入

      在特征选择之后,有可能由于特征量过大导致计算量太大、内存溢出或者训练时间长的问题,因此需要通过降维方法将特征维度降低。

      常用的降维方法有如下几种:

    • 基于L1惩罚项的模型(上一篇特征选择提到的)
    • 主成分分析法(PCA)
    • 线性判别分析(LDA)

      下面通过sklearn并基于iris数据集来介绍不同的降维方法。

      导入iris数据集。

    from sklearn.datasets import load_iris
    iris = load_iris()

    1 - sklearn方法查询表

      下面给出sklearn中用于降维的方法,以便于查询,具体使用后面部分将详细展开。

    模块 说明
    decomposition PCA

    主成分分析法

    discriminant_analysis LinearDiscriminantAnalysis

    线性判别分析法

     

     

     

     

     

    2 - 主成分分析法(PCA)

      代码如下:

    from sklearn.decomposition import PCA
    
    PCA(n_components=2).fit_transform(iris.data)

    3 - 线性判别分析法(LDA)

      代码如下:

    from sklearn.discriminant_analysis import LinearDiscriminantAnalysis as LDA
    
    LDA(n_components=2).fit_transform(iris.data, iris.target)

    4 - PCA vs. LDA

      两种方法的本质都是将原始的样本映射到维度更低的样本空间中,但是它们的映射目标不同:

    • PCA是为了让映射后的样本具有最大的发散性(不相关性)——无监督的降维方法;
    • LDA是为了让映射后的样本具有最好的分类性能——有监督的降维方法。

    5 - 参考资料

    http://www.cnblogs.com/jasonfreak/p/5448385.html

  • 相关阅读:
    Object doesn't support property or method 'flat'
    yapi的部署
    mongoDB 安装
    排序
    直播原理
    文件怎么都删不掉,压缩,命令行都不行
    computed和watch
    docker安装
    跨域问题的解决方案
    一次普通的http请求
  • 原文地址:https://www.cnblogs.com/CZiFan/p/10770150.html
Copyright © 2011-2022 走看看