当前位置: 首页 > news >正文

从0开始深度学习(26)——汇聚层/池化层

池化层通过减少特征图的尺寸来降低计算量和参数数量,同时增加模型的平移不变性和鲁棒性。汇聚层的主要优点之一是减轻卷积层对位置的过度敏感。

1 最大汇聚层、平均汇聚层

汇聚层和卷积核一样,是在输入图片上进行滑动计算,但是不同于卷积层的互相关运算,汇聚层的运算通常是计算汇聚窗口中所有元素的最大值或平均值。

1.1 最大汇聚层

在这里插入图片描述
上面操作的代码如下:

import torch
from torch import nnX = torch.tensor([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0]]])# 设置一个2*2的最大池化层
max_pooling=nn.MaxPool2d(kernel_size=2,stride=1)# 执行卷积操作
y = max_pooling(X)print(y.shape)
print(y)  

运行结果
在这里插入图片描述

1.2 平均汇聚层

在这里插入图片描述

import torch
from torch import nnX = torch.tensor([[[0.0, 1.0, 2.0], [3.0, 4.0, 5.0], [6.0, 7.0, 8.0]]])# 设置一个2*2的最大池化层
avg_pooling=nn.AvgPool2d(kernel_size=2,stride=1)# 执行卷积操作
y = avg_pooling(X)print(y.shape)
print(y)  

运行结果
在这里插入图片描述

2 填充和步幅

torch自带的汇聚层函数也可以进行填充和步幅设置。

2.1 平均汇聚层

AvgPool2d 的基本用法

参数说明

  • kernel_size: 池化窗口的大小,可以是一个整数或一个元组 (height, width)。
  • stride: 池化窗口的移动步幅,默认值为 kernel_size。
  • padding: 输入特征图的边缘填充大小,默认值为 0
  • count_include_pad: 是否在计算平均值时包括填充的零,默认值为 True。
  • divisor_override: 用于除法的自定义除数,默认值为 None,表示使用窗口大小作为除数。

2.2 最大池化层

MaxPool2d 的基本用法
参数说明

  • kernel_size: 池化窗口的大小,可以是一个整数或一个元组 (height, width)。
  • stride: 池化窗口的移动步幅,默认值为 kernel_size。
  • padding: 输入特征图的边缘填充大小,默认值为 0。
  • dilation: 池化窗口的膨胀系数,默认值为 1。
  • return_indices: 是否返回最大值的索引,默认值为 False。
  • ceil_mode: 是否使用向上取整的方式计算输出尺寸,默认值为 False。

3 多个通道

在处理多通道输入数据时,汇聚层的输出通道数与输入通道数相同。

http://www.lryc.cn/news/479234.html

相关文章:

  • 兼职发薪系统:高效、便捷的劳务发薪解决方案
  • MySQL数据库单表查询习题
  • 多模态PaliGemma——Google推出的基于SigLIP和Gemma的视觉语言模型
  • 电路原理:电阻桥。
  • 实践出真知:MVEL表达式中for循环的坑
  • Flutter运行App时出现“Running Gradle task ‘assembleDebug“问题解决
  • 基于SSM(Spring + Spring MVC + MyBatis)框架的咖啡馆管理系统
  • 【SpringBoot】18 上传文件到数据库(Thymeleaf + MySQL)
  • 计算机体系结构之系统吞吐量(三)
  • 高级 HarmonyOS主题课—— 帮助快速构建各种文本识别应用的课后习题
  • windows C#-异常和异常处理概述
  • 每日一题——第一百二十四题
  • 在 CentOS 7 上设置 OpenResty 开机启动
  • 势不可挡 创新引领 | 生信科技SOLIDWORKS 2025新品发布会·苏州站精彩回顾
  • 数仓之全量表、增量表、快照表、切片表、拉链表的基本概念
  • 【富集分析GSEA】如何理解富集分析以及应用
  • 一七五、HTML 不同类型的事件及其说明和示例
  • 数量少的连锁店要不要用智能巡检?
  • 【CSS】外边距塌陷
  • WPF MVVM入门系列教程(二、依赖属性)
  • Springboot集成syslog+logstash收集日志到ES
  • Devops业务价值流:软件研发最佳实践
  • Matplotlib 绘图艺术:从新手到高手的全面指南
  • [ shell 脚本实战篇 ] 编写恶意程序实现需求(恶意程序A监测特定目录B出现特定文件C执行恶意操作D-windows)
  • SQLI LABS | Less-33 GET-Bypass AddSlashes()
  • 界面控件DevExpress WPF中文教程:Data Grid——卡片视图设置
  • flink 内存配置(一):设置Flink进程内存
  • 贪心算法习题其三【力扣】【算法学习day.20】
  • 速盾:高防cdn针对网站的好处有哪些?
  • 【Java SE语法】抽象类(abstract class)和接口(interface)有什么异同?