机器学习中常见数据的归一化(normalization)和标准化(standardization),其实这二者的作用和处理方法都很相似,本文作简单介绍。

两者的基本作用是消除不同变量之间量纲的影响,方便数据处理。在机器学习中的作用是:

1. 提高模型的收敛速度
假设某一模型包含两个特征x1,x2x1,x2x_1,x_2,x1x1x_1数值很大,而 x2x2x_2数值很小,两者的取值在平面上呈现一个狭长的椭圆形,这使得在梯度下降时,梯度的方向因为垂直等高线而走“之”字形路线,这会使迭代很慢。相反若两个变量取值对称性较好,构成圆形,则每一次迭代时梯度都会朝着正确的方向下降,避免走弯路,加快了收敛速度。

2.提高模型精度
在涉及到度量计算时,显然变量的数值量级差异会产生很大影响。例如:若x1x1x_1取值范围较小,对于度量计算的结果显然比x2x2x_2小,这就会造成精度的损失。因此归一化和标准化会让各个特征在对应权重相同时,自身的单位数值对结果做出的贡献相同。

下面简述归一化和标准化在处理方法上的差异。

归一化
做法:将原始数据映射到[0,1]区间。

常用方法:

1.min-max归一化

x′i=xi−xminxmax−xminxi′=xi−xminxmax−xmin

