机器学习为什么使用归一化? 有哪些归一化算法?
一、归一化的基本介绍
1. Why 归一化?
一些分类器需要计算样本之间的距离(如欧氏距离),例如KNN。如果一个特征值域范围非常大,那么距离计算就主要取决于这个特征,从而与实际情况相悖(比如这时实际情况是值域范围小的特征更重要)。或者举一个更浅显的例子:对房子进行分类判定时,我们考虑的因素有很多,比如:价格,面积。价格一般是800000元,面积一般是60㎡,如果直接使用数据集中这两个特征的原始数据进行训练的话,很明显,算法会向价格这个特征进行便宜,也就是说,机器学习算法更可能地会认为价格是决定房子质量的决定性因素,这显然是不合理的。因此,很多时候,我们需要对数据进行预处理操作,其中一个步骤就是特征归一化。
还可以从梯度下降的角度来理解,当两个特征的量纲差别很大时,损失函数呈扁平的椭圆形,梯度下降时会非常曲折;当两个特征归一化到相同的量纲与范围时,Loss可能接近圆形,而梯度的方向沿切线方向,优化过程比较简单。也就是说,量纲差别非常大时,往往需要更更更多的epoch才能达到较好的效果。
2. 归一化、标准化、中心化
(1)归一化
归一化:把数变为(0,1)之间的小数。归一化公式如下:
<
机器学习为什么使用归一化? 有哪些归一化算法?相关推荐
- 为什么一些机器学习模型需要对数据进行归一化?——1)归一化后加快了梯度下降求最优解的速度;2)归一化有可能提高精度...
为什么一些机器学习模型需要对数据进行归一化? http://www.cnblogs.com/LBSer/p/4440590.html 机器学习模型被互联网行业广泛应用,如排序(参见:排序学习实践).推 ...
- 机器学习中常见的几种归一化方法以及原因
在机器学习中,数据归一化是非常重要,它可能会导致模型坏掉或者训练出一个很奇怪的模型,为了让机器学习的模型更加适合实际情况,需要对数据进行归一化处理. 1.机器学习中常用的归一化方法: 2. 不同归一化 ...
- ncut算法分割图像的matlab,Ncut_9 归一化切割和图像分割算法及其论文, 不仅度量了不同分组之间总体不相似性, matlab 269万源代码下载- www.pudn.com...
文件名称: Ncut_9下载 收藏√ [ 5 4 3 2 1 ] 开发工具: matlab 文件大小: 835 KB 上传时间: 2017-01-10 下载次数: 0 提 供 者: 姚亚风 ...
- 机器学习中训练集和测试集归一化(matlab版)
转载自 https://blog.csdn.net/lkj345/article/details/50352385 背景介绍: 归一化后加快了梯度下降求最优解的速度,归一化有可能提高精度. 训练集 ...
- 何恺明、吴育昕最新成果:用组归一化替代批归一化
编译 | 阿司匹林 AI科技大本营按:近日,FAIR 团队的吴育昕和何恺明提出了组归一化(Group Normalization,简称 GN)的方法.其中,GN 将信号通道分成一个个组别,并在每个组别 ...
- svd降维 python案例_菜菜的机器学习sklearn实战-----sklearn中的降维算法PCA和SVD
菜菜的机器学习sklearn实战-----sklearn中的降维算法PCA和SVD 概述 从什么叫维度说开来 简单讲,shape中返回了几个数字就是几维. 一张表最多就是一维 当一个数组中存在2张3行 ...
- Python3:《机器学习笔记与实战》之Knn算法(2)识别手写数字
Python3:<机器学习笔记与实战>之Knn算法(2)识别手写数字 转载请注明作者和出处:https://blog.csdn.net/weixin_41858342/article/de ...
- 机器学习第七章之K近邻算法
K近邻算法(了解) 7.1 K近邻算法 7.1.1 K近邻算法的原理介绍 7.1.2 K近邻算法的计算步骤及代码实现 7.2 数据预处理之数据归一化 7.2.1 min-max标准化 7.2.2 Z- ...
- 数据处理中的归一化与反归一化
一.定义 数据归一化(标准化)是数据预处理的一项基础工作,不同评价指标往往具有不同的量纲和量纲单位,为避免影响数据分析结果.消除指标之间的量纲影响,须对数据进行标准化处理. 数据的归一化(normal ...
- matlab多组数据分别归一化,MATLAB数据归一化汇总(最全面的归一化介绍)
================================================== 几个要说明的函数接口: [Y,PS] = mapminmax(X) [Y,PS] = mapmin ...
最新文章
- hdu 3585(二分+最大团)
- ubuntu 安装sun-java5-jdk
- Linux centos 6.7 设置主机名
- Django(part1)--Django介绍与安装
- MFC图像点运算之灰度线性变化、灰度非线性变化、阈值化和均衡化处理
- 为JavaScript日期添加天数
- java与自动化的应用实例_自动化测试中java多线程的使用实例
- BOOST库介绍(二)——BOOST多线程相关库
- 共享库方案解决WAS中JAR包冲突
- js获取当前html路径,JavaScript获取当前url根目录(路径)
- html文字闪烁特效代码,HTML最简单的文字闪烁代码
- Android Studio 自带 模拟器无声音 解决方法
- 【实用网址】:平常用不到,想用的时候找不到
- 提高计算机系统速度的相关技术,提高计算机运行速度的几种措施
- 2023年天津天狮学院专升本微信收费平台缴费使用步骤
- clion:输出中文乱码终极解决方案
- 敏捷测试--开源电子书连载
- 安装部署docker
- Android 监听屏幕唤醒和关闭的广播
- android sqlite delete 返回值,SQLite 使用详解