pytorch 模型怎么获取应该输入的形状

2023 年 5 月 26 日
 lyang

如题,比较简单的模型,要看代码加测试几个输入形状吗,有没有比较方便的工具

2419 次点击
所在节点    程序员
13 条回复
albert0yyyy
2023 年 5 月 26 日
随便输入一个,报个错。看看要多大的
565656
2023 年 5 月 26 日
自己随便输入报错里不就有了
Huelse
2023 年 5 月 26 日
报个错,tensorboard
connectsixboy
2023 年 5 月 26 日
模型文件导入 Netron 看一下
psycho9631
2023 年 5 月 26 日
torchinfo
lyang
2023 年 5 月 26 日
@albert0yyyy
@565656
@Huelse
我现在就是随便输入加报错提示,然后试出来,就想问问有什么快速些的方法
lyang
2023 年 5 月 26 日
@connectsixboy
@psycho9631
这些应该都是要输入一个测试数据的吧
565656
2023 年 5 月 26 日
@lyang #6 快速的话基本没有,因为有时候像第一层是卷积或者 transformer 层的话你可能知道一些输入大小,但是运行到后面如果有像全连接层的话还是会影响到输入的大小,所以必须走一遍全过程,最简单的方法就是输入报错
coldheart
2023 年 5 月 26 日
torchsummary
输入一个正确纬度的 tensor ,可视化各层的形状和参数量
lyang
2023 年 5 月 26 日
@565656 看来也只能这样了
@coldheart 我有时候测出来了输入形状,用这工具也报错,很尴尬,感觉要补挺多知识了
thinkershare
2023 年 5 月 26 日
没什么好办法,如果没有模型原代码,只能用数据走一遍,如果前向传播时候传递的参数非常复杂,你甚至可能没法尝试出结果。我一般分析模型也是用 netron, 但是 ONNIX 对 pytroch 的支持还是有问题。
Chekkibrki
2023 年 5 月 26 日
torchinfo.summary(model,Tensor)
Tensor:输入形状[N,C,H,W],然后用这个函数就能打印出每层的形状。
connectsixboy
2023 年 5 月 30 日
@lyang 正常模型文件导入 Netron 就行,不用输入测试,Netron 就是为了应对你这类问题存在的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/943123

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX