自适应池化、最大值池化和均值池化效率的比较探究

简介: 自适应池化、最大值池化和均值池化效率的比较探究

1 问题

自适应池化、最大值池化和均值池化的效率,哪一个更高?


2 方法

三种池化方式的运行效率如何,使用对照试验得出:
首先定义卷积层,直接转换输入的通道数:

conv = nn.Conv2d(
   in_channels=1,  # 输入为单通道灰度图
   out_channels=128,   # 输出为128通道img
   kernel_size=3,
   stride=1,
   padding=1
)  # [-, 16, 28, 28]
定义三种池化方式:

avg_pool = nn.AvgPool2d(    
   kernel_size=2,
   stride=28
)
max_pool = nn.MaxPool2d(    
   kernel_size=2,
   stride=28  
)  
adapt_max_pool = nn.AdaptiveMaxPool2d(
   output_size=1
)
定义函数调用:

def stack_customized_max_pool(x):
   x = conv(x)
   out = max_pool(x)
   return out
def stack_customized_avg_pool(x):
   x = conv(x)
   out = avg_pool(x)
   return out
def stack_self_adapted(x):
   x = conv(x)
   out = adapt_max_pool(x)
return out
定义主函数:

if __name__ == '__main__':
   solution_list=[stack_customized_avg_pool,stack_customized_max_pool,stack_self_adapted]
   x = torch.rand(128, 1, 28, 28)
   for i in solution_list:
       start = time.time()
       for _ in range(5000):
           out = i(x)
       end = time.time()
       print(f'{i}的时间为:')
       print(end-start)
       print(out.shape)
打印结果为:

其中,自适应函数的运行原理为:
通过输入的output_size计算得到kernel_size、stride两个参数,padding参数默认为0。
计算公式如下:

3 结语

通过五千次定量循环实验发现,自适应最大值池化和两种自定义池化的效率排序为:最大值池化 ≈ 均值池化 > 自适应池化。

目录
相关文章
|
算法 数据安全/隐私保护
【算法练习】IDEA集成leetcode插件实现快速刷题
【算法练习】IDEA集成leetcode插件实现快速刷题
2053 0
【算法练习】IDEA集成leetcode插件实现快速刷题
|
Linux 虚拟化
VMware安装Linux虚拟机之NAT模式网络配置图文详解
VMware安装Linux虚拟机之NAT模式网络配置图文详解
1019 0
|
JSON 开发工具 git
工作五年多,idea插件推荐(一)
工作五年多,idea插件推荐(一)
|
PyTorch 算法框架/工具
Pytorch学习笔记(五):nn.AdaptiveAvgPool2d()函数详解
PyTorch中的`nn.AdaptiveAvgPool2d()`函数用于实现自适应平均池化,能够将输入特征图调整到指定的输出尺寸,而不需要手动计算池化核大小和步长。
1367 1
Pytorch学习笔记(五):nn.AdaptiveAvgPool2d()函数详解
|
存储 Java Nacos
Seata常见问题之springboot 2.3.7 和高版本 seata 2.0.0,1.6.1不兼容如何解决
Seata 是一个开源的分布式事务解决方案,旨在提供高效且简单的事务协调机制,以解决微服务架构下跨服务调用(分布式场景)的一致性问题。以下是Seata常见问题的一个合集
1769 0
|
前端开发 安全 JavaScript
Python的Flask框架的学习笔记(前后端变量传送,文件上传,网页返回)内含实战:实现一个简单的登录页面
Python的Flask框架的学习笔记(前后端变量传送,文件上传,网页返回)内含实战:实现一个简单的登录页面
687 0
|
存储 缓存 运维
阿里云经济型e与通用算力型u1实例性能、适用场景及常见问题
在阿里云的众多云服务器实例类型中,经济型e和通用算力型u1实例因其高性价比和广泛的适用性而备受青睐。2024年经济型e实例2核2G3M带宽40G ESSD Entry盘99元1年,通用算力型u1实例2核4G5M带宽80G ESSD Entry盘199元1年,本文将深入解析这两种实例的性能特点、适用场景以及购买建议,以供参考。
阿里云经济型e与通用算力型u1实例性能、适用场景及常见问题
|
机器学习/深度学习 编解码 计算机视觉
YOLOv8改进 | Neck | 添加双向特征金字塔BiFPN【含二次独家创新】
💡【YOLOv8专栏】探索特征融合新高度!BiFPN优化版提升检测性能🔍。双向加权融合解决信息丢失痛点,统一缩放增强模型效率🚀。论文&官方代码直达链接,模块化教程助你轻松实践📝。立即阅读:[YOLOv8涨点全攻略](https://blog.csdn.net/m0_67647321/category_12548649.html)✨
|
Web App开发 人工智能 前端开发
Google 浏览器中的 AI 魔法 — window.ai
本文介绍了如何在 Chrome Canary 中启用并使用设备端 AI 功能。通过下载 Chrome Canary 并启用相关 API,你可以在本地运行 AI 模型,无需互联网连接。文章详细讲解了设置步骤、确认 AI 可用性的方法以及如何使用 `window.ai` 进行文本会话。虽然目前的性能和功能还有待提升,但这一技术为未来的前端开发和智能应用提供了无限可能。
1104 0
|
编解码 算法 PyTorch
超好用!图像去雾算法C2PNet介绍与使用指南
超好用!图像去雾算法C2PNet介绍与使用指南

热门文章

最新文章