【机器学习笔记】数据归一化
来源:互联网 发布:linux 删除多个文件夹 编辑:程序博客网 时间:2024/05/17 07:46
数据归一化
导语
在机器学习入门的过程中,我们经常见到在导入数据时,常常出现的一步操作叫做数据归一化(normalization),一开始我并不知道它的作用,甚至发现有些时候去掉数据归一化的步骤,代码一样可以运行,机器学习的结果甚至也是正确的,所以去调查了一番,什么是数据归一化,又到底是做什么的。
一、为什么要进行数据归一化
我们先观察下面的两个图像。
要找到他们的梯度方向。如下图所示
很显然是左侧的图像更容易去找,换作是机器学习之中,这一组数据更利于你的程序快速收敛。
往往我们需要进行学习和训练的一手数据都比较粗糙,大多都有着不同甚至是相差很大的量纲,这样就会出现右图中图像过“扁”的情况。这会导致学习过程中,收敛过慢甚至是不收敛的情况。
出于各种考虑,我们需要对数据进行处理,使我们的数据尽量处在相同的量纲,比如我们的x和y向量的数据经过处理后都处在[-1,1]的范围内。
二、数据归一化的基本方法
- 线性归一化
- 标准差归一化
- 对数归一化
- 反余切归一化
- mapminmax
1.线性归一化
简单公式表达:y = (x-min Value)/(max Value-min Value)
其中,x是归一化之前的数据,y是归一化之后的数据,max Value 和 min Value 分别对应这一组数据中的最大值和最小值。范围:[0,1]。
适用于:把原来数据等比例缩放限定在某一范围内,在不涉及距离度量和协方差计算的时候使用。
2.标准差归一化
简单公式表达:y = (x-μ)/σ
其中,x,y分别对应归一化前后数据。μ代表这组数据的均差,σ代表这组数据的方差。
适用于:原来数据近似高斯分布。同时是距离度量的。
3.对数归一化
简单公示表达:y= log10(x)
其中,x,y分别对应归一化前后数据。
4.反余切归一化
简单公示表达:y = atan(x)*2/pi
其中,x,y分别对应归一化前后数据。反余切函数的范围在[0,π/2],因此对反余切得到的值乘2除π,把范围控制在[0,1]
5.mapminmax归一化
这是matlab中封装好的方法,是线性归一化的一种。
表达式为:y = (ymax-ymin)*(x-xmin)/(xmax-xmin) + ymin
其中,x,y分别对应归一化前后数据。xmax,xmin分别对应处理前数据的最大值和最小值,而ymax,ymin则是处理后的数据的最大值最小值,换言之,就是我们希望我们处理后的数据的范围。matlab中使用方式是,[matlab_minmax_data,s1] = mapminmax(minmax_data);
matlab_minmax_data是处理后的矩阵,s1为mapminmax操作的索引,可以输出查看。minmax_data是处理前的数据。
三、简单matlab代码实现
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
输出如下:
- 【机器学习笔记】数据归一化
- 【机器学习笔记】1.数据归一化
- 机器学习-数据归一化
- 机器学习-数据归一化方法
- 机器学习-数据归一化方法
- [机器学习笔记]Note5--归一化
- 机器学习的数据归一化方法
- Matlab与机器学习-- 数据的归一化
- 机器学习数据标准和归一化
- NumPy学习笔记(4)--数据归一化
- NumPy学习笔记(4)--数据归一化
- 机器学习中的归一化
- 机器学习之归一化
- 机器学习-归一化、标准化
- 机器学习--归一化
- 【机器学习】归一化
- 为什么一些机器学习模型需要对数据进行归一化?
- 为什么一些机器学习模型需要对数据进行归一化?
- 【莫比乌斯反演】51Nod 1678 lyk与gcd
- Logcat遇到的问题
- 课程设计ASp.NET MVC5 Blog架构
- 1404 检查金币 DFS(水题)
- c++中自定义类型和内置类型,变量自增自减的差异
- 【机器学习笔记】数据归一化
- 使用Linux的V4L2读取摄像头数据+Opencv图像处理
- hibernate 表间关联查询
- 字符的编码问题,,,之计算机理解我们的方式
- HTML列表
- ADV-230-三角形
- POJ 3253 Fence Repair 用二叉堆解
- wifi-csi相关研究
- nodejs+mysql