归一化化定义:我是这样认为的,归一化化就是要把你需要处理的数据经过处理后(通过某种算法)限制在你需要的一定范围内。首先归一化是为了后面数据处理的方便,其次是保正程序运行时收敛加快。

所谓特征归一化,就是将不同类型的特征数值大小变为一致的过程。

特征归一化的意义

1. 提升模型的收敛速度

2. 提高精度,这在涉及到一些距离计算的算法时效果显著,比如算法要计算欧氏距离,上图中x2的取值范围比较小,涉及到距离计算时其对结果的影响远比x1带来的小,所以这就会造成精度的损失。

· 各特征之间的大小范围一致,才能使用距离度量等算法

· 加速梯度下降算法的收敛

· 在SVM算法中,一致化的特征能加速寻找支持向量的时间

· 不同的机器学习算法,能接受的输入数值范围不一样

归一化方法:

). 线性归一化,线性归一化会把输入数据都转换到[0 1]的范围,

2). 0均值标准化,0均值归一化方法将原始数据集归一化为均值为0、方差1的数据集,

关于归一化方法的选择:

1) 在分类、聚类算法中,需要使用距离来度量相似性的时候、或者使用PCA技术进行降维的时候,第二种方法(Z-score standardization)表现更好。
2) 在不涉及距离度量、协方差计算、数据不符合正太分布的时候,可以使用第一种方法或其他归一化方法。比如图像处理中,将RGB图像转换为灰度图像后将其值限定在[0 255]的范围。

sklearn中最常用的特征归一化方法MinMaxScaler和StandardScaler。

它默认将每种特征的值都归一化到[0,1]之间,归一化后的数值大小范围是可调的(根据MinMaxScaler的参数feature_range调整)。下面代码能将特征归一化到[-1,1]之间。

线性回归是一种回归分析技术,回归分析本质上就是一个函数估计的问题(函数估计包括参数估计和非参数估计),就是找出因变量和自变量之间的因果关系。回归分析的因变量是应该是连续变量,若因变量为离散变量,则问题转化为分类问题,回归分析是一个有监督学习问题。

处理数据时不进行归一化会有什么影响?归一化的作用是什么?什么时候需要归一化?有哪些归一化的方法?相关推荐

  1. MySQL导出数据反单引号_使用mysqldump导出数据时对字段中包含的单引号的处理

    最近在做一个日志统计项目,有一个辅助表是在MySQL数据库的,现在要将其迁移到Postgresql,自然是先用mysqldump将MySQL里面的数据导出,然后再导入到Postgresql即可.但在实 ...

  2. 从Excel中导入数据时,提示“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”的解决办法...

    注意,64位系统,用64位的补丁文件; https://www.cnblogs.com/A2008A/articles/2438962.html 操作系统:使用的是64位的Windows Server ...

  3. bartender外部表不是预期格式_批量合并Excel数据时“外部表不是预期格式”或“文件包含损坏数据”的两种情况...

    很多朋友在用Power Query合并(汇总)Excel数据时,碰到过"DataFormat.Error:外部表不是预期格式"或"DataFormat.Error:文件包 ...

  4. 存储mysql数据存在特殊字符时处理_转义 存储数据时特殊符号的处理

    function url_base64_encode($str){ //将这个方法处理后的数据可以存储,不会有特殊符号 if($str=="") return "&quo ...

  5. oracle 数据有引号,oracle插入字符串数据时字符串中有'单引号问题

    使用insert into(field1,field2...) values('val1','val2'...)时,若值中有单引号时会报错. 处理方法:判断一下val1,val2中是否含有单引号,若含 ...

  6. mysql 1455_关于Oracle 11g导出数据时 报 ORA-1455错误的处理

    关于Oracle 11g导出数据时 报 ORA-1455错误的处理,由于导出的该用户的表可能存在空数据表,那么可能就会出现此其异常. 关于Oracle 11g导出数据时 报 ORA-1455错误的处理 ...

  7. 在SQL 2005中用T-SQL插入中文数据时出现的问号或乱码的解决方案[转]

    在SQL 2005中用T-SQL插入中文数据时出现的问号或乱码的解决方案 病症表现为:主要表现为用T-sql语句插入中文数据时数据库显示全是问号"???"  解决办法: 第一种办法 ...

  8. Sqoop在导入MySQL数据时遇到Timestamp列为0000-00-00 00:00:00报错

    为什么80%的码农都做不了架构师?>>>    Sqoop在导入MySQL数据时遇到Timestamp列为'0000-00-00 00:00:00'时报错,解决方法是:在JDBC连接 ...

  9. sql loader 导入数据时的问题

    2019独角兽企业重金招聘Python工程师标准>>> 在使用oracle sql loader 工具导入数据时遇到的问题,具体的shell脚本如下: #!/bin/bashexpo ...

最新文章

  1. Java 洛谷 P1161 开灯
  2. 正则表达式的简单理解
  3. ICCV 2017 《Flow-Guided Feature Aggregation for Video Object Detection》论文笔记
  4. 安装Vuecli新版本正常,但是显示版本是低版本
  5. android Activity runOnUiThread() 方法的使用
  6. Jetty与Tomcat的区别 转
  7. Cordova开发总结(插件篇)
  8. 绿色五月我们能做点什么
  9. c语言 头文件卫士详解,C 语言条件编译与防止头文件重复
  10. Golang 入门 : 打造开发环境
  11. qi接收启动协议_基于QI协议的无线充电通信系统
  12. 计算机录入技术五笔输入法教案,五笔输入法教案
  13. 51单片机的前世今世
  14. 接口测试工具apipost关于post请求
  15. linux glibc升级
  16. 什么专业越老越吃香?
  17. Iphone 5s/iPad Air/iPad Mini 2 降级10.3.3
  18. Zabbix自定义报警提示声音
  19. 华为HCIE云计算认证备考通过心得
  20. 易支付PHP源码挖鱼网,最新易支付源码完整版 已pj全解密

热门文章

  1. python中resample函数实现重采样和降采样
  2. 最全动态规划题型详解
  3. 含有使字的诗句_带有强字的诗句
  4. Rstudio 修改RMD快捷键快速插入Python代码块
  5. iOS播放音乐与播放系统声音
  6. 文盾信息非结构化数据安全解决方案,高效防护企业文档安全
  7. with grant option作用
  8. 区块链实际应用中痛点
  9. Kubernetes CSI 介绍及使用
  10. Redis的三种启动方式