归一化(标准化)相关问题

1. 数据标准化

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

2 归一化作用

1)无量纲化
2)避免数值问题:太大的数会引发数值问题。
3)一些模型求解的需要。例如梯度下降法。不归一化,容易产生陕谷,而学习率较大时,以之字形下降。学习率较小,则会产生直角形路线。
4)特殊情况,特殊分析,不同的模型,归一化有不同的原因。关于BP神经网络的,参考http://nnetinfo.com/nninfo/showText.jsp?id=37

3 数据标准化的方法([http://webdataanalysis.net/data-analysis-method/data-normalization

1 min-max标准化(Min-max normalization)

也叫离差标准化,是对原始数据的线性变换,使结果落到[0,1]区间,转换函数如下:
  其中max为样本数据的最大值,min为样本数据的最小值。这种方法有一个缺陷就是当有新数据加入时,可能导致max和min的变化,需要重新定义。

2 log函数转换

通过以10为底的log函数转换的方法同样可以实现归一下,具体方法如下:
  看了下网上很多介绍都是x*=log10(x),其实是有问题的,这个结果并非一定落到[0,1]区间上,应该还要除以log10(max),max为样本数据最大值,并且所有的数据都要大于等于1。

3 atan函数转换

用反正切函数也可以实现数据的归一化:
  使用这个方法需要注意的是如果想映射的区间为[0,1],则数据都应该大于等于0,小于0的数据将被映射到[-1,0]区间上。
  而并非所有数据标准化的结果都映射到[0,1]区间上,其中最常见的标准化方法就是Z标准化,也是SPSS中最为常用的标准化方法:

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

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

其中μ为所有样本数据的均值,σ为所有样本数据的标准差。z-score标准化方法适用于属性A的最大值和最小值未知的情况,或有超出取值范围的离群数据的情况。

4 归一化中要注意的点

1 数据特征的归一化,要对每一维特征而不是整个矩阵

整体做归一化相当于各向同性的放缩,做了也没有用。各维分别做归一化会丢失各维方差这一信息,但各维之间的相关系数可以保留。如果本来各维的量纲是相同的,最好不要做归一化,以尽可能多地保留信息。如果本来各维的量纲是不同的,那么直接做PCA没有意义,就需要先对各维分别归一化。
作者:王赟 Maigo
链接:https://www.zhihu.com/question/31186681/answer/50929278
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

另附另一参考文献:http://www.ilovematlab.cn/thread-63766-1-1.html

5 参考资料

https://zhuanlan.zhihu.com/p/23684808
http://www.ilovematlab.cn/thread-63766-1-1.html
http://blog.csdn.net/lkj345/article/details/50352385

你可能感兴趣的:(归一化(标准化)相关问题)