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等模块提供,参数传递方式也要根据实际情况来设置。

相关推荐
cici158742 小时前
卡尔曼滤波器实现RBF神经网络训练
人工智能·深度学习·神经网络
QQ2422199795 小时前
基于python+微信小程序的家教管理系统_mh3j9
开发语言·python·微信小程序
Neolnfra5 小时前
拒绝数据“裸奔”!把顶级AI装进自己的硬盘,这款神仙开源工具我粉了
人工智能·开源·蓝耘maas
code_li5 小时前
只花了几分钟,用AI开发了一个微信小程序!(附教程)
人工智能·微信小程序·小程序
飞Link6 小时前
瑞萨联姻 Irida Labs:嵌入式开发者如何玩转“端侧视觉 AI”新范式?
人工智能
RSTJ_16256 小时前
PYTHON+AI LLM DAY THREETY-SEVEN
开发语言·人工智能·python
郝学胜-神的一滴6 小时前
深度学习优化核心:梯度下降与网络训练全解析
数据结构·人工智能·python·深度学习·算法·机器学习
Aision_6 小时前
Agent 为什么需要 Checkpoint?
人工智能·python·gpt·langchain·prompt·aigc·agi
清水白石0086 小时前
《Python性能深潜:从对象分配开销到“小对象风暴”的破解之道(含实战与最佳实践)》
开发语言·python
小贺儿开发6 小时前
《唐朝诡事录之长安》——盛世马球
人工智能·unity·ai·shader·绘画·影视·互动