归一化与标准化的区别

文章目录

  • 一、公式
  • 二、代码
  • 三、区别
  • 四、结论


一、公式

  1. 归一化
    X ′ = x − m i n m a x − m i n X' = { x-min \above{1pt} max-min} X=maxminxmin
    X ′ ′ = X ′ ∗ ( m a − m i ) + m i X'' = X' * (ma-mi) + mi X′′=X(mami)+mi

  2. 标准化
    X ′ = x − m e a n s t d X' = { x-mean \above{1pt} std} X=stdxmean

ps:

  • max:特征最大值
  • min:特征最小值
  • ma:特征归一化后的最大值
  • mi:特征归一化后的最小值
  • mean:特征均值
  • std:特征标准差

二、代码

  1. 归一化
from sklearn.preprocessing import MinMaxScaler
import pandas as pdif __name__ == '__main__':# 初始化数据columns = ['点赞', '投币', '收藏']data = [[1, 5, 12],[13, 2, 5],[9, 9, 6],[2, 5, 0]]data = pd.DataFrame(data=data, columns=columns)print(data)#    点赞  投币  收藏# 0   1   5  12# 1  13   2   5# 2   9   9   6# 3   2   5   0# 定义缩放范围min_scaler, max_scaler = 0, 1# 初始化缩放器scaler = MinMaxScaler(feature_range=(min_scaler, max_scaler))# 执行归一化data_minmax = scaler.fit_transform(data[columns])print(data_minmax)# [[0.         0.42857143 1.        ]#  [1.         0.         0.41666667]#  [0.66666667 1.         0.5       ]#  [0.08333333 0.42857143 0.        ]]
  1. 标准化
from sklearn.preprocessing import StandardScaler
import pandas as pdif __name__ == '__main__':# 初始化数据columns = ['点赞', '投币', '收藏']data = [[1, 5, 12],[13, 2, 5],[9, 9, 6],[2, 5, 0]]data = pd.DataFrame(data=data, columns=columns)print(data)#    点赞  投币  收藏# 0   1   5  12# 1  13   2   5# 2   9   9   6# 3   2   5   0# 定义缩放范围min_scaler, max_scaler = 0, 1# 初始化缩放器scaler = StandardScaler()# 执行标准化【均值为0标准差为1】data_minmax = scaler.fit_transform(data[columns])print(data_minmax)# [[-1.05662467 -0.10050378  1.46552595]#  [ 1.35851743 -1.30654916 -0.17586311]#  [ 0.55347007  1.50755672  0.05862104]#  [-0.85536283 -0.10050378 -1.34828388]]

三、区别

归一化与标准化都是对数据的特征进行缩放,二者的区别是:

  1. 标准化受异常样本的影响小
    样本中如果出现异常值的话,该值可能会非常大或非常小,归一化的分母是最大值与最小值的差,这很可能会导致正常样本的值都挤在一个跟小的范围内,从而影响预测结果,而标准化的分母是样本标准差,受异常点的影响较小。
  2. 符合统计学假设
    自然界中的数值特征多是符合正态分布的,标准化基于这个隐含假设,将这个正态分布调整为均值为0,方差为1的标准正态分布。

四、结论

在需要进行特征缩放的数据集上 尽量采用标准化 而不是归一化去解决问题(另外还有一点需要特别注意,要把训练集和测试集分开后再分别标准化,否则会将测试集的信息引入到训练集中从而影响训练结果)


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/101275.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

常见的C/C++开源数值计算库

1. Eigen Eigen 是一个线性算术的 C 模板库,包括:vectors, matrices, 以及相关算法。功能强大、快速、优雅以及支持多平台。 2. Blaze Blaze 是一个开源、高性能 C 数学库,用于密集和稀疏算术。凭借其最先进的 智能表达式模板 实现&#x…

选择智慧公厕解决方案,开创智慧城市公共厕所新时代

在城市建设和发展中,公厕作为一个不可或缺的城市基础设施,直接关系到城市形象的提升和居民生活品质的改善。然而,传统的公厕存在着管理不便、卫生状况差、设施陈旧等问题。为了解决这些困扰着城市发展的难题,智慧公厕源头厂家广州…

mysql 信号量(Semaphores)信息

以下是show ENGINE innodb status内容中信号量(Semaphores)的信息 ---------- SEMAPHORES ---------- OS WAIT ARRAY INFO: reservation count 103550558 OS WAIT ARRAY INFO: signal count 1874952750 RW-shared spins 0, rounds 581651603, OS waits …

视频监控系统/视频汇聚平台EasyCVR如何反向代理进行后端保活?

安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安…

【问题总结】级数的括号可以拆吗?

问题 今天在做题的时候发现,括号这个问题时常出现。Σun,Σvn,和Σ(unvn),两个级数涉及到了括号增删,Σ(un-1un),级数钟的前后项的合并也涉及到了括号增删。 总结 添括号定理&…

利用异常实现短期hook

场景1 调用目标call 需要跳过某些判断或者函数 场景2 目标call 只需要部分指令执行 大概实现技术 设置线程上下文设置drX寄存器 实现硬件执行断点 主动调用目标call 通过硬件断点获取寄存器或修改eip 以上实现不改变crc且不通过驱动实现。只对当前执行线程有效&#xff…

