机器学习-9:MachineLN之数据归一化

你要的答案或许都在这里小鹏的博客目录

我想说:

有时候很羡慕一些人,从开始的无到有,譬如一些人平常工资三四千,但是由于很长时间的积累和习惯,他们的睡后收入是上班工资的四倍甚至五倍,但是我感觉他们可以,我也一定可以,所以这半年我就拿出更多的时间睡觉,但是我这半年的睡后收入可能只在五千左右;难道我做错了嘛?那么我就从每天的睡觉十个小时缩减到六个小时试试吧,测试一下睡眠时间是不是和睡后收入成反比的(测试结果明年公布),真是奇怪哈,不应该睡的越久睡后收入越多嘛!!!(哈哈哈,真实幽默哈,但是不一定有人欣赏你哈)

另外今天又背了一首诗《黄鹤楼》:(后面教女儿用的)

昔人已乘黄鹤去,此地空余黄鹤楼。

黄鹤一去不复返,白云千载空悠悠。

晴川历历汉阳树,芳草萋萋鹦鹉洲。

日暮乡关何处是?烟波江上使人愁。



说到数据归一化,那么我的问题是:

1. 什么是数据归一化?

2. 为什么要进行数据归一化?

3. 数据归一化的方法有哪些?

看到这里你的答案是什么?下面是我的答案:(但是在使用的时候你要知道使用场景和哪些需要归一化,例如SVM、线性回归等需要归一化,决策树就不需要归一化;DeepLN之CNN权重更新(笔记)数据挖掘中的问题很犀利,很实用;)


1. 什么是数据归一化?

归一化可以定义为:归一化就是要把你需要处理的数据经过处理后(通过某种算法)限制在你需要的一定范围内。首先归一化是为了后面数据处理的方便,其次是保证模型运行时收敛加快。 

下面以二维数据举个例子,下图是未归一化的数据:


下面两个图是通过不同算法进行归一化:



是的什么事样本归一化解释完了。

2. 为什么要进行数据归一化?

在我们模型训练的时候,数据在不同的取值范围内,例如x1取值[1:1000],特征x2的取值范[1:10],那么权重更新的时候,w1和w2值的范围或者比率会完全不同,下图中w和b对应w1和w2,可以看出函数的轮廓十分狭窄。


那么再看一下,在这样的数据的损失函数使用梯度下降,必须使用一个非常小的学习比率,因为如果是在这个位置,梯度下降法可能需要更多次迭代过程。


数据进行归一化后的图是这个样子的:



梯度下降的图事这样子的:


到这里,大家知道了为什么进行数据归一化训练的重要性:可以使用较大的学习率,并且加速收敛。

3. 数据归一化的方法有哪些? 适应的场景是什么?

(1) 线性归一化


在图像中可以简化为:x = ( (x / 255) -0.5 ) * 2, 归一化到[-1,1];

这种归一化方法比较适用在数值比较集中的情况。但是,如果max和min不稳定,很容易使得归一化结果不稳定,使得后续使用效果也不稳定,实际使用中可以用经验常量值来替代max和min。而且当有新数据加入时,可能导致max和min的变化,需要重新定义。

在不涉及距离度量、协方差计算、数据不符合正太分布的时候,可以使用第一种方法或其他归一化方法。比如图像处理中,将RGB图像转换为灰度图像后将其值限定在[0 255]的范围。

(2)标准差归一化

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


u: 所有数据的均值, σ: 所有数据的标准差。

该种归一化方式要求原始数据的分布可以近似为高斯分布,否则归一化的效果会变得很糟糕。在分类、聚类算法中,需要使用距离来度量相似性的时候、或者使用PCA技术进行降维的时候,这种方法表现更好。

(3)非线性归一化

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

例如:

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


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


我们正在打造一个系列,一起系统化学习知识,欢迎关注我们,文章可能会有错误,欢迎交流指正。并且发现一处错误可以联系machinelp,10红包,红包虽小,意义重大!让我们一起学习一起进步,这是一个共赢的时代,任何事情从我这里开始了都不会从我这里停下来,一起加油!


推荐阅读:

1. 机器学习-1:MachineLN之三要素

2. 机器学习-2:MachineLN之模型评估

3. 机器学习-3:MachineLN之dl

4. 机器学习-4:DeepLN之CNN解析

5. 机器学习-5:DeepLN之CNN权重更新(笔记)

6. 机器学习-6:DeepLN之CNN源码

7. 机器学习-7:MachineLN之激活函数

8. 机器学习-8:DeepLN之BN

9. 机器学习-9:MachineLN之数据归一化

10. 机器学习-10:MachineLN之样本不均衡

11. 机器学习-11:MachineLN之过拟合

12. 机器学习-12:MachineLN之优化算法

13. 机器学习-13:MachineLN之kNN

14. 机器学习-14:MachineLN之kNN源码

15. 机器学习-15:MachineLN之感知机

16. 机器学习-16:MachineLN之感知机源码

17. 机器学习-17:MachineLN之逻辑回归

18. 机器学习-18:MachineLN之逻辑回归源码






  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MachineLP

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值