【机器学习合集】标准化与池化合集 ->(个人学习记录笔记)

文章目录

  • 标准化与池化
    • 1. 标准化/归一化
      • 1.1 归一化
        • 归一化的作用
      • 1.2 标准化
        • 批标准化方法 Batch Normailzation
        • 标准化方法的对比
        • 自动学习标准化方法
    • 2. 池化
      • 2.1 池化的作用
      • 2.2 常见的池化方法
      • 2.3 池化方法的差异
      • 2.4 池化的必要性

标准化与池化

1. 标准化/归一化

1.1 归一化

归一化的作用
  • 去除量纲的干扰,防止数值过小的特征被淹没
  • 保证数据的有效性
  • 稳定数据分布

在这里插入图片描述

1.2 标准化

批标准化方法 Batch Normailzation

在这里插入图片描述

批标准化的好处

  • 提高训练速度
  • 稳定模型训练

在这里插入图片描述

批标准化的缺点与改进

  • 要求固定的Batch长度与均匀采样
  • batch过小数值计算不稳定

在这里插入图片描述

标准化方法的对比

Batch Normalization(批标准化)、Layer Normalization(层标准化)、Group Normalization(组标准化)、Instance Normalization(实例标准化)都是用于深度神经网络的归一化技术,用于改善训练的稳定性和收敛速度。它们在归一化的对象和方式上有一些不同之处:

  1. Batch Normalization(批标准化)

    • 归一化对象:Batch Normalization是在每个神经层的输入上进行归一化,通常是对每个mini-batch的样本进行统计。
    • 归一化方式:它通过计算每个神经元的均值和方差,然后对每个神经元的输出进行归一化,以确保网络的中间层保持稳定。
  2. Layer Normalization(层标准化)

    • 归一化对象:Layer Normalization是在每个神经层的输入上进行归一化,但不考虑mini-batch内的样本,而是考虑单层的所有神经元
    • 归一化方式:它通过计算每个神经元的均值和方差,然后对单层内的所有神经元的输出进行归一化
  3. Group Normalization(组标准化)

    • 归一化对象:Group Normalization是在每个神经层的输入上进行归一化,但不是针对整个层或整个mini-batch,而是将神经元分成多个组,然后对每个组内的神经元进行归一化
    • 归一化方式:它通过计算每个组内神经元的均值和方差,然后对每个组内的神经元的输出进行归一化
  4. Instance Normalization(实例标准化)

    • 归一化对象:Instance Normalization是在每个神经元的输入上进行归一化,针对每个神经元的输出进行归一化,而不考虑层内、mini-batch内的其他神经元。
    • 归一化方式:它通过计算每个神经元的均值和方差,然后对每个神经元的输出进行归一化。

总的来说,这些归一化方法都有类似的目标,即减少内部协变量偏移(Internal Covariate Shift)以提高深度神经网络的训练稳定性和收敛速度。它们的不同之处在于归一化的对象和方式。选择哪种归一化方法通常取决于网络的结构、任务和实验表现。 Batch Normalization通常用于深度卷积神经网络中,而Layer Normalization、Group Normalization和Instance Normalization可能更适用于其他类型的网络或特定的任务。

当涉及到Batch Normalization(批标准化)、Layer Normalization(层标准化)、Group Normalization(组标准化)、Instance Normalization(实例标准化)时,它们之间的差异在于归一化的对象和方式。下面是一个图示示例,以帮助理解它们的区别:

Batch Normalization (BN)    Layer Normalization (LN)    Group Normalization (GN)       Instance Normalization (IN)
_______________               _______________              _______________              _______________
|     Layer 1   |              |     Layer 1   |           |     Layer 1   |             |     Layer 1   |
| --------------|              | --------------|           | --------------|             | --------------|
|  Neuron 1     |              |  Neuron 1     |           | Group 1       |             |  Neuron 1     |
|  Neuron 2     |              |  Neuron 2     |           | Group 2       |             |  Neuron 2     |
|  Neuron 3     |              |  Neuron 3     |           | Group 3       |             |  Neuron 3     |
|     ...       |              |     ...       |           |     ...       |             |     ...       |
|  Neuron N     |              |  Neuron N     |           | Group N       |             |  Neuron N     |
| --------------|              | --------------|           | --------------|             | --------------|
|     Layer 2   |              |     Layer 2   |           |     Layer 2   |             |     Layer 2   |
| --------------|              | --------------|           | --------------|             | --------------|
|  Neuron 1     |              |  Neuron 1     |           | Group 1       |             |  Neuron 1     |
|  Neuron 2     |              |  Neuron 2     |           | Group 2       |             |  Neuron 2     |
|  Neuron 3     |              |  Neuron 3     |           | Group 3       |             |  Neuron 3     |
|     ...       |              |     ...       |           |     ...       |             |     ...       |
|  Neuron N     |              |  Neuron N     |           | Group N       |             |  Neuron N     |
| _______________|             | _______________|          | ______________|             | ______________|
  • Batch Normalization:每个层内的神经元在整个mini-batch中进行归一化。
  • Layer Normalization:每一层的神经元在层内进行归一化,但不考虑mini-batch内的样本。
  • Group Normalization:每一层的神经元被分成多个组,每个组内的神经元进行归一化,不考虑mini-batch内的样本。
  • Instance Normalization:每个神经元单独进行归一化,不考虑层内、mini-batch内的其他神经元。

