精华内容
下载资源
问答
  • 归一化(Batch Normalization)详细解释笔记
    2020-12-21 10:24:38

    批归一化(Batch Normalization)的详细解释

    ​ 以前在神经网络训练中,只是对输入层数据进行归一化处理,却没有在中间层进行归一化处理。要知道,虽然我们对输入数据进行了归一化处理,但是输入数据经过矩阵乘法以及非线性运算之后,其数据分布很可能被改变,而随着深度网络的多层运算之后,数据分布的变化将越来越大。如果我们能在网络的中间也进行归一化处理,是否对网络的训练起到改进作用呢?答案是肯定的。

    ​ 这种在神经网络中间层也进行归一化处理,使训练效果更好的方法,就是批归一化Batch Normalization(BN)。

    1. 批归一化(BN)算法的优点

    下面总结一下BN算法的优点:

    减少了人为选择参数。在某些情况下可以取消 dropout 和 L2 正则项参数,或者采取更小的 L2 正则项约束参数;

    减少了对学习率的要求。现在我们可以使用初始很大的学习率或者选择了较小的学习率,算法也能够快速训练收敛;

    可以不再使用局部响应归一化。BN 本身就是归一化网络(局部响应归一化在 AlexNet 网络中存在)

    破坏原来的数据分布,一定程度上缓解过拟合(防止每批训练中某一个样本经常被挑选到,文献说这个可以提高 1% 的精度)。

    减少梯度消失,加快收敛速度,提高训练精度。

    2. 批归一化(BN)算法流程

    下面给出 BN 算法在训练时的过程

    输入:上一层输出结果 X = x 1 , x 2 , . . . , x m X = {x_1, x_2, ..., x_m}X=x1​,x2​,...,xm​,学习参数 γ , β \gamma, \betaγ,β

    算法流程:

    计算上一层输出数据的均值

    μ β = 1 m ∑ i = 1 m ( x i ) \mu_{\beta} = \frac{1}{m} \sum_{i=1}^m(x_i)μβ​=m1​i=1∑m​(xi​)

    其中,m是此次训练样本 batch 的大小。

    计算上一层输出数据的标准差

    σ β 2 = 1 m ∑ i = 1 m ( x i − μ β ) 2 \sigma_{\beta}^2 = \frac{1}{m} \sum_{i=1}^m (x_i - \mu_{\beta})^2σβ2​=m1​i=1∑m​(xi​−μβ​)2

    归一化处理,得到

    x ^ i = x i + μ β σ β 2 + ϵ \hat x_i = \frac{x_i + \mu_{\beta}}{\sqrt{\sigma_{\beta}^2} + \epsilon}x^i​=σβ2​​+ϵxi​+μβ​​

    其中 ϵ \epsilonϵ 是为了避免分母为 0 而加进去的接近于 0 的很小值

    重构,对经过上面归一化处理得到的数据进行重构,得到

    y i = γ x ^ i + β y_i = \gamma \hat x_i + \betayi​=γx^i​+β

    其中,γ , β \gamma, \betaγ,β 为可学习参数。

    注:上述是 BN 训练时的过程,但是当在投入使用时,往往只是输入一个样本,没有所谓的均值 μ β \mu_{\beta}μβ​ 和标准差 σ β 2 \sigma_{\beta}^2σβ2​。此时,均值 μ β \mu_{\beta}μβ​ 是计算所有 batch μ β \mu_{\beta}μβ​ 值的平均值得到,标准差 σ β 2 \sigma_{\beta}^2σβ2​ 采用每个batch σ β 2 \sigma_{\beta}^2σβ2​ 的无偏估计得到。

    3. 批归一化和群组归一化比较

    名称

    特点

    批量归一化(Batch Normalization,以下简称 BN)

    可让各种网络并行训练。但是,批量维度进行归一化会带来一些问题——批量统计估算不准确导致批量变小时,BN 的误差会迅速增加。在训练大型网络和将特征转移到计算机视觉任务中(包括检测、分割和视频),内存消耗限制了只能使用小批量的 BN。

    群组归一化 Group Normalization (简称 GN)

    GN 将通道分成组,并在每组内计算归一化的均值和方差。GN 的计算与批量大小无关,并且其准确度在各种批量大小下都很稳定。

    比较

    在 ImageNet 上训练的 ResNet-50上,GN 使用批量大小为 2 时的错误率比 BN 的错误率低 10.6% ;当使用典型的批量时,GN 与 BN 相当,并且优于其他标归一化变体。而且,GN 可以自然地从预训练迁移到微调。在进行 COCO 中的目标检测和分割以及 Kinetics 中的视频分类比赛中,GN 可以胜过其竞争对手,表明 GN 可以在各种任务中有效地取代强大的 BN。

    4. Weight Normalization和Batch Normalization比较

    ​ Weight Normalization 和 Batch Normalization 都属于参数重写(Reparameterization)的方法,只是采用的方式不同。

    ​ Weight Normalization 是对网络权值W WW 进行 normalization,因此也称为 Weight Normalization;

    ​ Batch Normalization 是对网络某一层输入数据进行 normalization。

    ​ Weight Normalization相比Batch Normalization有以下三点优势:

    Weight Normalization 通过重写深度学习网络的权重W的方式来加速深度学习网络参数收敛,没有引入 minbatch 的依赖,适用于 RNN(LSTM)网络(Batch Normalization 不能直接用于RNN,进行 normalization 操作,原因在于:

    RNN 处理的 Sequence 是变长的;

    RNN 是基于 time step 计算,如果直接使用 Batch Normalization 处理,需要保存每个 time step 下,mini btach 的均值和方差,效率低且占内存)。

    Batch Normalization 基于一个 mini batch 的数据计算均值和方差,而不是基于整个 Training set 来做,相当于进行梯度计算式引入噪声。因此,Batch Normalization 不适用于对噪声敏感的强化学习、生成模型(Generative model:GAN,VAE)使用。相反,Weight Normalization 对通过标量g gg和向量v vv对权重W WW进行重写,重写向量v vv 是固定的,因此,基于 Weight Normalization 的 Normalization 可以看做比 Batch Normalization 引入更少的噪声。

    不需要额外的存储空间来保存 mini batch 的均值和方差,同时实现 Weight Normalization 时,对深度学习网络进行正向信号传播和反向梯度计算带来的额外计算开销也很小。因此,要比采用 Batch Normalization 进行 normalization 操作时,速度快。 但是 Weight Normalization 不具备 Batch Normalization 把网络每一层的输出 Y 固定在一个变化范围的作用。因此,采用 Weight Normalization 进行 Normalization 时需要特别注意参数初始值的选择。

    5. Batch Normalization在什么时候用比较合适

    ​ 在CNN中,BN应作用在非线性映射前。在神经网络训练时遇到收敛速度很慢,或梯度爆炸等无法训练的状况时可以尝试BN来解决。另外,在一般使用情况下也可以加入BN来加快训练速度,提高模型精度。

    ​ BN比较适用的场景是:每个mini-batch比较大,数据分布比较接近。在进行训练之前,要做好充分的shuffle,否则效果会差很多。另外,由于BN需要在运行过程中统计每个mini-batch的一阶统计量和二阶统计量,因此不适用于动态的网络结构和RNN网络。

    更多相关内容
  • 特征归一化优点

    千次阅读 2019-11-11 20:15:43
    什么是特征归一化? 数据的标准化(normalization)是将数据按比例缩放,使之落入一个小的特定区间。在某些比较和评价的指标处理中经常会用到,去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的...

    什么是特征归一化?

    数据的标准化(normalization)是将数据按比例缩放,使之落入一个小的特定区间。在某些比较和评价的指标处理中经常会用到,去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的指标能够进行比较和加权其中最典型的就是数据的归一化处理,即将数据统一映射到[0,1]区间上。

    特征归一化的好处?

    (1)提升收敛速度对于线性model来说,数据归一化后,最优解的寻优过程明显会变得平缓,更容易正确的收敛到最优解.在这里插入图片描述

    数据归一化对梯度下降收敛速度产生的影响:
    比较这两个图,左图对其进行优化时,会得到一个窄长的椭圆形,导致在梯度下降时,梯度的方向为垂直等高线的方向而走之字形路线,这样会使迭代很慢,相比之下,右图的迭代就会很快(理解:也就是步长走多走少方向总是对的,不会走偏)。(2)提升模型的精度归一化的另一好处是提高精度。
    这在涉及到一些距离计算的算法时效果显著,比如算法要计算欧氏距离,上图中x2的取值范围比较小,涉及到距离计算时其对结果的影响远比x1带来的小,所以这就会造成精度的损失。所以归一化很有必要,他可以让各个特征对结果做出的贡献相同。在多指标评价体系中,由于各评价指标的性质不同,通常具有不同的量纲和数量级。当各指标间的水平相差很大时,如果直接用原始指标值进行分析,就会突出数值较高的指标在综合分析中的作用,相对削弱数值水平较低指标的作用。因此,为了保证结果的可靠性,需要对原始指标数据进行标准化处理。在数据分析之前,我们通常需要先将数据标准化(normalization),利用标准化后的数据进行数据分析。数据标准化也就是统计数据的指数化。数据标准化处理主要包括数据同趋化处理和无量纲化处理两个方面。数据同趋化处理主要解决不同性质数据问题,对不同性质指标直接加总不能正确反映不同作用力的综合结果,须先考虑改变逆指标数据性质,使所有指标对测评方案的作用力同趋化,再加总才能得出正确结果。数据无量纲化处理主要解决数据的可比性。经过上述标准化处理,原始数据均转换为无量纲化指标测评值,即各指标值都处于同一个数量级别上,可以进行综合测评分析。
    (3)深度学习中数据归一化可以防止模型梯度爆炸。
    总结:
    数据归一化不是万能的,在实际应用中,通过梯度下降法求解的模型通常是需要数据归一化的,包括线性回归、逻辑回归、持向量机(SVM)、神经网络等模型。
    但是决策树模型并不适用归一化

    展开全文
  • 1.2.优点归一化使数据有可比性,同时又保持相比较的两个数据之间的相对关系 转换成标准模式,防止仿射变换的影响。 减小几何变换的影响;加快梯度下降求最优解的速度,收敛加快 1.3.作用:归纳统一样本统计分布;...
  • 归一化优点和方法

    千次阅读 2017-07-16 21:51:00
    归一化后有两个好处:1)归一化后加快了梯度下降求最优解的速度;2)归一化有可能提高精度”。 1 归一化为什么能提高梯度下降法求解最优解的速度? 斯坦福机器学习视频做了很好的解释:...

    作者:zhanlijun 

    针对这个问题参考了wiki的解释: http://en.wikipedia.org/wiki/Feature_scaling。归一化后有两个好处:1)归一化后加快了梯度下降求最优解的速度;2)归一化有可能提高精度”。 

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

    斯坦福机器学习视频做了很好的解释: https://class.coursera.org/ml-003/lecture/21

    如下图所示,蓝色的圈圈图代表的是两个特征的等高线。其中左图两个特征X1和X2的区间相差非常大,X1区间是[0,2000],X2区间是 [1,5],其所形成的等高线非常尖。当使用梯度下降法寻求最优解时,很有可能走“之字型”路线(垂直等高线走),从而导致需要迭代很多次才能收敛; 

    而右图对两个原始特征进行了归一化,其对应的等高线显得很圆,在梯度下降进行求解时能较快的收敛。 

    因此如果机器学习模型使用梯度下降法求最优解时,归一化往往非常有必要,否则很难收敛甚至不能收敛。 

    为什么一些机器学习模型需要对数据进行归一化?

    2 归一化有可能提高精度

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

    3 归一化的类型

    1)线性归一化

    为什么一些机器学习模型需要对数据进行归一化?

    这种归一化方法比较适用在数值比较集中的情况。这种方法有个缺陷,如果max和min不稳定,很容易使得归一化结果不稳定,使得后续使用效果也不稳定。实际使用中可以用经验常量来替代max和min。 

    2)标准差标准化

    经过处理的数据符合标准正态分布,即均值为0,标准差为1,其转化函数为: 

    为什么一些机器学习模型需要对数据进行归一化?

    其中μ为所有样本数据的均值,σ为所有样本数据的标准差。 

    3)非线性归一化

    经常用在数据分化比较大的场景,有些数值很大,有些很小。通过一些数学函数,将原始值进行映射。该方法包括 log、指数,正切等。需要根据数据分布的情况,决定非线性函数的曲线,比如log(V, 2)还是log(V, 10)等。 

    文章出处:http://www.cnblogs.com/LBSer/p/4440590.html

    转载于:https://www.cnblogs.com/fisherinbox/p/7192055.html

    展开全文
  • 归一化的好处及归一化,标准化的处理方法 版权声明:本文为其他博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出...

    归一化的好处及归一化,标准化的处理方法

    版权声明:本文为其他博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
    本文链接: https://blog.csdn.net/pipisorry/article/details/52247379
             <!--一个博主专栏付费入口结束-->
            <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-d284373521.css">
                                        <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-d284373521.css">
                <div class="htmledit_views" id="content_views">
                                            <p>http://<a href="http://blog.csdn.net/pipisorry/article/details/52247379" rel="nofollow">blog.csdn.net/pipisorry/article/details/52247379</a></p>
    

    这里主要讲连续型特征归一化的常用方法。

    连续型特征还有一种处理方式是,先分桶/分箱(如等频/等距的分)[待写]进行离散化后再使用离散数据的处理方法。

    离散数据处理参考[数据预处理:独热编码(One-Hot Encoding)]。

    基础知识参考:

    [均值、方差与协方差矩阵]

    [矩阵论:向量范数和矩阵范数]

    数据的标准化(normalization)和归一化

        数据的标准化(normalization)是将数据按比例缩放,使之落入一个小的特定区间。在某些比较和评价的指标处理中经常会用到,去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的指标能够进行比较和加权。

        目前数据标准化方法有多种,归结起来可以分为直线型方法(如极值法、标准差法)、折线型方法(如三折线法)、曲线型方法(如半正态性分布)。不同的标准化方法,对系统的评价结果会产生不同的影响,然而不幸的是,在数据标准化方法的选择上,还没有通用的法则可以遵循。

    其中最典型的就是数据的归一化处理,即将数据统一映射到[0,1]区间上。

    归一化的目标

    1 把数变为(0,1)之间的小数
            主要是为了数据处理方便提出来的,把数据映射到0~1范围之内处理,更加便捷快速,应该归到数字信号处理范畴之内。
    2 把有量纲表达式变为无量纲表达式
            归一化是一种简化计算的方式,即将有量纲的表达式,经过变换,化为无量纲的表达式,成为纯量。 比如,复数阻抗可以归一化书写:Z = R + jωL = R(1 + jωL/R) ,复数部分变成了纯数量了,没有量纲。
    另外,微波之中也就是电路分析、信号系统、电磁波传输等,有很多运算都可以如此处理,既保证了运算的便捷,又能凸现出物理量的本质含义。

    归一化后有两个好处

    1. 提升模型的收敛速度

    如下图,x1的取值为0-2000,而x2的取值为1-5,假如只有这两个特征,对其进行优化时,会得到一个窄长的椭圆形,导致在梯度下降时,梯度的方向为垂直等高线的方向而走之字形路线,这样会使迭代很慢,相比之下,右图的迭代就会很快(理解:也就是步长走多走少方向总是对的,不会走偏)


    2.提升模型的精度

    归一化的另一好处是提高精度,这在涉及到一些距离计算的算法时效果显著,比如算法要计算欧氏距离,上图中x2的取值范围比较小,涉及到距离计算时其对结果的影响远比x1带来的小,所以这就会造成精度的损失。所以归一化很有必要,他可以让各个特征对结果做出的贡献相同。

        在多指标评价体系中,由于各评价指标的性质不同,通常具有不同的量纲和数量级。当各指标间的水平相差很大时,如果直接用原始指标值进行分析,就会突出数值较高的指标在综合分析中的作用,相对削弱数值水平较低指标的作用。因此,为了保证结果的可靠性,需要对原始指标数据进行标准化处理。

        在数据分析之前,我们通常需要先将数据标准化(normalization),利用标准化后的数据进行数据分析。数据标准化也就是统计数据的指数化。数据标准化处理主要包括数据同趋化处理和无量纲化处理两个方面。数据同趋化处理主要解决不同性质数据问题,对不同性质指标直接加总不能正确反映不同作用力的综合结果,须先考虑改变逆指标数据性质,使所有指标对测评方案的作用力同趋化,再加总才能得出正确结果。数据无量纲化处理主要解决数据的可比性。经过上述标准化处理,原始数据均转换为无量纲化指标测评值,即各指标值都处于同一个数量级别上,可以进行综合测评分析。

    从经验上说,归一化是让不同维度之间的特征在数值上有一定比较性,可以大大提高分类器的准确性。

    3. 深度学习中数据归一化可以防止模型梯度爆炸。

    数据需要归一化的机器学习算法

    需要归一化的模型:

            有些模型在各个维度进行不均匀伸缩后,最优解与原来不等价,例如SVM(距离分界面远的也拉近了,支持向量变多?)。对于这样的模型,除非本来各维数据的分布范围就比较接近,否则必须进行标准化,以免模型参数被分布范围较大或较小的数据dominate。
            有些模型在各个维度进行不均匀伸缩后,最优解与原来等价,例如logistic regression(因为θ的大小本来就自学习出不同的feature的重要性吧?)。对于这样的模型,是否标准化理论上不会改变最优解。但是,由于实际求解往往使用迭代算法,如果目标函数的形状太“扁”,迭代算法可能收敛得很慢甚至不收敛(模型结果不精确)。所以对于具有伸缩不变性的模型,最好也进行数据标准化。

            有些模型/优化方法的效果会强烈地依赖于特征是否归一化,如LogisticReg,SVM,NeuralNetwork,SGD等。

    不需要归一化的模型:

        (0/1取值的特征通常不需要归一化,归一化会破坏它的稀疏性。)

        有些模型则不受归一化影响,如DecisionTree。

        ICA好像不需要归一化(因为独立成分如果归一化了就不独立了?)。

        基于平方损失的最小二乘法OLS不需要归一化。

    [线性回归与特征归一化(feature scaling)]

    皮皮blog

     

     

    常见的数据归一化方法

    最常用的是 min-max标准化 和 z-score 标准化。

    min-max标准化(Min-max normalization)/0-1标准化(0-1 normalization)/线性函数归一化/离差标准化

    是对原始数据的线性变换,使结果落到[0,1]区间,转换函数如下:

    其中max为样本数据的最大值,min为样本数据的最小值。

    def Normalization(x):
        return [(float(i)-min(x))/float(max(x)-min(x)) for i in x]

    如果想要将数据映射到[-1,1],则将公式换成:

    x* = x* * 2 -1

    或者进行一个近似

    x* = (x - x_mean)/(x_max - x_min), x_mean表示数据的均值。

    def Normalization2(x):
        return [(float(i)-np.mean(x))/(max(x)-min(x)) for i in x]

    这种方法有一个缺陷就是当有新数据加入时,可能导致max和min的变化,需要重新定义。

    ps: 将数据归一化到[a,b]区间范围的方法:

    (1)首先找到原本样本数据X的最小值Min及最大值Max
    (2)计算系数:k=(b-a)/(Max-Min)
    (3)得到归一化到[a,b]区间的数据:Y=a+k(X-Min)  或者 Y=b+k(X-Max)

    即一个线性变换,在坐标上就是求直线方程,先求出系数,代入一个点对应的值(x的最大/最小就对应y的最大/最小)就ok了。

    z-score 标准化(zero-mean normalization)

    最常见的标准化方法就是Z标准化,也是SPSS中最为常用的标准化方法,spss默认的标准化方法就是z-score标准化。

    也叫标准差标准化,这种方法给予原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。

    经过处理的数据符合标准正态分布,即均值为0,标准差为1,注意,一般来说z-score不是归一化,而是标准化,归一化只是标准化的一种[lz]。

    其转化函数为:

    x* = (x - μ ) / σ

    其中μ为所有样本数据的均值,σ为所有样本数据的标准差。

    z-score标准化方法适用于属性A的最大值和最小值未知的情况,或有超出取值范围的离群数据的情况。该种标准化方式要求原始数据的分布可以近似为高斯分布,否则效果会变得很糟糕。

    标准化的公式很简单,步骤如下

      1.求出各变量(指标)的算术平均值(数学期望)xi和标准差si ;
      2.进行标准化处理:
      zij=(xij-xi)/si
      其中:zij为标准化后的变量值;xij为实际变量值。
      3.将逆指标前的正负号对调。
      标准化后的变量值围绕0上下波动,大于0说明高于平均水平,小于0说明低于平均水平。

    
     
    1. def z_score(x, axis):
    2. x = np.array(x).astype(float)
    3. xr = np.rollaxis(x, axis=axis)
    4. xr -= np.mean(x, axis=axis)
    5. xr /= np.std(x, axis=axis)
    6. # print(x)
    7. return x

    为什么z-score 标准化后的数据标准差为1?

    x-μ只改变均值,标准差不变,所以均值变为0

    (x-μ)/σ只会使标准差除以σ倍,所以标准差变为1

    这两种最常用方法使用场景:

    1、在分类、聚类算法中,需要使用距离来度量相似性的时候、或者使用PCA技术进行降维的时候,第二种方法(Z-score standardization)表现更好。

    2、在不涉及距离度量、协方差计算、数据不符合正太分布的时候,可以使用第一种方法或其他归一化方法。比如图像处理中,将RGB图像转换为灰度图像后将其值限定在[0 255]的范围。
    原因是使用第一种方法(线性变换后),其协方差产生了倍数值的缩放,因此这种方式无法消除量纲对方差、协方差的影响,对PCA分析影响巨大;同时,由于量纲的存在,使用不同的量纲、距离的计算结果会不同。而在第二种归一化方式中,新的数据由于对方差进行了归一化,这时候每个维度的量纲其实已经等价了,每个维度都服从均值为0、方差1的正态分布,在计算距离的时候,每个维度都是去量纲化的,避免了不同量纲的选取对距离计算产生的巨大影响。
    [再谈机器学习中的归一化方法(Normalization Method) ]

    皮皮blog

    log函数转换

    通过以10为底的log函数转换的方法同样可以实现归一下,具体方法如下:

    看了下网上很多介绍都是x*=log10(x),其实是有问题的,这个结果并非一定落到[0,1]区间上,应该还要除以log10(max),max为样本数据最大值,并且所有的数据都要大于等于1。

    atan函数转换

    用反正切函数也可以实现数据的归一化。

    使用这个方法需要注意的是如果想映射的区间为[0,1],则数据都应该大于等于0,小于0的数据将被映射到[-1,0]区间上,而并非所有数据标准化的结果都映射到[0,1]区间上。

    Decimal scaling小数定标标准化

    这种方法通过移动数据的小数点位置来进行标准化。小数点移动多少位取决于属性A的取值中的最大绝对值。

    将属性A的原始值x使用decimal scaling标准化到x'的计算方法是:
    x'=x/(10^j)
    其中,j是满足条件的最小整数。
    例如 假定A的值由-986到917,A的最大绝对值为986,为使用小数定标标准化,我们用每个值除以1000(即,j=3),这样,-986被规范化为-0.986。
    注意,标准化会对原始数据做出改变,因此需要保存所使用的标准化方法的参数,以便对后续的数据进行统一的标准化。

    Logistic/Softmax变换

    [Sigmod/Softmax变换 ]

    模糊量化模式

    新数据=1/2+1/2sin[派3.1415/(极大值-极小值)*(X-(极大值-极小值)/2) ] X为原数据

    皮皮blog

     

    数据标准化/归一化的编程实现

    python库实现和调用

    [Scikit-learn:数据预处理Preprocessing data ]

    from: http://blog.csdn.net/pipisorry/article/details/52247379

    ref:

     

    展开全文
  • 5、训练与推理中BN的区别 6、归一化的作用(优点) 7、批归一化BN适用范围 8、常见的归一化类型 9、BN、LN、IN与GN对比 10、BN 和 WN 比较 11、归一化和标准化的联系与区别 1、批归一化BN Batch Normalization是...
  • 图像归一化normalization

    千次阅读 2019-05-22 15:15:46
    一、图像归一化的好处: 1、转换成标准模式,防止仿射变换的影响。 2、减小几何变换的影响。 3、加快梯度下降求最优解的速度。 二、图像归一化的方法 1、线性函数转换,表达式如下: y=(x-MinValue)/(MaxValue-...
  • 最小最大值归一化(Min-Max Normalization)标准化(Standardization)白化(Whitening)PCA白化ZCA白化
  • 之前一直对各种归一化只停留下会使用的阶段,后来研究了一下,写下此文章当做读后感,如有任何理解错误,还请评论区指正。 提出背景: 总所周知,深度神经网络是很多层堆积而成,比如说一个网络有50层,第一...
  • 1 输入归一化 不同输入特征的取值范围差异比较大时,会影响到梯度下降法的效率。以2维特征为例,特征取值不同会导致大多数位置的梯度方向并不是最优的搜索方向,当使用梯度下降法寻求最优解时,会导致需要很多次迭代...
  • 批量归一化(Batch Normalization)

    万次阅读 多人点赞 2019-06-23 12:00:34
    对输入数据进行标准化处理的原因? 使输入数据各个特征的分布相近: 神经网络学习的本质就是学习数据的分布,如果...为什么要使用批量归一化? 使用浅层模型时,随着模型训练的进行,当每层中参数更新时,靠近...
  • 一般在神经网络中会用到数据的归一化,比如在卷积层后进行归一化然后再下采样然后再激活等。目前比较受欢迎的数据归一化层有:BN(Batch Normalization),LN(Layer Normalization),IN(Instance Normalization),GN...
  • 局部响应归一化(Local Response Normalization, 即LRN)首次提出于AlexNet。LRN的创意来源于神经生物学的侧抑制,被激活的神经元会抑制相邻的神经元。用一句话来形容LRN:让响应值大的feature map变得更大,让响应...
  • 矩阵归一化的好处

    千次阅读 2019-03-15 00:57:44
    最近在看Yang大牛稀疏表示论文的代码,发现里面很多的操作的用到了矩阵的列归一化,这里谈一谈列归一化的实现,以及其带来的好处。 矩阵的列归一化,就是将矩阵每一列的值,除以每一列所有元素平方和的绝对值,...
  • 目录:定义优点方法结构一、定义数据标准化(Normalization),也称为归一化归一化就是将你需要处理的数据在通过某种算法经过处理后,限制将其限定在你需要的一定的范围内。数据标准化处理是数据挖掘的一项基础...
  • 对标定物图像特征点的坐标进行归一化预处理, 以提高标定精度, 同时又保持线性方法快速、易实现的优点。在所提标定方法中, 一维标定物可自由运动, 不受场地环境约束, 使用灵活。通过仿真和真实实验, 验证了归一化特征...
  • 实现归一化的Max-Min3.用于稀疏矩阵的MaxAbs4.针对离群点RobustScaler方法总结与方法选择 前言 数据预处理是数据化运营过程中的重要环节,他直接决定了后期所有的数据工作的质量和价值输出。包括数据清洗、转换、...
  • 机器学习之数据预处理-标准
  • 深度学习中的9种归一化方法概述

    千次阅读 2021-01-29 10:27:06
    9 种 归一化(Normalization)方法概述
  • 归一化与正则化

    2021-03-29 17:40:26
    归一化与正则化 学自: https://blog.csdn.net/weixin_36604953/article/details/102652160 https://blog.csdn.net/zenghaitao0128/article/details/78361038 ... 归一化与正则化都属于四种特征缩放的方法,这四种分别...
  • 标准化和归一化 超全详解

    千次阅读 2020-09-03 21:48:21
    一、标准化 / 归一化定义 归一化和标准化经常被搞混,程度还比较严重,非常干扰大家的理解。为了方便后续的讨论,必须先明确二者的定义。 首先定义常见的结构化数据表格,第一行的表头是表示各种特征,而后每一列...
  • 深度神经网络中的归一化技术

    千次阅读 2019-02-12 08:03:26
    为什么我们需要归一化归一化一直是深度学习研究的一个活跃领域。归一化技术可以大大减少机器学习模型的训练时间。让我们看看归一化的一些好处。 它对每个特征进行归一化,以便它们保持每个特征的贡献,因为某些...
  • 白化和归一化

    2020-07-26 13:20:41
    白化和归一化 白化 白话的目的就是去除输入数据的冗余信息。 例如:训练数据是图像,由于图像中相邻像素之间具有很强的相关性,因此输入是冗余的的。白话的目的就是降低输入的荣誉的性。 输入数据集,经过白化处理后...
  • 数据变换-归一化与标准化

    千次阅读 2021-02-04 19:55:42
    一般在机器学习的模型训练之前,有...数据变换的方法有很多,比如数据平滑,数据聚集,数据概化,数据规范和属性构造等。本篇文章主要介绍数据规范,这是一种比较常用,也比较简单的方法。数据规范是使属性数...
  • 一. 归一化 1.归一化的目的 把数据变为(0,1)之间的数 ,使得在梯度下降的过程中,不同维度的θ值(或w)参数可以在接近的调整幅度上。保持数据在迭代过程中的θ值幅度基本一致。...包含了均值归一化和方差归一化
  • 在深度神经网络训练中,Batch...批量归一化(BN)是神经网络的标准化方法/层通常BN神经网络输入被归一化[0,1]或[-1,1]范围,或者意味着均值为0和方差等于1。BN对网络的中间层执行白化本文只关注BN为什么工作的这么好,...
  • 1、归一化(Normalization): 1.1 归一化概念与作用 1)概念: 将一列数据变化到某个固定区间(范围)中,通常,这个区间是[0, 1],广义的讲,可以是各种区间,比如映射到[0,1]一样可以继续映射到其他范围,图像...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 28,310
精华内容 11,324
关键字:

归一化的优点