数据规范化的方法
来源:互联网 发布:js 不区分大小写判断 编辑:程序博客网 时间:2024/04/28 01:19
转载自 http://roachsinai.github.io/2015/10/08/1%E6%95%B0%E6%8D%AE%E8%A7%84%E8%8C%83%E5%8C%96/
感觉这是机器学习重要的一环,又是一个坑。
说数据规范化是坑是因为规范化、标准化、归一化傻傻分不清。数据标准化/归一化方法(Normalization Method)汇总这一篇貌似还好一点。
在机器学习中数据所用的度量单位可能影响数据分析。例如,把height的度量单位从米变成英寸,把weight的度量单位从公斤改成磅,可能导致完全不同的结果。一般而言,用较小的单位表示属性将导致该属性具有较大值域,因此趋向于使这样的属性具有较大的影响或较高的“权重”。为了帮助避免对度量单位选择的依赖性,数据应该规范化或标准化。这涉及变换数据,使之落入较小的共同区间,如
规范化数据试图赋予所有属性相等的权重。对于涉及神经网络的分类算法或基于距离度量的分类(如最近邻分类)和聚类,规范化特别有用。如果使用神经网络后向传播算法进行分类挖掘,对训练元组中每个属性的输入值规范化将有助于加快学习阶段的速度。对于基于距离的方法,规范化可以帮助防止具有较大初始值域的属性(如income)与具有较小初始值域的属性(如二元属性)相比权重过大。在没有数据的先验知识时,规范化也是有用的。
下面介绍三种数据规范化方法,令
- 最小-最大规范化
- z-score规范化
- 小数定标规范化
- scaling 图表化显示
最小-最大规范化
最小-最大规范化对原始数据进行线性变换,又叫 range scaling。假设
把
最小-最大规范化保持原始数据值之间的联系。如果今后的输入实例落在A的原数据值域之外,则该方法将面临“越界”错误。
z-score规范化
在
其中,
上面的标准差可以用均值绝对偏差替换。
这样,使用均值绝对差的
对于离群点,均值绝对偏差
小数定标规范化
小数定标规范化通过移动属性
其中,
举例——小数定标。假设
注意,规范化可能将原来的数据改变很多,特别是使用
scaling 图表化显示
图片来自文献[1].
Pareto scaling reduces but does not completely remove the magnitude and seems more appropriate for chemical data from the same analytical technique where the larger peaks are often more reliable and less susceptible to noise. This has been explored by Paatero and Hopke who concluded that autoscaling is inappropriate for noisy data where the contribution of weak variables can become too high.[2]
而在分析化学中,因为更相信峰强度较高的粒子,做PLSDA时通常使用 Par scaling 而非 auto scaling。
[1] Berg R A, Hoefsloot H C J, Westerhuis J A, et al. Centering, scaling, and transformations: improving the biological information content of metabolomics data[J]. BMC genomics, 2006, 7(1): 1.
[2] Ivosev G, Burton L, Bonner R. Dimensionality reduction and visualization in principal component analysis[J]. Analytical chemistry, 2008, 80(13): 4933-4944.
- 数据规范化的方法
- 规范化(标准化)数据的方法
- 数据规范化常用方法
- 数据规范化(归一化)方法
- 规范化(标准化)数据的3种方法
- 数据的预处理之数据规范化
- 数据规范化
- 数据规范化
- 规范化(标准化)数据的3种方法[R语言课程]
- SQL规范化的数据修改语句
- 数据的规范化,归一化,标准化,正则化
- 规范化的C++编程方法备忘录 说明
- 编写规范化JavaScript代码的方法总结
- 标准化、规范化、二值化等多种机器学习数据预处理方法
- 的规范化
- 的规范化
- 规范化的C++编程方法备忘录 常用符号表示方法
- 逆规范化数据列表
- [leetcode]122. Best Time to Buy and Sell Stock II
- Linux Unit18--ftp
- ubantu下sqlserver安装及使用
- 1.1数组和链表:61. Rotate List(Leetocde)
- dmesg的用法
- 数据规范化的方法
- robot framework 遇到的坑之底部日志不显示问题
- linux 下的path变量
- ExtJs6学习(三)【DOM操作】
- 拥抱云计算——七牛云图床
- 使用commons-codec-1.10.jar的Base64实现字符串的加密解密
- Memcached 入门学习三(java 连接Memcached)
- EnableEventValidation="false"
- Asp.net MVC 传递数据 从前台到后台,包括单个对象,多个对象,集合