这个示例说明了它们之间在归一化对象和方式上的区别,希望有助于理解它们的工作原理。这些方法都是用于改善神经网络训练的稳定性和收敛速度,但在不同情况下选择适当的方法可能会有所不同。

在这里插入图片描述

自动学习标准化方法

在这里插入图片描述

2. 池化

2.1 池化的作用

作用:

  • 信息的抽象,去除非细节部分一些噪声的信息
  • 获得不同程度上的不变性:旋转不变性,平移不变性

在这里插入图片描述

2.2 常见的池化方法

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.3 池化方法的差异

不同的池化方法是用来降低特征图维度的方式,它们在计算输出时有不同的策略。以下是最大值池化、均值池化、随机池化、最小值池化、中值池化和混合池化等池化方法之间的主要区别:

  1. 最大值池化(Max Pooling)

    • 操作方式:在每个池化窗口内选择最大值作为输出。
    • 特点:Max Pooling突出最显著的特征,通常用于提取重要的特征。
  2. 均值池化(Average Pooling)

    • 操作方式:在每个池化窗口内计算所有值的平均值作为输出。
    • 特点:Average Pooling平滑特征图并减小尺寸,用于降低计算量。
  3. 随机池化(Random Pooling)

    • 操作方式:在每个池化窗口内随机选择一个值作为输出。
    • 特点:Random Pooling引入了随机性,有助于提高网络的鲁棒性和泛化性能。
  4. 最小值池化(Min Pooling)

    • 操作方式:在每个池化窗口内选择最小值作为输出。
    • 特点:Min Pooling可用于强调较小的特征值,用于特定任务。
  5. 中值池化(Median Pooling)

    • 操作方式:在每个池化窗口内选择中值(中间值)作为输出。
    • 特点:Median Pooling可以在一定程度上抵御异常值的影响,适用于一些异常值敏感的任务。
  6. 混合池化(Mixed Pooling)

    • 操作方式:结合多种池化策略,可能以一定的权重混合它们的输出。
    • 特点:Mixed Pooling允许根据任务的需要结合不同的池化策略,提高网络的灵活性。

这些池化方法之间的选择通常取决于具体的任务和数据,以及希望突出的特征。混合池化则允许根据需求结合多种池化策略,以实现更大的灵活性。在实际应用中,通常需要进行实验和调整以确定哪种池化方法最适合特定任务。

2.4 池化的必要性

在这里插入图片描述

注意:现阶段常常采用带步长的卷积代替池化操作

部分内容来自: 阿里云天池

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

springcloud笔记 (8) -网关 Gateway

网关 出国需要过海关 网关:网络的关卡 网关的作用 1:路由转发 2:安全控制 保护每个服务,不需要将每个暴露出去 3:负载均衡 1.没有网关:客户端直接访问我们的微服务,会需要在客户端配置很多…

【实战】Kubernetes安装持久化工具NFS-StorageClass

文章目录 前言技术积累存储类(storage class)什么是NFS什么是PV\PVC为什么要用NFS-StorageClass 安装NFS-StorageClass保证N8S集群正常投用安装NFS工具与客户端NFS安装常见错误安装NFS-StorageClass存储器 前言 前面的博文我们介绍了如何用kuberadmin的…

ExcelPatternTool 开箱即用的Excel工具包现已发布!

文章目录 ExcelPatternTool功能特点:快速开始使用说明常规类型高级类型Importable注解Exportable注解IImportOption导入选项IExportOption导出选项单元格样式StyleMapping样式映射使用数据库作为数据源 示例Sample1:不同类型字段导出Sample2:…

乘势“2”上 双影来袭 | 距大势智慧2023秋季新品发布会还有2天!

乘势“2”上 双影来袭 全国产、真安全 大势智慧2023秋季新品发布会 倒计时2天 10.27 | 14:30 一键扫码预约 #实景三维##三维重建##实景三维中国##国产替代##新品发布# ​​​

uni-app小程序,uview-ui组件样式无法穿透修改的解决办法

1.首先设置以下选项.该选项的作用是让微信小程序允许样式穿透. 在需要改动的文件内加上 options: { styleIsolation: shared } 2.然后再使用vue的样式穿透写法. ::v-deep .类样式{} 或者 /deep/ .类样式{}

css总结

记录做项目经常会写到的css 1、左边导航栏固定&#xff0c;右边div占满剩余宽度 <template><div class"entrance"><div class"left"></div><div class"right"><div class"content"></div>…

useLayoutEffect和useEffect的区别

使用方式 这两个函数的使用方式其实非常简单&#xff0c;他们都接受一个函数一个数组&#xff0c;只有在数组里面的值改变的情况下才会再次执行 effect。所以对于使用方式我就不过多介绍了&#xff0c;不清楚的可以先参考官网 。 差异 useEffect 是异步执行的&#xff0c;而…

