• 特征工程(3)-数据预处理归一化


    既然讲到归一化和前面的标准化需要对比一下,首先二者处理的维度是不一样的,假设我们要处理的矩阵是 m*n 大小,m 个样本,n 维特征

    标准化处理的方式是以列为单位,也就是处理的对象是

    mkk=1..nm∗kk=1……..n

    归一化处理的方式却是以行为单位,处理的对象如下:

    knk=1..mk∗nk=1……..m

    归一化处理对样本的特征向量处理之后使其变为单位向量,单位向量可以用于点积运算或者计算样本之间相似度

    L2 归一化的计算公式如下所示:

    y=xni=0x2y=x∑i=0nx2

    L1 归一化的计算公式如下所示

    y=xni=0xy=x∑i=0n‖x‖

    sklearn 代码

    1. from sklearn.preprocessing import Normalizer
    2. tmp=Normalizer().fit_transform(irisdata.data)
    3. print tmp[0:5]

    实验结果如下

    1. [[ 0.80377277 0.55160877 0.22064351 0.0315205 ]
    2. [ 0.82813287 0.50702013 0.23660939 0.03380134]
    3. [ 0.80533308 0.54831188 0.2227517 0.03426949]
    4. [ 0.80003025 0.53915082 0.26087943 0.03478392]
    5. [ 0.790965 0.5694948 0.2214702 0.0316386 ]]

    spark 代码如下

    1. from pyspark.ml.feature import Normalizer
    2.  
    3. dataFrame = sqlContext.read.format("libsvm").load("data/mllib/sample_libsvm_data.txt")
    4.  
    5. # p=2 则表示是 l2 归一化
    6. normalizer = Normalizer(inputCol="features", outputCol="normFeatures", p=1.0)
    7. l1NormData = normalizer.transform(dataFrame)
    8. l1NormData.show()
  • 相关阅读:
    超级女声杭州赛区7进5
    究竟怎么了?
    最近发现
    S2SH基于角色权限拦截
    基于S2SH的电子商务网站系统性能优化
    TSQL复习笔记(一)
    用户sa登录失败,该用户与可信sql server连接无关联
    SQL附加数据库报5120的错误的解决办法
    DotNet中配置文件的使用(一)
    JQuery中使用AJAX $.ajax(prop)方法详解
  • 原文地址:https://www.cnblogs.com/yuluoxingkong/p/9010278.html
Copyright © 2020-2023  润新知