归一化

Batch Normalization

点点圈 提交于 2019-12-29 14:36:41
《Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift》 随机梯度是训练深度网络的主流方法。尽管随机梯度下降法对于训练深度网络简单高效,但是它有个毛病,就是需要我们人为的去选择参数,比如学习率、参数初始化、权重衰减系数、drop out比例等。这些参数的选择对训练结果至关重要,以至于我们很多时间都浪费在这些的调参上。那么学完这篇文献之后,你可以不需要那么刻意的慢慢调整参数。BN算法(Batch Normalization)其强大之处如下:   (1)你可以选择比较大的初始学习率,让你的训练速度飙涨。以前还需要慢慢调整学习率,甚至在网络训练到一半的时候,还需要想着学习率进一步调小的比例选择多少比较合适,现在我们可以采用初始很大的学习率,然后学习率的衰减速度也很大,因为这个算法收敛很快。当然这个算法即使你选择了较小的学习率,也比以前的收敛速度快,因为它具有快速训练收敛的特性;   (2)你再也不用去理会过拟合中drop out、L2正则项参数的选择问题,采用BN算法后,你可以移除这两项参数,或者可以选择更小的L2正则约束参数了,因为BN具有提高网络泛化能力的特性;   (3)再也不需要使用使用局部响应归一化层了(局部响应归一化是Alexnet网络用到的方法

转——深度学习之BN算法(Batch Normailization)

∥☆過路亽.° 提交于 2019-12-29 14:36:20
Batch Normalization 学习笔记 原文地址 : http://blog.csdn.net/hjimce/article/details/50866313 作者 :hjimce 一、背景意义 本篇博文主要讲解2015年 深度学习 领域,非常值得学习的一篇文献:《Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift》,这个 算法 目前已经被大量的应用,最新的文献算法很多都会引用这个算法,进行网络训练,可见其强大之处非同一般啊。 近年来深度学习捷报连连、声名鹊起,随机梯度下架成了训练深度网络的主流方法。尽管随机梯度下降法对于训练深度网络简单高效,但是它有个毛病,就是需要我们人为的去选择参数,比如学习率、参数初始化、权重衰减系数、Drop out比例等。这些参数的选择对训练结果至关重要,以至于我们很多时间都浪费在这些的调参上。那么学完这篇文献之后,你可以不需要那么刻意的慢慢调整参数。BN算法(Batch Normalization)其强大之处如下: (1)你可以选择比较大的初始学习率,让你的训练速度飙涨。以前还需要慢慢调整学习率,甚至在网络训练到一半的时候,还需要想着学习率进一步调小的比例选择多少比较合适,现在我们可以采用初始很大的学习率

图像处理之gamma校正

限于喜欢 提交于 2019-12-28 03:51:37
1 gamma 校正背景   在电视和图形监视器中, 显像管 发生的电子束及其生成的图像亮度并不是随显像管的输入电压线性变化,电子流与输入电压相比是按照指数曲线变化的,输入电压的指数要大于 电子束 的指数。这说明暗区的信号要比实际情况更暗,而亮区要比实际情况更高。所以,要重现摄像机拍摄的画面,电视和监视器必须进行伽玛补偿。这种伽玛校正也可以由摄像机完成。我们对整个电视系统进行伽玛补偿的目的,是使摄像机根据入射光亮度与显像管的亮度对称而产生的输出信号,所以应对图像信号引入一个相反的 非线性失真 ,即与电视系统的伽玛曲线对应的摄像机伽玛曲线,它的值应为 1/ γ,我们称为摄像机的 伽玛值 。电视系统的伽玛值约为 2.2 ,所以电视系统的摄像机非线性补偿伽玛值为 0.45 。 彩色显像管 的伽玛值为 2.8 ,它的图像信号校正指数应为 1/2.8=0.35 ,但由于 显像管 内外 杂散光 的影响,重现图像的对比度和 饱和度 均有所降低,所以 彩色摄像机 的伽玛值仍多采用 0.45 。在实际应用中,我们可以根据实际情况在一定范围内调整伽玛值,以获得最佳效果。                            2 gamma 校正定义   (Gamma Correction ,伽玛校正):所谓伽玛校正就是对图像的伽玛曲线进行编辑,以对图像进行非线性色调编辑的方法

深度学习之Batch Normalization

China☆狼群 提交于 2019-12-27 10:11:30
在机器学习领域中,有一个重要的假设:独立同分布假设,也就是假设训练数据和测试数据是满足相同分布的,否则在训练集上学习到的模型在测试集上的表现会比较差。而在深层神经网络的训练中,当中间神经层的前一层参数发生改变时,该层的输入分布也会发生改变,也就是存在内部协变量偏移问题(Internal Covariate Shift),从而造成神经层的梯度消失,模型收敛过慢的问题。 Batch Normalization(BN,批量标准化)就是一种解决内部协变量偏移问题的方法,它通过对神经网络的中间层进行逐层归一化,让每一个中间层输入的分布保持稳定,即保持同一分布。 下面从以下四个方面来深入理解Batch Normalization的原理。 1、内部协变量偏移问题 2、训练时的Batch Normalization 3、推断时的Batch Normalization 4、Batch Normalization的优点 一、内部协变量偏移问题 1、内部协变量偏移问题的产生 在传统机器学习中,一个常见的问题是协变量偏移(Covariate Shift),大致的意思就是数据会随着时间而变化,用旧数据训练好的模型去预测新数据时,结果可能会不准确。输入数据可以看做是协变量,机器学习算法要求输入数据在训练集和测试集上满足同分布,这样把模型用来预测新的数据,才能有较好的结果。 而深层神经网络中的内部协变量偏移

归一化,标准化的小总结

♀尐吖头ヾ 提交于 2019-12-24 20:45:44
摘要 python3.65 名词替换: 每一个样本为每一行;每一个特征为每一列 。 归一化,标准化,标准化代码实现都在代码片中。 前言 问:数据为什么要归一化或者标准化? 答:当一组数据中, 所有特征对数据分析的作用都是一样,但是数值大小却差别很大的时候 ,就需要用到归一化或者标准化。 归一化 特点: 通过对原数据的处理,转换数据范围在0-1之间 实现公式: x 1 = x − m i n m a x − m i n x 2 = x 1 × ( m x − m i ) + m i x1=\frac{x-min}{max-min} \qquad \qquad x2=x1\times(mx-mi)+mi x 1 = m a x − m i n x − m i n ​ x 2 = x 1 × ( m x − m i ) + m i 公式介绍:x2:最终值;x:每个特征的每个数据;max:该特征最大值;min:该特征最小值;mx:生成数据范围最大值;mi:生成数据最小值。mi,mx=0,1 (默认) 作用域:每一个特征(也就是每一列) 缺点:异常值对最大值和最小值影响很大,它对异常点处理不好,鲁棒性差。 适用场景:适合传统精确小数据场景(场景较少) 标准化 特点: 通过对原始数据进行变换,把数据变为均值为0,方差为1的范围 实现公式: x 1 = x − m e a n δ x1=

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

做~自己de王妃 提交于 2019-12-18 13:45:51
线性回归是一种回归分析技术,回归分析本质上就是一个函数估计的问题(函数估计包括参数估计和非参数估计),就是找出因变量和自变量之间的因果关系。回归分析的因变量是应该是连续变量,若因变量为离散变量,则问题转化为分类问题,回归分析是一个有监督学习问题。 线性其实就是一系列一次特征的线性组合,在二维空间中是一条直线,在三维空间中是一个平面,然后推广到n维空间,可以理解维广义线性吧。 例如对房屋的价格预测,首先提取特征,特征的选取会影响模型的精度,比如房屋的高度与房屋的面积,毫无疑问面积是影响房价的重要因素,二高度基本与房价不相关 下图中挑选了 面积、我是数量、层数、建成时间四个特征,然后选取了一些train Set{x (i) , y (i) }。 有了这些数据之后就是进行训练,下面附一张有监督学习的示意图 Train Set 根据 学习算法得到模型h,对New Data x,直接用模型即可得到预测值y,本例中即可得到房屋大小,其实本质上就是根据历史数据来发现规律,事情总是偏向于向历史发生过次数多的方向发展。 下面就是计算模型了,才去的措施是经验风险最小化,即我们训练模型的宗旨是,模型训练数据上产生结果 , 要与实际的y (i) 越接近越好 (假定x 0 =1),定义损失函数J(θ)如下,即我们需要损失函数越小越好,本方法定义的J(θ)在最优化理论中称为凸(Convex)函数

数据标准化 Normalization

断了今生、忘了曾经 提交于 2019-12-18 08:56:19
  数据的标准化(normalization)是将数据按比例缩放,使之落入一个小的特定区间。在某些比较和评价的指标处理中经常会用到,去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的指标能够进行比较和加权。   其中最典型的就是数据的归一化处理,即将数据统一映射到[0,1]区间上,常见的数据归一化的方法有: min-max标准化(Min-max normalization) 也叫离差标准化,是对原始数据的线性变换,使结果落到[0,1]区间,转换函数如下: 其中max为样本数据的最大值,min为样本数据的最小值。这种方法有一个缺陷就是当有新数据加入时,可能导致max和min的变化,需要重新定义。 log函数转换 通过以10为底的log函数转换的方法同样可以实现归一下,具体方法如下: 看了下网上很多介绍都是x*=log10(x),其实是有问题的,这个结果并非一定落到[0,1]区间上,应该还要除以log10(max),max为样本数据最大值,并且所有的数据都要大于等于1。 atan函数转换 用反正切函数也可以实现数据的归一化: 使用这个方法需要注意的是如果想映射的区间为[0,1],则数据都应该大于等于0,小于0的数据将被映射到[-1,0]区间上。 而并非所有数据标准化的结果都映射到[0,1]区间上,其中最常见的标准化方法就是Z标准化,也是SPSS中最为常用的标准化方法:

Analyzing and Improving the Image Quality of StyleGAN (StyleGAN2 :分析和改善StyleGAN的图像质量)

北战南征 提交于 2019-12-18 08:31:09
NVIDIA 实验室在 styleGAN1 之后所做了改进,论文标题: Analyzing and Improving the Image Quality of StyleGAN (分析和改善StyleGAN的图像质量),本文是论文的翻译,因为作者本人水平有限,部分地方翻译可能有不妥当之处,还请读者不吝赐教,相互交流,一起进步。 摘要 基于样式的GAN架构(StyleGAN)在数据驱动的无条件生成图像建模中产生了最新的结果。我们将揭露和分析其一些特征工件,并提出模型架构和训练方法方面的更改以解决这些问题。特别是,我们重新设计了生成器归一化,重新审视了渐进式增长,并对生成器进行了正则化,以鼓励从潜矢量到图像的映射中的良好条件。除了改善图像质量,该路径长度调节器还带来了额外的好处,即发生器变得非常易于反转。这使得可以可靠地检测图像是否由特定网络生成。我们进一步可视化了发生器如何充分利用其输出分辨率,并确定了容量问题,从而激励我们训练更大的模型以进一步提高质量。总体而言,我们改进的模型在现有的分发质量指标和感知的图像质量方面都重新定义了无条件图像建模的最新技术水平。 1.介绍 通过生成方法,尤其是生成对抗网络(GAN)[15]生成的图像的分辨率和质量正在迅速提高[23,31,5]。目前,用于高分辨率图像合成的最新方法是StyleGAN [24],它已被证明可以在各种数据集上可靠地工作

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

百般思念 提交于 2019-12-17 20:04:35
线性回归是一种回归分析技术,回归分析本质上就是一个函数估计的问题(函数估计包括参数估计和非参数估计),就是找出因变量和自变量之间的因果关系。回归分析的因变量是应该是连续变量,若因变量为离散变量,则问题转化为分类问题,回归分析是一个有监督学习问题。 线性其实就是一系列一次特征的线性组合,在二维空间中是一条直线,在三维空间中是一个平面,然后推广到n维空间,可以理解维广义线性吧。 例如对房屋的价格预测,首先提取特征,特征的选取会影响模型的精度,比如房屋的高度与房屋的面积,毫无疑问面积是影响房价的重要因素,二高度基本与房价不相关 下图中挑选了 面积、我是数量、层数、建成时间四个特征,然后选取了一些train Set{x (i) , y (i) }。 有了这些数据之后就是进行训练,下面附一张有监督学习的示意图 Train Set 根据 学习算法得到模型h,对New Data x,直接用模型即可得到预测值y,本例中即可得到房屋大小,其实本质上就是根据历史数据来发现规律,事情总是偏向于向历史发生过次数多的方向发展。 下面就是计算模型了,才去的措施是经验风险最小化,即我们训练模型的宗旨是,模型训练数据上产生结果 , 要与实际的y (i) 越接近越好 (假定x 0 =1),定义损失函数J(θ)如下,即我们需要损失函数越小越好,本方法定义的J(θ)在最优化理论中称为凸(Convex)函数

论文理解之图像分区域合成 SEAN: Image Synthesis with Semantic Region-Adaptive Normalization

醉酒当歌 提交于 2019-12-17 12:24:21
本论文要解决的问题是使用条件生成对抗网络(cGAN)生成合成图像。具体来说,本文要完成的具体任务是使用一个分割掩码控制所生成的图像的布局,该分割掩码的每个语义区域都具有标签,而网络可以根据这些标签为每个区域「添加」具有真实感的风格。 尽管之前已经有一些针对该任务的框架了,但当前最佳的架构是 SPADE(也称为 GauGAN)。因此,本论文的研究也是以 SPADE 为起点的。 具体来说,本文针对原始 SPADE 的两个缺陷提出了新的改进方案。 第一,SPADE 仅使用一种风格代码来控制一张图像的整体风格,这不足以实现高质量的合成或对细节的控制。此外,SPADE 不允许在分割掩码的不同区域使用不同风格的输入图像。因此,第一个改进方案是实现对每个区域的单独控制,即新提出的架构每个区域(即每个区域实例)都能使用一种风格图像作为输入。 第二,研究者认为仅在网络的开始处注入风格信息不是个很好的选择。针对这一问题,本文提出了一种新的归一化构建模块 SEAN(semantic region-adaptive normalization),其可以使用风格输入图像为每个语义区域创建空间上不同的归一化参数。本研究有一个很重要的方面,即空间上不同的归一化参数取决于分割掩码本身以及风格输入图像。 本文在几个高难度的数据集(CelebAMaskHQ、CityScapes、ADE20K 和研究者新建的