Android Termux安装MySQL,并使用cpolar实现公网安全远程连接[内网穿透]

文章目录 前言1.安装MariaDB2.安装cpolar内网穿透工具3. 创建安全隧道映射mysql4. 公网远程连接5. 固定远程连接地址 前言 Android作为移动设备,尽管最初并非设计为服务器,但是随着技术的进步我们可以将Android配置为生产力工具,变成一个随身…

2023-10-11 LeetCode每日一题()

2023-10-11每日一题 一、题目编号 2512. 奖励最顶尖的 K 名学生二、题目链接 点击跳转到题目位置 三、题目描述 给你两个字符串数组 positive_feedback 和 negative_feedback ,分别包含表示正面的和负面的词汇。不会 有单词同时是正面的和负面的。 一开始&…

docker概念

docker 容器:就是提供在多台主机上运行的应用程序相同的运行环境。 docker的概念 是开源的容器,是由Go语言开发的,是容器里面运用的工具,他是一个轻量级的虚拟机,可以利用docker在多台主机上创建与运行容器。 docke…

全国工商注册数据库的作用

随着经济的发展和市场竞争的加剧,越来越多的人开始关注公司的工商信息。这些信息不仅可以帮助人们了解公司的基本情况,还可以为投资者、合作伙伴、员工等提供决策依据。 工商数据库提供了全国范围内企业的基本信息。这些信息包括企业的名称、统一社会信用…

2018架构真题案例(四十九)

某文件采用多级索引结构,磁盘大小4K字节,每个块号4字节,那么二级索引结果时,文件最大。 A、1024 B、1024*1024 C、2048*2048 D、4096*4096 答案:B 霍尔三维结构以时间堆、()堆、知识堆组成…

聊聊Android签名检测7种核心检测方案详解

聊聊Android签名检测总结与反思 背景: 这篇文章只讲Android端签名检测,安卓发展到现在,因为国内环境没有谷歌市场,所以很多官方推荐的Api没法使用 ,所以国内的签名检测方式也是“千奇百怪” 。发展至今每种方法都有一…

【ARM Coresight 系列文章 9 -- ETM 介绍 1】

文章目录 ARM Coresight ETM 介绍1.1.1 ARM Coresight ETM 版本介绍1.1.2 ARM Coresight 常见术语1.2 ARM Coresight ETM 常用寄存器介绍1.2.1 TRCVIIECTLR(ViewInst Include-Exclude Control Register)1.2.2 TRCVISSCTLR(ViewInst Start/Stop Processing Element Comparator C…

【ElasticSearch】深入探索 DSL 查询语法,实现对文档不同程度的检索,以及对搜索结果的排序、分页和高亮操作

文章目录 前言一、Elasticsearch DSL Query 的分类二、全文检索查询2.1 match 查询2.2 multi_match 查询 三、精确查询3.1 term 查询3.2 range 查询 四、地理坐标查询4.1 geo_bounding_box 查询4.2 geo_distance 查询 五、复合查询5.1 function score 查询5.2 boolean 查询 六、…

WorkPlus一站式解决方案,助力企业构建统一门户系统

在信息爆炸的时代,企业管理面临着海量的数据和各类业务应用的复杂性。如何实现信息的井然有序、高效管理,成为企业发展的关键。WorkPlus作为领先的品牌,致力于打造统一门户系统,为企业提供全方位的服务和解决方案。本文将以知乎的…

常见的C/C++开源QP问题求解器

1. qpSWIFT qpSWIFT 是面向嵌入式和机器人应用的轻量级稀疏二次规划求解器。它采用带有 Mehrotra Predictor 校正步骤和 Nesterov Todd 缩放的 Primal-Dual Interioir Point 方法。 开发语言:C文档:传送门项目:传送门 2. OSQP OSQP&#…

广州华锐互动:候车室智能数字孪生系统实现交通信息可视化

随着科技的不断发展,数字化技术在各个领域得到了广泛的应用。智慧车站作为一种新型的交通服务模式,通过运用先进的数字化技术,为乘客提供了更加便捷、舒适的出行体验。 将智慧车站与数字孪生大屏结合,可以将实际现实世界的实体车站…

Python 中最常用的4种股票价格移动平均方法(三)

一、简介 移动平均线是各级交易者和投资者最广泛使用的技术指标之一。它们通过计算特定时期内的平均价格来帮助消除股票价格的固有波动性。移动平均线计算起来很简单,但也有更复杂的形式,旨在捕捉市场的更多细微差别。 这个由四部分组成的系列将讨论总共 4 种不同的移动平均方…

【8】c++设计模式——>单一职责原则

C面向对象三大特性之一的封装指的就是将单一事物抽象出来组合成一个类,所以我们在设计类的时候每个类中处理的是单一事物而不是某些事物的集合。让类的功能单一,不让类与具体的事物耦合。 设计模式中所谓的单一职责原则,就是对一个类而言&…

CountDownLatch闭锁原理解析

CountDownLatch闭锁原理解析 在Java并发编程中,CountDownLatch是一个常用的工具类,用于实现闭锁(latch)。闭锁是一种常见的同步机制,用于控制线程的执行流程,确保某些线程在执行之前满足特定的条件。CountDownLatch尤其在多线程协…