UG\NX二次开发 获取面的面面积、周长

文章作者:里海 来源网站:王牌飞行员_里海_里海NX二次开发3000例,里海BlockUI专栏,C\C++-CSDN博客 感谢粉丝订阅 感谢 weixin_38891498 订阅本专栏,非常感谢。 简介 UG\NX二次开发 获取面的面面积、周长 效果 代码 #include "me.hpp" #include <NXOpen/Session…

2021年下半年 软件设计师 上午试卷(1-28)

计算机指令系统采用多种寻址方式。立即寻址是指操作数包含在指令中&#xff0c;寄存器寻址是指操作数在寄存器中&#xff0c;直接寻址是指操作数的地址在指令中。这三种寻址方式获取操作数的速度 &#xff08;1&#xff09; 。 &#xff08;1&#xff09; A. 立即寻址最快&am…

小程序设计基本微信小程序的校园生活助手系统

项目介绍 通篇文章的撰写基础是实际的应用需要&#xff0c;然后在架构系统之前全面复习大学所修习的相关知识以及网络提供的技术应用教程&#xff0c;以校园生活助手系统的实际应用需要出发&#xff0c;架构系统来改善现校园生活助手系统工作流程繁琐等问题。不仅如此以操作者…

lv8 嵌入式开发-网络编程开发 20 域名解析与http服务实现原理

目录 1 域名解析 2 如何实现万维网服务器&#xff1f; 2.1 HTTP 的操作过程 2.2 万维网服务器实现 1 域名解析 域名解析gethostbyname函数 主机结构在 <netdb.h> 中定义如下&#xff1a; struct hostent {char *h_name; /* 官方域名 */char **h_alias…

拦截器以及统一功能的实现

目录 引言 实现一个简单的拦截器 拦截器小结 统一访问前缀 统一异常处理 统一返回参数 ControllerAdvice 引言 HandlerInterceptor是Spring MVC框架提供的一个拦截器接口&#xff0c;它用于对请求进行拦截和处理。在Spring MVC中&#xff0c;拦截器可以用于实现一些通用的功能…

OpenCV官方教程中文版 —— 直方图均衡化

OpenCV官方教程中文版 —— 直方图均衡化 前言一、原理二、 OpenCV 中的直方图均衡化三、 CLAHE 有限对比适应性直方图均衡化 前言 本小节我们要学习直方图均衡化的概念&#xff0c;以及如何使用它来改善图片的对比。 一、原理 想象一下如果一副图像中的大多是像素点的像素值…

哪些车企AEB标配率「不及格」

对于汽车智能化来说&#xff0c;基础安全不分高低配。但实际情况&#xff0c;却是另一番景象。 在全球范围&#xff0c;目前不少国家及地区的监管机构正在考虑将AEB&#xff08;紧急制动系统&#xff09;作为乘用车的标配纳入法规&#xff0c;“这是道路安全向前迈出了重要的一…

2023全新TwoNav开源网址导航系统源码 | 去授权版

2023全新TwoNav开源网址导航系统源码 已过授权 所有功能可用 测试环境&#xff1a;NginxPHP7.4MySQL5.6 一款开源的书签导航管理程序&#xff0c;界面简洁&#xff0c;安装简单&#xff0c;使用方便&#xff0c;基础功能免费。 TwoNav可帮助你将浏览器书签集中式管理&#x…

C++中显示构造和隐式构造

截图来源于C primerplus 第六版。

行情分析——加密货币市场大盘走势(10.25)

目前大饼继续上涨&#xff0c;还没有看到震荡盘整的迹象。从MACD日线来看&#xff0c;连续绿色实心柱已经10天。现在有点上涨无力了&#xff0c;而现在入场做空性价比更高&#xff0c;看反弹到33000-32000。如果谨慎点&#xff0c;可以继续等待。 以太目前来看和大饼一样那个也…

Ubuntu OpenLDAP配置笔记

Ubuntu OpenLDAP配置笔记 问题&#xff08;需求&#xff09;LDAP服务端安装slapd和ldap-utils配置域名编辑hosts修改主机名验证增加一个域账号修改用户的密码 Linux桌面加域安装软件验证允许远程账号首次登录时自动创建HOME目录桌面登录 其它问题Ubuntu更新和安装太慢LDAP服务端…

深入了解JavaScript中的AJAX和HTTP请求

在现代Web开发中&#xff0c;AJAX&#xff08;Asynchronous JavaScript and XML&#xff09;和HTTP请求被广泛应用于实现动态交互式网页。本文将深入探讨AJAX的概念、工作原理以及使用方法。 什么是AJAX&#xff1f; AJAX是一种利用JavaScript和HTTP请求与服务器进行异步通信的…

Banana Pi BPI-W3(Armsom W3)RK3588开当板之调试UART

前言 本文主要讲解如何关于RK3588开发板UART的使用和调试方法&#xff0c;包括UART作为普通串口和控制台两种不同使用场景 一. 功能特点 Rockchip UART (Universal Asynchronous Receiver/Transmitter) 基于16550A串口标准&#xff0c;完整模块支持以下功能&#xff1a; 支…