x_i^{'} = \frac{x_i-x_{min}}{x_{max}-x_{min}}
该方法是线性映射,最为直观快捷,但新增数据时可能需要更新最大值或最小值,而且受极端样本影响大,鲁棒性差,适合对小样本分析。

2.对数函数转换

x′=log10xlog10xmaxx′=log10xlog10xmax

x^{'} = \frac{log_{10}x}{log_{10}x_{max}}

3.反正切函数转换

x′=2arctan(x)πx′=2arctan(x)π

x^{'} =\frac{2arctan(x)} {\pi}

4.L2-norm归一化

x′=x||x||2x′=x||x||2

x^{'} = \frac{x}{||x||_2}

标准化
做法:将原始数据映射到一个较小的特定的范围内,映射后的数据均值为0,标准差为1。

常用方法:

1.z-score标准化

x′=x−μσx′=x−μσ

x^{'} = \frac{x-\mu}{\sigma}
最常用的标准化方法,该方法要求原始数据的分布近似为高斯分布,否标标准化的效果较差。样本数越多效果越稳定,比较适合对大数据分析。也常用在对数据降维操作(PCA等)之前。

2.Decimal scaling小数定标标准化

x′=x10jx′=x10j

x^{'} = \frac{x}{10^j}
其中, 10j10j10^j为大于样本最大值绝对值的最小满足条件的值。

该方法通过移动数据的小数点位置来进行标准化。小数点移动多少位取决于样本最大值的绝对值。

3.Logistic\softmax变换

x′=11+e−xx′=11+e−x

x^{'} =\frac{1}{1+e^{-x}}
这也就是sigmoid函数,两极分化的分布便于做数据的二分类。当然若要实现多分类,也可用softmax函数做标准化变换:

x′=ex∑niexix′=ex∑ineix

x^{'} = \frac{e^x}{\sum_{i}^{n}{e^x_i}}

数据的归一化与标准化相关推荐

  1. 机器学习之数据预处理——归一化,标准化

    机器学习之数据预处理--归一化,标准化 基础知识 1.什么是特征预处理 2.预处理方法 : 3.预处理API: 数据的标准化(normalization)和归一化 数据的标准化 数据归一化 1 把数变 ...

  2. matlab数据无量纲化_MATLAB数据预处理——归一化和标准化

    输入/输出数据的预处理 尺度变换 尺度变换也称归一化或标准化,是指通过变换处理将网络的输入/输出数据限制在[0,1]或[-1,1]区间内.进行尺度变换的原因有: (1)网络的各个输入数据常常具有不同的 ...

  3. r语言归一化_数据变换-归一化与标准化

    一般在机器学习的模型训练之前,有一个比较重要的步骤是数据变换. 因为,一般情况下,原始数据的各个特征的值并不在一个统一的范围内,这样数据之间就没有可比性. 数据变换的目的是将不同渠道,不同量级的数据转 ...

  4. java 数据归一化,数据变换-归一化与标准化

    一般在机器学习的模型训练之前,有一个比较重要的步骤是数据变换. 因为,一般情况下,原始数据的各个特征的值并不在一个统一的范围内,这样数据之间就没有可比性. 数据变换的目的是将不同渠道,不同量级的数据转 ...

  5. 数据归一化处理方法_数据预处理:归一化和标准化

    1. 概述 数据的归一化和标准化是特征缩放(feature scaling)的方法,是数据预处理的关键步骤.不同评价指标往往具有不同的量纲和量纲单位,这样的情况会影响到数据分析的结果,为了消除指标之间 ...

  6. 数据归一化、标准化和去中心化

    数据预处理,一般有数据归一化.标准化和去中心化. 归一化 将数据映射到[0,1]或[-1,1]区间范围内,不同特征的量纲不同,值范围大小不同,存在奇异值,对训练有影响. 标准化 将数据映射到满足标准正 ...

  7. 标准正态分布表_表达矩阵的归一化和标准化,去除极端值,异常值

    我们阅读量破万的综述:RNA-seq这十年(3万字长文综述)给粉丝朋友们带来了很多理解上的挑战,所以我们开辟专栏慢慢介绍其中的一些概念性的问题,上一期: RNA-seq的counts值,RPM, RP ...

  8. 数据的规范化,归一化,标准化,正则化

    原文地址:数据的规范化,归一化,标准化,正则化作者:打湿井盖 数据的规范化,归一化,标准化,正则化,这几个破词整得我头晕,首先这些词就没规范好,对数据做实验更晕,网上狂搜一阵后,发现数据归一化,标准化 ...

  9. 05_数据的特征处理,归一化,标准化、缺失值处理,以及案例,使用场景,处理办法等

    1.数据的特征处理 1.1.特征处理是什么 通过特定的统计方法(数学方法)将数据转换成算法要求的数据 1.1.1.特征处理的方法 1.1.1.1特征处理方法 特征处理主要有以下几种方法: 数值型数据: ...

最新文章

  1. Android SDK更新下载失败以及Studio首次安装取消自动下载SDK
  2. 中山大学计算机类专业分数线,中山大学计算机类专业2016年在广东理科高考录取最低分数线...
  3. android h5 有广告,那些H5在Android上显示的丧心病狂的坑
  4. (stl排序+检索)大理石在哪
  5. multimodel_forms 插件用法
  6. 相似度计算 java_Java基于余弦方法实现的计算相似度算法示例
  7. day20线程Thread的sleep方法
  8. kali的sqlmap安装
  9. 使用planetaryjs插件实现3维地球仪效果
  10. 图片的缩放和拖拽功能
  11. 【强烈推荐收藏】坚持3个月爆肝华为机试108题C++全解(适合新手入门,就业必刷套题)
  12. Vivado与Modelsim联合仿真配置【图文并茂】
  13. 安装win7激活提示0x80072F8F
  14. 百度AI人脸识别怎么实现,图片识别,文字识别,活体检测
  15. 简述php的特点,PHP语言有哪些优势和特点(三)
  16. 非安装tomcat,服务安装_离水的鱼_新浪博客
  17. Xilinx 7系列原语使用(时钟相关)——(一)
  18. 手机与软件兼容测试软件,如何使用Total Control手机软件兼容性测试?
  19. 代驾行业开发APP需要注意哪些
  20. 数据结构 - 二叉树的遍历

热门文章

  1. 如何优雅的设计一个告警系统?远没有你想的那么简单
  2. Label Correcting Algorithm(Python实现)
  3. 2012秋江苏省计算机二级上机试题,2011秋-2012秋江苏计算机等级考试上机
  4. SQL Update多表联合修改
  5. 给即将大三的自己一封信
  6. 动效设计实战案例解析-百度UE讲堂-专题视频课程
  7. Python识别图片出现的问题及解决办法
  8. 全球与中国反刍动物饲料市场现状及未来发展趋势
  9. android 相册列表,Android中的图库相册列表
  10. 电泵井php和psi,电泵井工况诊断与优化设计-汇总