• 机器学习 | 特征工程(三)- 特征降维


    当特征选择完成后,可以直接训练模型了,但是可能由于特征矩阵过大,导致计算量大,训练时间长的问题,因此降低特征矩阵维度也是必不可少的。降维(dimensionality reduction)是指通过对原有的feature进行重新组合,形成新的feature,选取其中的principal components。
     
    降维作用:
      1)降低时间复杂度和空间复杂度
      2)节省了提取不必要特征的开销
      3)去掉数据集中夹杂的噪
      4)较简单的模型在小数据集上有更强的鲁棒性
      5)当数据能有较少的特征进行解释,我们可以更好 的解释数据,使得我们可以提取知识。
      6)实现数据可视化
     
    数据降维方法主要分为线性方法和非线性方法,其中前者主要有PCA、LDA、矩阵分解SVD等多种方式,后者则包括ISOMAP,t-SNE以及UMAP等。

    本文主要介绍常用的线性降维方法:主成分分析法(PCA)和线性判别分析(LDA)。PCA和LDA有很多的相似点,其本质是要将原始的样本映射到维度更低的样本空间中,但是PCA和LDA的映射目标不一样:PCA是为了让映射后的样本具有最大的发散性;而LDA是为了让映射后的样本有最好的分类性能。所以说PCA是一种无监督的降维方法,而LDA是一种有监督的降维方法。

    1 主成分分析法(PCA)

    使用decomposition库的PCA类选择特征的代码如下:
    from sklearn.decomposition import PCA
    
    #主成分分析法,返回降维后的数据
    #参数n_components为主成分数目
    PCA(n_components=2).fit_transform(iris.data)

    2 线性判别分析法(LDA)

    使用lda库的LDA类选择特征的代码如下:
    from sklearn.lda import LDA
    
    #线性判别分析法,返回降维后的数据
    #参数n_components为降维后的维数
    LDA(n_components=2).fit_transform(iris.data, iris.target)
     
    (其它方法待后续补充)
     整理的特征工程其它部分内容请见:
      0 引言
      4 总结
     
    参考:
     

  • 相关阅读:
    触发器
    数据库function和procedure
    java连接数据库
    单例模式
    python入门相关笔记
    ubuntu 系统备份到移动硬盘(tar) 还原到另一台电脑
    大白菜pe 通用pe 安装心得
    18 java 代理模式 (转)
    5 HBase 常用Shell命令
    1、shell 简介
  • 原文地址:https://www.cnblogs.com/geo-will/p/9626862.html
Copyright © 2020-2023  润新知