机器学习

Author:louwill

Machine Learning Lab

一直都有朋友在做机器学习模型时有疑问:我的数据要不要做标准化处理?

这个问题笔者也思考过,只不过不够系统,观点也比较单一,所以才有了上图中的【变量单位之间数量级差异过大】的回答。就着这个话题,笔者查阅相关资料,相对这个问题进行一个详细的阐述。

什么是数据标准化

在完整的机器学习流程中,数据标准化(Data Standardization)一直是一项重要的处理流程。一般我们将数据标准化放在预处理过程中,作为一项通用技术而存在。但很多时候我们并不清楚为什么要对数据做标准化处理,是不是做了标准化模型表现就一定会提升。

数据标准化的直接定义如下公式所示:

即对数据集特征每一数据减去特征均值后除以特征标准差。数据标准化可以将对应特征数据变换均值为0方差为1。经过数据标准化之后,数据集所有特征有了同样的变化范围。

数据标准化一个最直接的应用场景就是:当数据集的各个特征取值范围存在较大差异时,或者是各特征取值单位差异较大时,我们是需要使用标准化来对数据进行预处理的。

举个例子,一个包含两个特征的数据,其中一个特征取值范围为5000~10000,另一个特征取值范围仅有0.1-1,实际在建模训练时,无论什么模型,第一个特征对模型结果的影响都会大于第二个特征,这样的模型是很难有效做出准确预测的。

与数据归一化的区别

数据归一化(Normalization)同样也是一项数据预处理技术。但一直以来,我们都是标准化和归一化傻傻分不清楚,并且存在长期混用的情况。数据归一化的计算公式如下:

或者是:

笔者查阅相关资料,发现对于这两种数据变换方法,一直没有统一的界定。很多时候都存在标准化和归一化概念混用的情况,有时候把z-score变换叫归一化,有时候又把min-max归一化叫标准化。通过比对,笔者认为标准化指的就是z-score变换,即前述第一个公式。归一化指的就是min-max变换,即前述第二或第三个公式。

数据标准化为了不同特征之间具备可比性,经过标准化变换之后的特征分布没有发生改变。数据归一化的目的是使得各特征对目标变量的影响一致,会将特征数据进行伸缩变化,所以数据归一化是会改变特征数据分布的。

哪些模型对标准化处理比较敏感?

机器学习中有部分模型是基于距离度量进行模型预测和分类的。由于距离对特征之间不同取值范围非常敏感,所以基于距离读量的模型是十分有必要做数据标准化处理的。

最典型基于距离度量的模型包括k近邻、kmeans聚类、感知机和SVM。另外,线性回归类的几个模型一般情况下也是需要做数据标准化处理的。逻辑回归、决策树、基于决策树的Boosting和Bagging等集成学习模型对于特征取值大小并不敏感。所以这类模型一般不需要做数据标准化处理。另外有较多类别变量的数据也是不需要做标准化处理的。

结论

结论就是当数据特征取值范围或单位差异较大时,最好是做一下标准化处理。k近邻、kmeans聚类、感知机、SVM和线性回归类的模型,一般也是需要做数据标准化处理的。另外最好区分一下数据标准化和数据归一化。

参考资料:

https://towardsai.net/p/data-science/how-when-and-why-should-you-normalize-standardize-rescale-your-data-3f083def38ff

往期精彩:

【原创首发】机器学习公式推导与代码实现30讲.pdf

【原创首发】深度学习语义分割理论与实战指南.pdf

喜欢您就点个在看!

