七、降维

降维原因:
1、冗余,特征相关度高,容易消耗计算性能
2、噪声,部分特征对预测结果有影响
主要方法:
1、Filter过滤式(VarianceThreshold) 方差大小,考虑所有样本这个特征的数据情况
2、Embedded嵌入式(正则化,决策树)
3、Wrapper(包裹式)
4、神经网络

1 数据降维之特征选择(过滤式)

特征选择:删除低方差的特征
删除特征取值差不多的特征

from sklearn.feature_selection import VarianceThreshold
def var():
    var = VarianceThreshold(threshold=0.0)
    data = var.fit_transform([[0,2,0,3],[0,1,4,3],[0,1,1,3]])
    print(data)
if __name__=='__main__':
    var()

输出:
[[2 0]
[1 4]
[1 1]]

2 数据降维之主成分分析

PCA,特征数量达到上百的时候,考虑数据的简化问题,数据也会改变,特征数量会减少,信息损耗少
n_components:
小数:0-1 保留多少信息,比如90%,一般90%-95%
整数:减少到的特征数量,一般不用

from sklearn.decomposition import PCA
def pca():
    pca = PCA(n_components=0.9)
    data = pca.fit_transform([[2,8,4,5],[6,3,0,8],[5,4,9,1]])
    print(data)
if __name__=='__main__':
    pca()

输出:
[[ 1.22879107e-15 3.82970843e+00]
[ 5.74456265e+00 -1.91485422e+00]
[-5.74456265e+00 -1.91485422e+00]]

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 13,871评论 6 13
  • 原文:http://blog.codinglabs.org/articles/pca-tutorial.html ...
    mogu酱阅读 6,963评论 0 21
  • 甲:借个伞给我吧 乙:没有伞,我觉得你需要一件冲锋衣
    途中i阅读 1,202评论 0 0
  • MUI地址 github地址 性能和体验的差距,一直是mobile app开发者放弃HTML5的首要原因。 浏览器...
    编程之上阅读 4,419评论 0 0