PyTorch中,卷积层、池化层、转置卷积层输出特征图形状计算公式总结

在PyTorch中,卷积层(Convolutional Layer)、池化层(Pooling Layer,例如最大池化层)、以及转置卷积层(Transpose Convolutional Layer,也称为反卷积层或上采样层)的输出特征图形状可以根据输入特征图的形状和各层的参数计算输出。

假设输入特征图的形状为 (in_channel, in_height, in_width),以下是各层输出特征图形状的计算公式:

1. 卷积层(Convolutional Layer)输出特征图形状计算公式:

py 复制代码
out_channel = 卷积核的数量
out_height  = (in_height + 2 * padding - kernel_size) / stride + 1
out_width   = (in_width  + 2 * padding - kernel_size) / stride + 1

2. 池化层(Pooling Layer)输出特征图形状计算公式:

py 复制代码
out_channel = in_channel
out_height  = (in_height - kernel_size) / stride + 1
out_width   = (in_width  - kernel_size) / stride + 1

3. 转置卷积层(Transpose Convolutional Layer)输出特征图形状计算公式:

py 复制代码
out_channel = 卷积核的数量
out_height  = stride * (in_height - 1) + kernel_size - 2 * padding
out_width   = stride * (in_width  - 1) + kernel_size - 2 * padding
csharp 复制代码
如果步幅为s,填充为s/2(假设s/2是整数)且卷积核的高和宽为2s,转置卷积核会将输入的高和宽分别放大s倍

这些公式适用于PyTorch中的卷积、池化和转置卷积层,可以根据具体的网络架构和参数进行计算。

注意,PyTorch中的卷积层和池化层通常作为nn.Conv2dnn.MaxPool2d等模块提供,参数传递方式也要根据实际情况来设置。

相关推荐
传奇开心果编程4 分钟前
【传奇开心果系列】Flet框架实现的家庭记账本示例自定义模板
python·学习·ui·前端框架·自动化
别惹CC11 分钟前
Spring AI 进阶之路01:三步将 AI 整合进 Spring Boot
人工智能·spring boot·spring
王者鳜錸1 小时前
PYTHON让繁琐的工作自动化-PYTHON基础
python·microsoft·自动化
key_Go1 小时前
7.Ansible自动化之-实施任务控制
python·ansible·numpy
stbomei2 小时前
当 AI 开始 “理解” 情感:情感计算技术正在改写人机交互规则
人工智能·人机交互
Moshow郑锴7 小时前
人工智能中的(特征选择)数据过滤方法和包裹方法
人工智能
TY-20258 小时前
【CV 目标检测】Fast RCNN模型①——与R-CNN区别
人工智能·目标检测·目标跟踪·cnn
CareyWYR9 小时前
苹果芯片Mac使用Docker部署MinerU api服务
人工智能
失散139 小时前
自然语言处理——02 文本预处理(下)
人工智能·自然语言处理
wyiyiyi9 小时前
【Web后端】Django、flask及其场景——以构建系统原型为例
前端·数据库·后端·python·django·flask