zoukankan      html  css  js  c++  java
  • 数据预处理技术

    1.均值移除(Mean removal)
    通常我们把每个特征值移除,以保证特征值均为0(即标准化处理),这样可以消除特征值之间的偏差(bias).将下面几行代码加入之前打开的Python文件中
    data_standized = preprocessing.scale(data) print " Mean =",data_standardized.mean(axis=0) print "Std deviation =", data_standardized.std(axis=0)
    2.范围缩放
    数据点中的每个数据范围可能变化很大,因此,有时将数据的特征范围缩放到合理的大小是非常重要的。在Python 文件中加入下面几行代码

    data_scaler = preprocessing.MinmaxScaler(feature_range=(0,1))
    data_scaled = data_scaler.fit_transform(data)
    print "
    Min max scaled data =",data_scaled
    

    3.归-化(Normalization)
    数据归化用于需要对特征向量的值进行调整时,以保证每个特征向量的值都缩放到相同的数值范围。机器学习中最常用的归一化形式就是将特征向量调整为L1范数,使特征向量的数值之和为1.

    data_normalized = preprocessing.normalized(data,norm='1,1')
    print "
    L1 normalized data =",data_normalized
    
    
    
    

    4.二值化(Binarization)
    二值化用于将数值特征向量转换为布尔类型向量。

    data_binarization = preprocessing.Binarization(threshold=1.4).transform(data)
    print "
     Binarized data =",data_binarized
    

    5.独热编码
    通常,需要处理的数据都是稀疏地,算乱地分布在空间中,然而,我们并不需要存储这些大数值,这时就需要使用独热编码(One-Hot Encoding). 可以把独热编码看作是一种收紧(tighten)特征向量的工具。他把每个特征向量的每个特征与特征的非重复总数相对应,通过one-of-k的形式对每个值进行编码。特征向量的每个特征值都按照这种方式进行编码,这样可以更加有效的表示空间。例如我们需要处理4维向量空间,当给一个特征向量的第n个特征进行编码时,编码器会遍历每个特征向量的第n个特征,然后进行非重复计数。如果非重复计数的值是K,那么九八这个特征转换为只有一个值是1其他值都是0的K维向量。增加下面几行代码到前面的Python文件中:

    encoder = preprocessing.OneHotEncoder()
    encoder.fit([[0,2,1,12],[1,3,5,3],[2,3,2,12],[1,2,4,3]])
    encoded_vector = encoder.transform([[2,3,5,3]]).toarray()
    print "
    Encoded vector =",encoded_vector
    
    
    
    
    
    
    
    
    
    
    
  • 相关阅读:
    八大 IoT 安全关键技术解析
    IoT: 物联网安全测试经验总结
    业务逻辑漏洞挖掘
    从零开始Android逆向教程(二)——什么是Xposed
    Mac terminal commands
    Obj-C 实现 QFileDialog函数
    打开文件所在目录并选择该文件
    Qt样式表使用注意项
    window响应拖拽文件操作
    Window检测网络连接情况
  • 原文地址:https://www.cnblogs.com/CCCrunner/p/11781666.html
Copyright © 2011-2022 走看看