精华内容
下载资源
问答
  • 标准化信息NMI计算步骤及其Python实现

    万次阅读 多人点赞 2017-10-28 21:37:19
    Excellence is a continuous process and not an ...标准化信息NMI计算步骤及其Python实现 标准化信息NMI具体定义可以参考另一篇博客: https://smj2284672469.github.io/2017/10/27/community-detection-mea

    Excellence is a continuous process and not an accident.

    卓越是一个持续的过程而不是一个偶然事件。

    原文地址:https://dreamhomes.github.io/posts/202005120940.html

    标准化互信息NMI计算步骤及其Python实现

    假设对于17个样本点 ( v 1 , v 2 , . . . , v 17 ) (v_1,v_2,...,v_{17}) (v1,v2,...,v17)进行聚类:

    某一种算法得到聚类结果为:

    A=[1 2 1 1 1 1 1 2 2 2 2 3 1 1 3 3 3]

    标准的聚类结果为:

    B=[1 1 1 1 1 1 2 2 2 2 2 2 3 3 3 3 3]

    问题:需要度量算法结果与标准结果之间的相似度,如果结果越相似NMI值应接近1;如果算法结果很差则NMI值接近0。

    根据公式计算MI的值其中X=unique(A)=[1 2 3] , Y=unique(B)=[1 2 3]:

    M I ( X , Y ) = ∑ i = 1 ∣ X ∣ ∑ j = 1 ∣ Y ∣ P ( i , j ) l o g ( P ( i , j ) P ( i ) P ′ ( j ) ) MI(X,Y)=\sum_{i=1}^{|X|}\sum_{j=1}^{|Y|}P(i,j)log(\frac{P(i,j)}{P(i)P^{'}(j)}) MI(X,Y)=i=1Xj=1YP(i,j)log(P(i)P(j)P(i,j))

    首先计算上式分子中联合概率分布 P ( i , j ) = ∣ X i ∩ Y j ∣ N P(i,j)=\frac{|X_i\cap Y_j|}{N} P(i,j)=NXiYj

    P ( 1 , 1 ) = 5 / 17 , P ( 1 , 2 ) = 1 / 17 , P ( 1 , 3 ) = 2 / 17 P(1,1)=5/17,P(1,2)=1/17,P(1,3)=2/17 P(1,1)=5/17,P(1,2)=1/17,P(1,3)=2/17

    P ( 2 , 1 ) = 1 / 17 , P ( 2 , 2 ) = 4 / 17 , P ( 2 , 3 ) = 0 P(2,1)=1/17,P(2,2)=4/17,P(2,3)=0 P(2,1)=1/17,P(2,2)=4/17,P(2,3)=0

    P ( 3 , 1 ) = 0 , P ( 3 , 2 ) = 1 / 17 , P ( 3 , 3 ) = 3 / 17 P(3,1)=0,P(3,2)=1/17,P(3,3)=3/17 P(3,1)=0,P(3,2)=1/17,P(3,3)=3/17

    再计算分母中概率函数 P ( i ) = X i / N P(i)=X_i/N P(i)=Xi/N P ( i ) P(i) P(i) i i i的概率分布函数, P ′ ( j ) P^{'}(j) P(j) j j j的概率分布函数:

    对于 P ( i ) P(i) P(i)

    P ( 1 ) = 8 / 17 , P ( 2 ) = 5 / 17 , p ( 3 ) = 4 / 17 P(1)=8/17,P(2)=5/17,p(3)=4/17 P(1)=8/17,P(2)=5/17,p(3)=4/17

    对于 P ( j ) P(j) P(j)

    P ′ ( 1 ) = 6 / 17 , P ′ ( 2 ) = 6 / 17 , P ′ ( 3 ) = 5 / 17 P^{'}(1)=6/17,P^{'}(2)=6/17,P^{'}(3)=5/17 P(1)=6/17,P(2)=6/17,P(3)=5/17

    根据以上计算可以计算出MI的值。

    至于标准化互信息使用第二个公式计算:

    N M I ( X , Y ) = 2 M I ( X , Y ) H ( X ) + H ( Y ) NMI(X,Y)=\frac{2MI(X,Y)}{H(X)+H(Y)} NMI(X,Y)=H(X)+H(Y)2MI(X,Y)

    上式分母中 H ( X ) , H ( Y ) H(X),H(Y) H(X),H(Y)分别为 X , Y X,Y X,Y的熵:

    H ( X ) = − ∑ i = 1 ∣ X ∣ P ( i ) l o g ( P ( i ) ) ; H ( Y ) = − ∑ j = 1 ∣ Y ∣ P ′ ( j ) l o g ( P ′ ( j ) ) H(X)=-\sum_{i=1}^{|X|}P(i)log(P(i));H(Y)=-\sum_{j=1}^{|Y|}P^{'}(j)log(P^{'}(j)) H(X)=i=1XP(i)log(P(i));H(Y)=j=1YP(j)log(P(j))

    对于上面的例子,根据公式计算熵如下:

    H ( X ) = P ( 1 ) l o g 2 ( P ( 1 ) ) + P ( 2 ) l o g 2 ( P ( 2 ) ) + P ( 3 ) l o g 2 ( P ( 3 ) ) H(X)=P(1)log_2(P(1))+P(2)log_2(P(2))+P(3)log_2(P(3)) H(X)=P(1)log2(P(1))+P(2)log2(P(2))+P(3)log2(P(3))

    H ( Y ) = P ′ ( 1 ) l o g 2 ( P ′ ( 1 ) ) + P ′ ( 2 ) l o g 2 ( P ′ ( 2 ) ) + P ′ ( 3 ) l o g 2 ( P ′ ( 3 ) ) H(Y)=P^{'}(1)log_2(P^{'}(1))+P^{'}(2)log_2(P^{'}(2))+P^{'}(3)log_2(P^{'}(3)) H(Y)=P(1)log2(P(1))+P(2)log2(P(2))+P(3)log2(P(3))

    综上则可以计算出NMI的值。

    代码实现以上计算过程:

    • 可以直接调用scikit-learn包中集成的度量函数
    • 自己编写函数实现计算过程

    Python代码实现如下(包含上述两种方式):

    # -*- coding:utf-8 -*-
    '''
    Created on 2017年10月28日
    
    @summary: 利用Python实现NMI计算
    
    @author: dreamhome
    '''
    import math
    import numpy as np
    from sklearn import metrics
    def NMI(A,B):
        #样本点数
        total = len(A)
        A_ids = set(A)
        B_ids = set(B)
        #互信息计算
        MI = 0
        eps = 1.4e-45
        for idA in A_ids:
            for idB in B_ids:
                idAOccur = np.where(A==idA)
                idBOccur = np.where(B==idB)
                idABOccur = np.intersect1d(idAOccur,idBOccur)
                px = 1.0*len(idAOccur[0])/total
                py = 1.0*len(idBOccur[0])/total
                pxy = 1.0*len(idABOccur)/total
                MI = MI + pxy*math.log(pxy/(px*py)+eps,2)
        # 标准化互信息
        Hx = 0
        for idA in A_ids:
            idAOccurCount = 1.0*len(np.where(A==idA)[0])
            Hx = Hx - (idAOccurCount/total)*math.log(idAOccurCount/total+eps,2)
        Hy = 0
        for idB in B_ids:
            idBOccurCount = 1.0*len(np.where(B==idB)[0])
            Hy = Hy - (idBOccurCount/total)*math.log(idBOccurCount/total+eps,2)
        MIhat = 2.0*MI/(Hx+Hy)
        return MIhat
    
    if __name__ == '__main__':
        A = np.array([1,1,1,1,1,1,2,2,2,2,2,2,3,3,3,3,3])
        B = np.array([1,2,1,1,1,1,1,2,2,2,2,3,1,1,3,3,3])
        print NMI(A,B)
        print metrics.normalized_mutual_info_score(A,B)
    
    展开全文
  • 数据归一化和标准化之后会不会对原始数据的信息量以及结构产生影响?数据归一化和标准化之后会不会对原始数据的信息量以及结构产生影响?数据归一化和标准化之后会不会对原始数据的信息量以及结构产生影响?数据归一...
  • 标准化、归一化、中心化

    千次阅读 多人点赞 2018-10-01 23:22:52
    标准化、归一化、中心化 数据分析及挖掘中常提到的几个概念(数据的 标准化、归一化、中心化),虽然经常在用,但可能还是有一些比较生僻的知识容易搞混淆,所以在十月国庆大家都出门上高速堵车的时候抽了点时间对...

    标准化、归一化、中心化

    数据分析及挖掘中常提到的几个概念(数据的 标准化、归一化、中心化),虽然经常在用,但可能还是有一些比较生僻的知识容易搞混淆,所以在十月国庆大家都出门上高速堵车的时候抽了点时间对这些概念以我的能力和理解做一个相对系统和浅显的总结。

    本篇文章通过个人以前对这些知识的一个先验理解,然后主要查阅和参考了数篇相关知识文档的介绍后,做了如下的总结。(注:尤其是标准化、归一化极容易混淆两者)

    标准化:

    特点:

    对不同特征维度的数据做伸缩变换(数据按比例缩放,使之落入一个小的特定区间),其目是使不同度量之间的特征具有可比性。并且同时不改变原始数据的分布状态。转化为无量纲的纯数值后,便于不同单位或量级的指标能够进行比较和加权。

    优点:

    1:使得不同度量之间的特征具有可比性;对目标函数的影响体现在几何分布(离散型概率分布)上,而不是数值上

    2:不改变原始数据的分布

    举例:

    根据人的身高和体重预测人的健康指数,假设有如下原始数据是四维:

     

    从上面两个坐标图可以看出,样本在数据值上的分布差距是不一样的,但其几何距离是一致的。而标准化就是一种对样本数据在不同维度上进行一个伸缩变化(而不改变数据的几何距离),也就是不改变原始数据的信息(分布)。这样的好处就是在进行特征提取时,忽略掉不同特征之间的一个度量,而保留样本在各个维度上的信息(分布)

     

    归一化:

    特点:

    对不同特征维度的数据做伸缩变换,其目的是使得各个特征维度对目标函数的影响权重是一致的,即使得那些扁平分布得数据伸缩变换成类圆形。这也就改变了原始数据的一个分布。

    优点:

    1:提高迭代求解的收敛速度

    2:提高迭代求解的精度

    举例:

    从采用大单位的身高和体重这两个特征来看,如果采用标准化,不改变样本在这两个维度上的分布,则左图还会保持二维分布的一个扁平性;而采用归一化则会在不同维度上对数据进行不同的伸缩变化(归一区间,会改变数据的原始距离,分布,信息),使得其呈类圆形。虽然这样样本会失去原始的信息,但这防止了归一化前直接对原始数据进行梯度下降类似的优化算法时最终解被数值大的特征所主导。归一化后,各个特征对目标函数的影响权重是一致的。这样的好处是在提高迭代求解的精度。

    1、 归一化为什么能提高梯度下降法求解最优解的速度?

    当两个特征X1和X2的区间相差非常大,X1区间是[0,2000],X2区间是 [1,5],其所形成的等高线非常尖。当使用梯度下降法寻求最优解时,很有可能走“之字型”路线(垂直等高线走),从而导致需要迭代很多次才能收敛;而右图对两个原始特征进行了归一化,其对应的等高线显得很圆,在梯度下降进行求解时能较快的收敛。因此如果机器学习模型使用梯度下降法求最优解时,归一化往往非常有必要,否则很难收敛甚至不能收敛。

    2、归一化有可能提高精度

    一些分类器需要计算样本之间的距离(如欧氏距离),例如KNN。如果一个特征值域范围非常大,那么距离计算就主要取决于这个特征,从而与实际情况相悖(比如这时实际情况是值域范围小的特征更重要)。

     

    修改总结原作者对提问者的回答如下:

    问题:

    归一化和标准化,都是将点平移然后缩短距离,从这个角度看,二者有什么区别呢?为什么标准化不改变数据分布(几何距离)?

    回答:

    第一,如果把加减看作平移,乘除看作放缩的话,那么从归一化和标准化的公式就能看出两者的区别。平移对于前者以一个最小值为参照,后者以均值为参照。缩放对于前者以最大差值参照,后者以标准差。第二,标准化不改变几何距离是其公式定义的原因,可以进行数学推导,类似于SVM的函数距离到几何距离,由公式可以推导。

    以上对两个容易混淆的概念(标准化、归一化)做了一个解释,但是需要根据实际的数据或场景需求来使用,以免适得其反,如:归一化后虽然平衡了权重,但也会或多或少破坏数据的结构。

     

    常用的标准化方法(z-score标准化):

    需要注意上面的s为n-1,不是n,两者的区别z-score标准化方法适用于属性A的最大值和最小值未知的情况,或有超出取值范围的离群数据的情况

    常用的归一化方法(Min-max normalization、最大最小归一化):

    当然还有对于两种方式其它好的解法,后面链接可以参考。

     

    中心化:

    这里以PCA为例讲述中心化:

    下面两幅图是数据做中心化(centering)前后的对比,可以看到其实就是一个平移的过程,平移后所有数据的中心是(0,0),同时中心化后的数据对向量也容易描述,因为是以原点为基准的。

    在做PCA的时候,我们需要找出矩阵的特征向量,也就是主成分(PC)。比如说找到的第一个特征向量是a = [1, 2],a在坐标平面上就是从原点出发到点(1,2)的一个向量。

    如果没有对数据做中心化,那算出来的第一主成分的方向可能就不是一个可以“描述”(或者说“概括”)数据的方向了。还是看图比较清楚。

    黑色线就是第一主成分的方向。只有中心化数据之后,计算得到的方向才能比较好的“概括”原来的数据。这里通过中心化后主成分组成的基能更好的表示原数据。

    对于中心化与标准化的区别:

    1. 对数据进行中心化预处理,这样做的目的是要增加基向量的正交性

    2. 对数据标准化的目的是消除特征之间的差异性。便于对一心一意学习权重。

    下图中以二维数据为例:左图表示的是原始数据;中间的是中心化后的数据,数据被移动大原点周围;右图将中心化后的数据除以标准差,得到为标准化的数据,可以看出每个维度上的尺度是一致的(红色线段的长度表示尺度)

    常用的中心化方法:

    变量减去它的均值

     

     

    文中若有不足或有误的地方,还请指出。感谢以下资料,本文主要参考:

    https://www.zhihu.com/question/20467170

    https://en.wikipedia.org/wiki/Feature_scaling

    https://www.zhihu.com/question/37069477

    https://blog.csdn.net/bbbeoy/article/details/70185798

    展开全文
  • 3.4.2数据标准化(一) - Z-Score标准化

    万次阅读 多人点赞 2018-05-14 18:05:25
    在数据标准化中,常见的方法有如下三种:Z-Score 标准化最大最小标准化小数定标法本篇主要介绍第一种数据标准化的方法,Z-Score标准化。此方法在整个数据分析与挖掘体系中的位置如下图所示。Z-Score处理方法处于整个...

    简介

    Z-Score标准化是数据处理的一种常用方法。通过它能够将不同量级的数据转化为统一量度的Z-Score分值进行比较。

    一句话解释版本:

    Z-Score通过(x-μ)/σ将两组或多组数据转化为无单位的Z-Score分值,使得数据标准统一化,提高了数据可比性,削弱了数据解释性。


    数据分析与挖掘体系位置

    Z-Score标准化是数据处理的方法之一。在数据标准化中,常见的方法有如下三种:

    1. Z-Score 标准化
    2. 最大最小标准化
    3. 小数定标法

    本篇主要介绍第一种数据标准化的方法,Z-Score标准化。

    此方法在整个数据分析与挖掘体系中的位置如下图所示。



    Z-Score的定义

    Z-Score处理方法处于整个框架中的数据准备阶段。也就是说,在源数据通过网络爬虫、接口或其他方式进入数据库中后,下一步就要进行的数据预处理阶段中的重要步骤。

    数据分析与挖掘中,很多方法需要样本符合一定的标准,如果需要分析的诸多自变量不是同一个量级,就会给分析工作造成困难,甚至影响后期建模的精准度。

    举例来说,假设我们要比较A与B的考试成绩,A的考卷满分是100分(及格60分),B的考卷满分是700分(及格420分)。很显然,A考出的70分与B考出的70分代表着完全不同的意义。但是从数值来讲,A与B在数据表中都是用数字70代表各自的成绩。

    那么如何能够用一个同等的标准来比较A与B的成绩呢?Z-Score就可以解决这一问题。

    下图描述了Z-Score的定义以及各种特征。



    Z-Score的目的

    如上图所示,Z-Score的主要目的就是将不同量级的数据统一转化为同一个量级,统一用计算出的Z-Score值衡量,以保证数据之间的可比性。


    Z-Score的理解与计算

    在对数据进行Z-Score标准化之前,我们需要得到如下信息:

    1)总体数据的均值(μ)

         在上面的例子中,总体可以是整个班级的平均分,也可以是全市、全国的平均分。

    2)总体数据的标准差(σ)

         这个总体要与1)中的总体在同一个量级。

    3)个体的观测值(x)

        在上面的例子中,即A与B各自的成绩。

    通过将以上三个值代入Z-Score的公式,即:

    我们就能够将不同的数据转换到相同的量级上,实现标准化。


    重新回到前面的例子,假设:A班级的平均分是80,标准差是10,A考了90分;B班的平均分是400,标准差是100,B考了600分。

    通过上面的公式,我们可以计算得出,A的Z-Score是1((90-80)/10),B的Z-Socre是2((600-400)/100)。因此B的成绩更为优异。

    反之,若A考了60分,B考了300分,A的Z-Score是-2,B的Z-Score是-1。因此A的成绩更差。

    因此,可以看出来,通过Z-Score可以有效的把数据转换为统一的标准,但是需要注意,并进行比较。Z-Score本身没有实际意义,它的现实意义需要在比较中得以实现,这也是Z-Score的缺点之一。


    Z-Score的优缺点

    Z-Score最大的优点就是简单,容易计算,在R中,不需要加载包,仅仅凭借最简单的数学公式就能够计算出Z-Score并进行比较。此外,Z-Score能够应用于数值型的数据,并且不受数据量级的影响,因为它本身的作用就是消除量级给分析带来的不便。

    但是Z-Score应用也有风险。首先,估算Z-Score需要总体的平均值与方差,但是这一值在真实的分析与挖掘中很难得到,大多数情况下是用样本的均值与标准差替代。其次,Z-Score对于数据的分布有一定的要求,正态分布是最有利于Z-Score计算的。最后,Z-Score消除了数据具有的实际意义,A的Z-Score与B的Z-Score与他们各自的分数不再有关系,因此Z-Score的结果只能用于比较数据间的结果,数据的真实意义还需要还原原值。

    Z-Score在R中的实现

    如下例子是我用R软件写出的Z-Score计算方法。

    # define dataset
    data_A <- rnorm(100, 80, 10)     # randomly create population dataset
    data_B <- rnorm(100, 400, 100)   # randomly create population dataset
    
    hist(data_A) #histogram
    hist(data_B) #histogram
    
    #Calculate population mean and standard deviation
    A_data_std <- sd(data_A)*sqrt((length(data_A)-1)/(length(data_A)))
    A_data_mean <- mean(data_A)
    
    B_data_std <- sd(data_B)*sqrt((length(data_B)-1)/(length(data_B)))
    B_data_mean <- mean(data_B)
    
    # Provided that A got 92 and B got 610
    A_obs <- 92
    B_obs <- 610
    
    A_Z_score <-  (A_obs - A_data_mean) / A_data_std
    B_Z_score <-  (B_obs - B_data_mean) / B_data_std
    展开全文
  • 归一化化定义:归一化化就是要把你需要处理的数据经过处理后(通过某种算法)限制在你需要的一定范围内。归一化的原因是什么那: 一是为了后面数据处理的方便,把不同量纲的东西放在同一量纲下比较,即把...特征标准化

    1、归一化定义

    归一化化就是要把你需要处理的数据经过处理后(通过某种算法)限制在你需要的一定范围内。归一化的原因是什么那?

    2、归一化原因

    一是,为了后面数据处理的方便,把不同量纲的东西放在同一量纲下比较,即 把不同来源的数据统一到一个参考系下,这样比较起来才有意义。
    简单的举个例子:一张表有两个变量,一个是体重kg,一个是身高cm。假设一般情况下体重这个变量均值为60(kg),身高均值为170(cm)。1,这两个变量对应的单位不一样,同样是100,对于身高来说很矮,但对于体重来说已经是超重了。另外,单位越小,数值越大,对结果的影响也越大,譬如170cm=1700mm。 简单讲,归一化的目的是可以用数值来直接进行比较,如果不归一化由于变量特性不同,同样加10,代表的意义不一样。
    二是,保正程序运行时收敛加快,大部分模型归一化后收敛速度会加快。例如,下面的例子,房间数和面积数不在一个量纲上,面积数值太小,房间数太大,成椭圆状,按照梯度收敛速度会慢,理想的是数据类似圆圈的形状,经过有限几个步骤则收敛了。

    三是,要注意的是,有的模型在归一化之后会影响效果,有的模型则不会。对于归一化是否影响模型效果,主要看模型是否具有伸缩不变性。

    有些模型在各个维度进行不均匀伸缩后,最优解与原来不等价,例如SVM。对于这样的模型,除非本来各维数据的分布范围就比较接近,否则 必须进行标准化,以免模型参数被分布范围较大或较小的数据dominate。
    有些模型在各个维度进行不均匀伸缩后,最优解与原来等价,例如标准的logistic regression 和linear regression(加正则项后,正则项可能不具备伸缩不变性),简单的树模型(各个节点各算个的切分点)。对于这样的模型,是否标准化理论上不会改变最优解。但是,由于实际求解往往使用迭代算法,如果目标函数的形状太“扁”,迭代算法可能收敛得很慢甚至不收敛。所以对于具有伸缩不变性的模型, 最好也进行数据标准化。但SVM则必须进行归一化。 同的模型对特征的分布假设是不一样的。比如SVM 用高斯核的时候,所有维度共用一个方差,这不就假设特征分布是圆的么,输入椭圆的就坑了人家。
    首先,对于gradient descent算法来说,learning rate的大小对其收敛速度至关重要。如果feature的scale不同,理论上不同的feature就需要设置不同的learning rate,但是gradient descent只有一个learning rate,这就导致不同feature的收敛效果不同,从而影响总体的收敛效果。所以在求解模型之前归一化不同feature的scale,可以有效提高gradient descent的收敛速度。

    除此之外,如果feature的scale相差很大,则会出现scale越大的feature,对模型的影响越大。比如对于multivariate regression, 极端情况下, 有一个特征的值特别特别大,其他特征的值都特别特别小,那么cost function就被这个特别大的特征主导,甚至退化为univariate。即feature scale相差很大,线性回归模型得优化结果也会受到影响。

    也需要注意的是,各维分别做归一化会丢失各维方差这一信息,但各维之间的相关系数可以保留

    三、标准化方法

    没有一种数据标准化的方法,放在每一个问题,放在每一个模型,都能提高算法精度和加速算法的收敛速度。
    是否应该做数据标准化,用哪种标准化的方法,更多的是源于一种经验和尝试。
    如果你长期做某个行业的某几类数据挖掘需求,自然知道选用哪种算法好,用什么标准化方法更优。这需要时间的积累,需要对数据挖掘的热情来支撑。
    当然,也可以先做个较为合理的抽样(更倾向于分层抽样),比较不做数据标准化和做了数据标准化的效果,比较不同数据标准化方法之间的效果。毕竟数据总是多种多样,如果企业BI做得好,数据质量本身就高了,那其实可以偷一下懒的。反之,就多下功夫做好数据与处理,把数据打磨好了再放进模型里。方法有如下:
    1、线性函数转换,表达式如下:
      y=(x-MinValue)/(MaxValue-MinValue)
      说明:x、y分别为转换前、后的值,MaxValue、MinValue分 别为样本的最大值和最小值。
      2、对数函数转换,表达式如下:
      y=log10(x)
      说明:以10为底的对数函数转换。
      3、反余切函数转换,表达式如下:
      y=atan(x)*2/PI
      4、式(1)将输入值换算为[-1,1]区间的值,在输出层用式(2)换算回初始值,其中 和分别表示训练样本集中负荷的最大值和最小值。
      在统计学中,归一化的具体作用是归纳统一样本的统计分布性。归一化在0-1之间是统计的概率分布,归一化在-1--+1之间是统计的坐标分布。
    方法很多,min-max,z-score,p范数等

    参考:
    http://www.zhihu.com/question/37129350/answer/70640800
    http://www.zhihu.com/question/30038463/answer/50491149
    http://www.zhihu.com/question/30038463/answer/74894932
    https://www.zhihu.com/question/20455227/answer/25237171




    展开全文
  • 标准化信息的python实现(sklearn)

    万次阅读 2019-05-27 20:06:13
    标准化信息(normalized Mutual Information, NMI)用于度量聚类结果的相似程度,是community detection的重要指标之一,其取值范围在[0 1]之间,值越大表示聚类结果越相近,且对于[1, 1, 1, 2] 和 [2, 2, 2, 1]的...
  • GEO中的Series Matrix File(s)通常是经过了标准化和对数转换的数据。但不全是。在实际应用的时候需要根据情况判断一下。对于芯片数据,可能作者将.cel的文件处理成未标准化的数据直接上传。一般来说,在判断counts...
  • 标准化与归一化1、标准化(Standardization)和归一化(Normalization)概念1.1、定义1.2、联系和差异一、联系二、差异1.3、标准化和归一化的多种方式2、标准化、归一化的原因、用途3、什么时候Standardization,什么...
  • 云计算和大数据的标准化需求和标准化组织有哪些?
  • [机器学习] 数据特征 标准化和归一化

    万次阅读 多人点赞 2018-07-24 11:51:38
    一、标准化/归一化定义 归一化和标准化经常被搞混,程度还比较严重,非常干扰大家的理解。为了方便后续的讨论,必须先明确二者的定义。 归一化 就是将训练集中某一列数值特征(假设是第i列)的值缩放到0和1之间...
  • 重温归一化(MinMaxScaler)和标准化(StandardScaler)

    千次阅读 多人点赞 2019-12-30 13:37:17
    最近做一个时空序列预测的一个问题,用到了数据归一化和标准化,之前一直想花点时间看一下这俩的区别究竟是啥? 现在参考了几篇博文,加上自己的一些理解,来具体的总结总结。 数据的归一化是无量纲化,也就是忽略...
  • 链接: http://jtst.mot.gov.cn/eap/BzAction.do?tdsourcetag=s_pctim_aiomsg
  • NMI(标准化信息) python实现

    万次阅读 多人点赞 2017-03-14 15:26:53
    介绍NMI是社区发现(community detection)在有标准ground-truth的情况下的重要衡量指标,基本可以比较客观地评价出一个社区划分与标准划分之间相比的准确度。NMI的值域是0到1,越高代表划分得越准。具体的原理和例子...
  • 标准化互聚类信息也很简单,有几个不同的版本,大体思想都是相同的,都是用熵做分母将MI值调整到0与1之间。一个比较多见的实现是下面所示:   H(X)和H(Y)分别为X和Y的熵,下面的公式中log的底b=2。   ...
  • IT领域标准化浅谈(一):中国标准化相关组织 我国IT领域相关标准化组织分为“IT标准化职能部门”和“IT标准化技术组织”两大类。
  • 一、归一化,标准化和中心化 广义的标准化: (1)离差标准化(最大最小值标准化) (2)标准差标准化 (3)归一化标准化 (4)二值化标准化 (5)独热编码标准化 归一化 (Normalization)、标准化 ...
  • 运维体系框架标准化模型简介

    千次阅读 2018-02-01 11:05:49
    为什么要做标准化标准化的过程实际上就是对运维对象的识别和建模过程。形成统一的对象模型后,各方在统一的认识下展开有效协作,然后针对不同的运维对象,再抽取出它们所对应的运维场景,接下来才是运维场景的...
  • 数据特征:标准化和归一化

    千次阅读 2019-01-24 20:31:24
    一、标准化/归一化定义 归一化和标准化经常被搞混,程度还比较严重,非常干扰大家的理解。为了方便后续的讨论,必须先明确二者的定义。 归一化 就是将训练集中某一列数值特征(假设是第i列)的值缩放到0和1之间。...
  • 【CV】图像标准化与归一化

    万次阅读 2018-07-26 12:30:16
    使用深度学习在进行图像分类或者对象检测时候,首先需要对图像做数据预处理,最常见的对图像预处理方法有两种,正常白化处理又叫图像标准化处理,另外一种方法叫做归一化处理,下面就详细的说一下这两种处理方法。...
  • 常见的方法有:min-max标准化(Min-max normalization),log函数转换,atan函数转换,z-score标准化(zero-mena normalization,此方法最为常用),模糊量化法。本文只介绍min-max法(规范化方法),z-score法...
  • 在spss中实现变量标准化Z值

    万次阅读 2019-04-26 15:49:14
    在spss中实现变量标准化Z值 什么是标准化Z值 Z代表随机变量经过列维-林德伯格中心极限定理的变形后,服从标准正态分布Φ(0,1),并且Z为该标准正态分布下的新变量。 z-score标准化: 标准分数(standard score...
  • 三种常用数据标准化方法

    万次阅读 多人点赞 2018-08-17 16:21:28
    而并非所有数据标准化的结果都映射到[0,1]区间上,其中最常见的标准化方法就是Z标准化,也是SPSS中最为常用的标准化方法:z-score 标准化(zero-meannormalization)也叫标准差标准化,经过处理的数据符合标准正态分布...
  • 数据预处理 - 归一化与Z-Score标准化

    千次阅读 2019-04-16 17:14:50
    归一化 归一化是一种简化计算的方式,即将有量纲的表达式,经过变换,化为无量纲的表达式,成为标量,在多种计算中都经常用到这种方法。归一化方法有两种形式,一种是把...最大最小标准化 x*=(x-min)/(max−min) ...
  • 机器学习的本质是从数据集中发现数据内在的特征,而数据的内在...数据预处理正是为了最大限度地帮助机器学习模型或算法找到数据内在特征所做的一系列操作,这些操作主要包括标准化、归一化、正则化、离散化和白化等。
  • 极差标准化算法详解

    千次阅读 2020-06-05 10:01:46
    是经济统计分析中bai对正负指标标准化的一种du处理方法zhi。 极差标准化变化即为: 极差又bai称范围误差或全距,以R表示,是用来表示统计资料中的变异量数,其最大值与最小值之间的差距,即最大值减最小值后...
  • 标准化和归一化的区别

    万次阅读 多人点赞 2019-08-20 18:47:37
     归一是线性模型做数据预处理的关键步骤,比如LR,非线性的就不用归一了。  归一就是让不同维度之间的特征在数值上有一定比较性,可以大大提高分类器的准确性。 缺点:这种方法有个缺陷就是当有新数据加入...
  • 数据标准化和归一化的异同

    千次阅读 2018-04-04 22:21:56
    1归一化特点 对不同特征维度的伸缩变换的...2标准化特点 对不同特征维度的伸缩变换的目的是使得不同度量之间的特征具有可比性。同时不改变原始数据的分布。好处: 1 使得不同度量之间的特征具有可比性,对目标函...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,275,400
精华内容 510,160
关键字:

信息标准化