0

0

Python常见的归一化方法有什么作用

WBOY

WBOY

发布时间:2023-04-20 08:58:14

|

3929人浏览过

|

来源于亿速云

转载

数据归一化是深度学习数据预处理中非常关键的步骤,可以起到统一量纲,防止小数据被吞噬的作用。

一:归一化的概念

归一化就是把所有数据都转化成[0,1]或者[-1,1]之间的数,其目的是为了取消各维数据之间的数量级差别,避免因为输入输出数据数量级差别大而造成网络预测误差过大。

二:归一化的作用

  1. 为了后面数据处理的方便,归一化可以避免一些不必要的数值问题。

  2. 为了程序运行时收敛速度更快

  3. 统一量纲。样本数据的评价标准不一样,需要对其量纲化,统一评价标准,这算是应用层面的需求。

    立即学习Python免费学习笔记(深入)”;

  4. 避免神经元饱和。就是说当神经元的激活在接近0或者1时,在这些区域,梯度几乎为0,这样在反向传播过程中,局部梯度就会接近于0,这样非常不利于网络的训练。

  5. 保证输出数据中数值小的不被吞食。

三:归一化的类型

1:线性归一化

线性归一化也被称为最小-最大规范化;离散标准化,是对原始数据的线性变换,将数据值映射到[0,1]之间。用公式表示为:

Python常见的归一化方法有什么作用

差标准化保留了原来数据中存在的关系,是消除量纲和数据取值范围影响的最简单的方法。代码实现如下:

def MaxMinNormalization(x,Max,Min):
    x = (x - Min) / (Max - Min);
    return x

适用范围:比较适用在数值比较集中的情况

缺点:

  1. 如果max和min不稳定,很容易使得归一化的结果不稳定,使得后续使用效果也不稳定。如果遇到超过目前属性[min,max]取值范围的时候,会引起系统报错。需要重新确定min和max。

  2. 如果数值集中的某个数值很大,则规范化后各值接近于0,并且将会相差不大。(如 1,1.2,1.3,1.4,1.5,1.6,10)这组数据。

2:零-均值归一化(Z-score标准化)

Z-score标准化也被称为标准差标准化,经过处理的数据的均值为0,标准差为1。其转化公式为:

Python常见的归一化方法有什么作用

其中Python常见的归一化方法有什么作用为原始数据的均值,Python常见的归一化方法有什么作用为原始数据的标准差,是当前用的最多的标准化公式

这种方法给予原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。经过处理的数据符合标准正态分布,即均值为0,标准差为1,这里的关键在于复合标准正态分布

代码实现如下:

def Z_ScoreNormalization(x,mu,sigma):
    x = (x - mu) / sigma;
    return x

3:小数定标规范化

这种方法通过移动属性值的小数数位,将属性值映射到[-1,1]之间,移动的小数位数取决于属性值绝对值的最大值。转换公式为:

Python常见的归一化方法有什么作用

AKCMS政府网站系统5.0.5 bulid20130620 GBK
AKCMS政府网站系统5.0.5 bulid20130620 GBK

在伟大祖国63年华诞即将到来之际,AKCMS发布了AK政府网站系统。AK政府网站系统基于AKCMS引擎构建,继承了AKCMS灵活、小巧、速度快、负载强、安全稳定等优点,针对政府网站的特点进行了专门的优化。 AK政府网站系统前台页面大气美观,一方面体现了政府网站应有的庄重严肃,又有贴近民众的交流互动。非常适合党、政机关作为政府网站使用。 编辑内容界面,支持所见即所得,会用WORD就会录入内容,插入图

下载

4:非线性归一化 

这个方法包括log,指数,正切

适用范围:经常用在数据分析比较大的场景,有些数值很大,有些很小,将原始值进行映射。

四:批归一化(BatchNormalization)

1:引入

在以往的神经网络训练时,仅仅只对输入层数据进行归一化处理,却没有在中间层进行归一化处理。虽然我们对输入数据进行了归一化处理,但是输入数据经过了Python常见的归一化方法有什么作用这样的矩阵乘法之后,其数据分布很可能发生很大改变,并且随着网络的层数不断加深。数据分布的变化将越来越大。因此这种在神经网络中间层进行的归一化处理,使得训练效果更好的方法就被称为批归一化(BN)

2:BN算法的优点

  1. 减少了人为选择参数

  2. 减少了对学习率的要求,我们可以使用初始状态下很大的学习率或者当使用较小的学习率时,算法也能够快速训练收敛。

  3. 破换了原来的数据分布,一定程度上缓解了过拟合(防止每批训练中某一个样本经常被挑选到)

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

3:批归一化(BN)算法流程

输入:上一层输出结果X={x1,x2,.....xm},学习参数Python常见的归一化方法有什么作用Python常见的归一化方法有什么作用

算法流程:

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

Python常见的归一化方法有什么作用

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

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

Python常见的归一化方法有什么作用

3)归一化处理得到

Python常见的归一化方法有什么作用

公式中的Python常见的归一化方法有什么作用是为了避免分母为0而加进去接近于0的很小的值。

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

Python常见的归一化方法有什么作用

其中Python常见的归一化方法有什么作用Python常见的归一化方法有什么作用为可学习的参数。

相关文章

python速学教程(入门到精通)
python速学教程(入门到精通)

python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
vlookup函数使用大全
vlookup函数使用大全

本专题整合了vlookup函数相关 教程,阅读专题下面的文章了解更多详细内容。

26

2025.12.30

金山文档相关教程
金山文档相关教程

本专题整合了金山文档相关教程,阅读专题下面的文章了解更多详细操作。

28

2025.12.30

PS反选快捷键
PS反选快捷键

本专题整合了ps反选快捷键介绍,阅读下面的文章找到答案。

25

2025.12.30

表格中一行两行的方法
表格中一行两行的方法

本专题整合了表格中一行两行的相关教程,阅读专题下面的文章了解更多详细内容。

3

2025.12.30

cpu温度过高解决方法大全
cpu温度过高解决方法大全

本专题整合了cpu温度过高相关教程,阅读专题下面的文章了解更多详细内容。

5

2025.12.30

ASCII码介绍
ASCII码介绍

本专题整合了ASCII码相关内容,阅读专题下面的文章了解更多详细内容。

31

2025.12.30

GPS是什么
GPS是什么

本专题整合了GPS相关内容,阅读专题下面的文章了解更多详细内容。

3

2025.12.30

wifi拒绝接入
wifi拒绝接入

本专题整合了wifi拒绝接入相关教程,阅读下面的文章了解更多详细方法。

9

2025.12.30

丰网速运介绍
丰网速运介绍

本专题整合了丰网速运查询入口以及相关内容,阅读专题下面的文章了解更多内容。

3

2025.12.30

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 0.6万人学习

Django 教程
Django 教程

共28课时 | 2.6万人学习

SciPy 教程
SciPy 教程

共10课时 | 0.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号