栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

网络层数形状观察

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

网络层数形状观察

文章目录
  • 1.问题:无法查看网络输出层情况
  • 2.输出
  • 3.总结

1.问题:无法查看网络输出层情况
import torch
from torch import nn

net = nn.Sequential(
                nn.Conv2d(1,96,kernel_size=11,stride=4,padding=1),nn.ReLU(),
                nn.MaxPool2d(kernel_size=3,stride=2),
                nn.Conv2d(96,256,kernel_size=5,padding=2),nn.ReLU(),
                nn.MaxPool2d(kernel_size=3,stride=2),
                nn.Conv2d(256,384,kernel_size=3,padding=1),nn.ReLU(),
                nn.Conv2d(384, 384, kernel_size=3, padding=1), nn.ReLU(),
                nn.Conv2d(384,256,kernel_size=3,padding=1),nn.ReLU(),
                nn.MaxPool2d(kernel_size=3,stride=2),
                nn.Flatten(),
                nn.Linear(6400,4096),nn.ReLU(),
                nn.Dropout(p=0.5),
                nn.Linear(4096,4096),nn.ReLU(),
                nn.Dropout(p=0.5),
                nn.Linear(4096,10)
                    )

x = torch.randn(1,1,224,224)
for layer in net:
    x = layer(x)
    print(layer.__class__.__name__,'t;out_shape:t',x.shape)
2.输出
Conv2d 	;out_shape:	 torch.Size([1, 96, 54, 54])
ReLU 	;out_shape:	 torch.Size([1, 96, 54, 54])
MaxPool2d 	;out_shape:	 torch.Size([1, 96, 26, 26])
Conv2d 	;out_shape:	 torch.Size([1, 256, 26, 26])
ReLU 	;out_shape:	 torch.Size([1, 256, 26, 26])
MaxPool2d 	;out_shape:	 torch.Size([1, 256, 12, 12])
Conv2d 	;out_shape:	 torch.Size([1, 384, 12, 12])
ReLU 	;out_shape:	 torch.Size([1, 384, 12, 12])
Conv2d 	;out_shape:	 torch.Size([1, 384, 12, 12])
ReLU 	;out_shape:	 torch.Size([1, 384, 12, 12])
Conv2d 	;out_shape:	 torch.Size([1, 256, 12, 12])
ReLU 	;out_shape:	 torch.Size([1, 256, 12, 12])
MaxPool2d 	;out_shape:	 torch.Size([1, 256, 5, 5])
Flatten 	;out_shape:	 torch.Size([1, 6400])
Linear 	;out_shape:	 torch.Size([1, 4096])
ReLU 	;out_shape:	 torch.Size([1, 4096])
Dropout 	;out_shape:	 torch.Size([1, 4096])
Linear 	;out_shape:	 torch.Size([1, 4096])
ReLU 	;out_shape:	 torch.Size([1, 4096])
Dropout 	;out_shape:	 torch.Size([1, 4096])
Linear 	;out_shape:	 torch.Size([1, 10])

3.总结

通过循环就方便我们去观察每个层的数据形状大小,方便理解及后续调试。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/339560.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号