网上很多关于标准化和归一化的文章,不少是误人子弟的存在。这篇文字希望给大家讲清讲透这两个概念。

一、标准化(standardization)

公式一般为:(X-mean)/std,其中mean是平均值,std是方差。

从公式我们可以看出,标准化操作(standardization)是将数据按其属性(按列)减去平均值,然后再除以方差。这个过程从几何上理解就是,先将坐标轴零轴平移到均值这条线上,然后再进行一个缩放,涉及到的就是平移和缩放两个动作。这样处理以后的结果就是,对于每个属性(每列)来说,所有数据都聚集在0附近,方差为1。计算时对每个属性/每列分别进行。

下面我们通过实操加深印象,并真正理解标准化的实际意义。使用sklearn中的preprocessing中的scale()函数,可以直接将给定数据进行标准化。

首先我们导入需要的库,和需要处理的数据。我们随便导入一支股票,000002万科a。(数据源来自tushare pro版,感谢挖地兔)。

接着,我们选取该股票最后的100个交易日的数据,选取价格和成交量两个特征作为演示。很显然,这两个特征量纲不一样,数值相差很大,需要对他们进行一个数据预处理。先看一下原始数据:

对原始数据进行标准化,如下:

看到变化了吗,虽然各个点的相对位置看上去还是没变,但是坐标轴变了。均值是0,方差为1。

还有一种标准话的方法是使用sklearn.preprocessing.StandardScaler类,主要是fit()和transform(),使用该类的好处在于可以保存训练集中的参数(均值、方差)直接使用其对象转换测试集数据。

二、归一化(scale,缩放到一个指定范围,一般是0到1之间)

公式一般为:(X-min)/(max-min),其中min和max分别是该属性的最小值和最大值。

归一化其实是一种不太标准的翻译而已,真正要理解它,只需要知道它是一种缩放就行。归一化操作的过程,首先是把某个属性(按列)的最大值和最小值之间的距离看成是单位1,然后再看x和最小值的距离占总距离的比例。所以它总是一个处于0到1之间的百分数。

使用sklearn中的preprocessing中的MinMaxScaler类,可以实现归一化,具体方法如下:

各个点的相对位置还是没变,但是取值范围变成了[0,1]。

什么时候需要标准化和归一化?

那么是否任何情况都有必要进行标准化归一化呢?答案是否定的。我们所熟知的决策树、随机森林等概率模型,就不需要。因为它们并不关心变量的值,而是关心变量的分布和变量之间的条件概率。

用AI改变金融交易,欢迎关注微信公众号:炼金狂人

均值归一化_数据预处理:标准化和归一化相关推荐

  1. python 归一化_数据的标准化和归一化

    数据的标准化 归一化 归一化的目标 归一化的好处 归一化的方法 无量纲表达式 为什么要对数据进行归一化处理 常见的数据归一化方法 Python归一化处理方法 数据的标准化 数据的标准化(normali ...

  2. dataframe数据标准化处理_数据预处理——标准化/归一化(实例)

    这次我们来说说关于数据预处理中的数据标准化及归一化的问题.主要以理论+实例的方式为大家展示. 本次实验也将会展示部分数据以及代码,有兴趣的小伙伴可以自己动手试试~ 在本次实例过程中,我们使用的数据是: ...

  3. 对数坐标归一化_数据预处理-归一化/数据转换

    有时候我们在拿到原始数据的时候,我们不能直接使用.大概场景有下面这些,我遇到的 1. 数字比较大,容易爆计算量,更不容易收敛 2. 比如房子价格这种变量,并不是正态分布,有时候不利于我们做一些和正态分 ...

  4. python代码实现中心化_数据预处理——标准化(附python代码)

    数据标准化,是数据清洗的重要环节之一.主要目的是消除"量纲"和"不同规模"的影响,使其所放到相同的数据区间和范围,以减少规模.特征.分布差异等对数据模型的影响. ...

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

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

  6. 梯度消失、梯度爆炸、过拟合问题之神经网络应对方案:数据预处理、批量归一化、非饱和激活函数、梯度缩放和梯度裁剪、权重初始化、提前终止、集成学习、l1l2、Dropout

    数据预处理.批量归一化Batch Normalization.非饱和激活函数.梯度缩放(Gradient Scaling)和梯度裁剪(Gradient Clipping).权重初始化(Xavier+H ...

  7. 吴裕雄 python 机器学习——数据预处理标准化StandardScaler模型

    from sklearn.preprocessing import StandardScaler#数据预处理标准化StandardScaler模型 def test_StandardScaler(): ...

  8. matlab 均值中心化,数据预处理之中心化(零均值化)与标准化(归一化)

    在机器学习回归问题,以及训练神经网络过程中,通常需要对原始数据进行中心化(零均值化)与标准化(归一化)处理. 背景 在数据挖掘数据处理过程中,不同评价指标往往具有不同的量纲和量纲单位,这样的情况会影响 ...

  9. 机器学习中数据预处理——标准化/归一化方法(scaler)

    由于工作问题比较忙,有两周没有总结一下工作学习中遇到的问题. 这篇主要是关于机器学习中的数据预处理的scaler变化. 工作中遇到的问题是:流量预测问题,拿到的数据差距非常大,凌晨的通话流量很少几乎为 ...

最新文章

  1. iOS开发UI篇—UITableviewcell的性能优化和缓存机制
  2. python取均匀不重复的随机数
  3. python汽车仿真_汽车山羊问题的分析以及Python和MATLAB仿真实验
  4. uvalive5983(二分+dp)
  5. PostgreSQL csvlog 源码分析
  6. jre环境变量配置_详解java环境变量意思-用于解决环境搭建问题
  7. python传送带和斐波那契
  8. python编写姓名年龄_python小工具 - alert弹框输出姓名年龄、求和
  9. 基于JavaFX实现的数据库学生管理系统
  10. Salt-Syndic
  11. Ubuntu虚拟机及Petalinux开发平台安装
  12. Axure电脑web端通用元件库rplib文件格式+移动端app通用元件库rplib文件格式(内含使用教程)
  13. 因讨要介绍费引发纠纷 浙江龙湾一男子砍死房产中介
  14. 智能合约语言 传统编程语言 异同
  15. Linux之ansible 自动化运维工具
  16. libiconv android编译,linux环境下libiconv库基于Android NDK的编译方法
  17. acer 4741G驱动
  18. 【python】52周存钱法改进
  19. c语言编程对电脑配置的要求,请问学习电脑编程需要什么配置的笔记本电脑?价格多少?...
  20. Weakly Supervised Instance Segmentation using Class Peak Response

热门文章

  1. 白嫖党的福音,这5款实用的黑科技软件,干货满满,真是相见恨晚
  2. Android C++的sp指针简介
  3. 【UE4基础】蓝图使用Media Player播放自定义文件路径的Mp3文件
  4. 如何使用VGG16提取某层的特征?
  5. Northwind 和 pubs 示例数据库下载
  6. 下载网页或者外网视频
  7. BUUCTF - Web - upload三联
  8. Win11的两个实用技巧系列之u盘怎么设置密码?
  9. c语言 printf分栏输出,excel表格分栏打印输出的两种巧妙方法_excel教程
  10. 【PM 产品】产品经理的思维方式