机器学习模型什么时候需要做数据标准化?相关推荐

  1. 【机器学习基础】机器学习模型什么时候需要做数据标准化?

    机器学习 Author:louwill Machine Learning Lab 一直都有朋友在做机器学习模型时有疑问:我的数据要不要做标准化处理? 这个问题笔者也思考过,只不过不够系统,观点也比较单 ...

  2. 什么时候需要coinitialize_机器学习模型什么时候需要做数据标准化?

    机器学习 Author:louwill Machine Learning Lab 一直都有朋友在做机器学习模型时有疑问:我的数据要不要做标准化处理? 这个问题笔者也思考过,只不过不够系统,观点也比较单 ...

  3. 将公平注入AI:机器学习模型即使在不公平数据上训练也能产生公平输出

    来源:ScienceAI 本文约1800字,建议阅读9分钟 如何迫使深度度量学习模型首先学习好的特征? 如果使用不平衡的数据集训练机器学习模型,比如一个包含远多于肤色较浅的人的图像的数据集,则当模型部 ...

  4. Amazon Redshift ML现已正式推出——使用SQL创建机器学习模型并通过您的数据进行预测

    借助 Amazon Redshift,您可以使用SQL在您的数据仓库.操作数据库和数据湖中查询和合并数EB的结构化和半结构化数据.现在,AQUA(高级查询加速器)已全面推出,您可以将您的查询性能最高提 ...

  5. 【机器学习】专题学习丨2. 数据标准化 Normalization丨

    好的资料 类型 文献 1. Normalization Techniques in Training DNNs: Methodology, Analysis and Application Githu ...

  6. 【知识卡片】机器学习模型 都需要标准化、归一化吗?什么时候不需要标准化、归一化

    数据标准化.归一化都是特征工程中的特征放缩过程. 归一化 这样会将数据映射到 [0-1] 中 标准化 将数据的平均值降为0,标准差降为1 标准化和归一化详细也可参考: 标准化与归一化的详细知识 那机器 ...

  7. 谷歌机器学习主管:10年自学数据科学的3点心得体会

    全文共3243字,预计学习时长10分钟 来源:Pexels 数据科学.机器学习和分析被认为是最热门的职业之一. 工业界.学术界和政府对熟练数据科学的从业人员的需求正在迅速增长.因此,目前的" ...

  8. stata最大值最小值命令_用Stata实现数据标准化

    本文作者:杨慧琳 文字编辑:李钊颖 技术总编:高金凤 重磅!!!爬虫俱乐部将于2019年10月2日至10月5日在湖北武汉举行Python编程技术培训,本次培训采用理论与案例相结合的方式,旨在帮助零基础 ...

  9. 人工智能AI、机器学习模型理解

    人工智能就是机器学习和大数据: 机器学习是什么:就是算法模型: 算法模型是什么: 俗地说,模型就是机器学习采用的算法."模型文件"一般说的是这个算法用到的各种输入.输出数据的值. ...

最新文章

  1. IDEA 解决Tomcat控制台输出乱码问题
  2. 【v3.6.2】iNeuOS工业互联网操作系统,发布实时存储方式:实时存储、变化存储、定时存储,设备振动状态和电能状态监测驱动...
  3. DFS应用——寻找欧拉回路
  4. Git 新建仓库推送远程技巧
  5. javascript脚本中使用json2.js解析json
  6. 5 批量更新多条记录_如何使用 F12 开发者工具自动批量删除新浪微博
  7. java 怎样 thread dump_怎样分析 JAVA 的 Thread Dumps
  8. Windows 11 高门槛“吓退”用户,Linux 成“香饽饽”?
  9. SAP系统管理员的工作
  10. 20155332 缓冲区溢出漏洞实验
  11. GoldWave2020注册激活码版下载音频处理制作教程
  12. Mac/Linux/Windos下仿站工具,基于Python的仿站工具,earnp/imitation仿站工具
  13. jy-10-SPRINGMYBATIS01——Spring-成恒
  14. 落户杭州难不难!入户杭州超全办理细则来了!想落户杭州的赶紧看
  15. swift ring
  16. 英雄联盟无法开始第二局(已解决,亲测有效)
  17. simulink【1】分段函数
  18. 新冠疫情历史数据(COVID-19-Data)
  19. ActionContext.getContext()的几种用法
  20. PTA7-1 厘米换算英尺英寸

热门文章

  1. 常用图标png、ico 图标下载,图片格式转换为ico
  2. arduino液位传感器_Arduino 水位检测器/传感器
  3. jQuery 删除HTML元素
  4. 用PL/SQL创建图书表
  5. python+scrapy爬虫 + mongoodb + hadoop+hive综合项目:招聘网站数据
  6. 安装x86版 OS X的系统要求
  7. qsort 函数的使用
  8. DataGrip使用(一)安装图文详细版(5月19更新)
  9. 生日悖论的泛化问题的讨论
  10. 2018年下半年软考--软件设计师上午试题及参考答案