pytorch 模型可视化_PyTorch Tips(FLOPs计算/参数量/计算图可视化/相关性分析)
最近在做Research Project的时候,发现有些小工具很好用,记录在此。
1. 准确的FLOPS 计算
网上开源的很多计算flops的工具只支持计算PyTorch内置层的flops,不能有效计算出自定义操作的flops。Facebook日前开源了一个面向PyTorch的CV工具包,内置了flops_count
函数,支持细粒度的flops计算,包括torch.einsum
,torch.bmm
等操作均可计算。同时还支持自定义一个operation白名单,用来控制计算那些操作的FLOPS。
Example见: https://github.com/facebookresearch/fvcore/blob/master/tests/test_flop_count.py
2. 参数量计算
这个比较常用了,记录在此,方便查阅
def params_count(model):"""Compute the number of parameters.Args:model (model): model to count the number of parameters."""return np.sum([p.numel() for p in model.parameters()]).item()
3. 画出计算图
PyTorch 1.4版本内置了tensorboard,支持add_graph
,可以将我们定义的模型的计算图可视化出来,可以直观的看到每一层的size,和数据流向,为模型调试和验证提供了很好的帮助
参见文档: https://pytorch.org/docs/stable/tensorboard.html
4. 相关性分析
TensorFlow里有一个很好用的高维特征分析工具Projector, 内置TSNE和PCA。最新的PyTorch也加入了这个支持。可以先去http://projector.tensorflow.org/ 体验一下online版的。
这个功能支持2D/3D的分析,同时可以交互式的点选,十分酷炫好用。
import torch
from torch.utils.tensorboard import SummaryWriterwriter = SummaryWriter("./visualization")cat_features = np.loadtxt("category_features.txt")
cat_labels = torch.load("category_labels.txt")writer.add_embedding(cat_features, cat_labels)
writer.close()
有需求才会有发现,开源社区的轮子真的强大,期待以后也能给开源社区贡献轮子。
pytorch 模型可视化_PyTorch Tips(FLOPs计算/参数量/计算图可视化/相关性分析)相关推荐
- 关于 FLOPS、FLOPs、参数量的相关计算
关于 FLOPS.FLOPs.参数量的相关计算 一.FLOPS 二.FLOPs 2.1 2D 卷积运算 FLOPs Parameters 2.2 全连接层 FLOPs Parameters 2.3 B ...
- R语言相关性计算及使用ggcorrplot包相关性分析热力图可视化分析实战
R语言相关性计算及使用ggcorrplot包相关性分析热力图可视化分析实战 目录 R语言相关性计算及使用ggcorrplot包相关性分析热力图可视化分析实战
- R语言使用plot函数可视化数据、使用type参数自定义设置可视化的类型(数据点和线关系的类型)、设置type参数为s则为阶梯状显示
R语言使用plot函数可视化数据.使用type参数自定义设置可视化的类型(数据点和线关系的类型).设置type参数为s则为阶梯状显示 目录
- 卷积层计算量(FLOPS)和参数量的计算
1.卷积参数量的计算,若卷积层的输入featuremap的维度为Cin×Hin×Win,卷积核的大小为K1×K2, padding=P1×P2, stride=S1×S2,卷积核(filter)的数量 ...
- 【读点论文】A ConvNet for the 2020s,结合swin transformer的结构设计和训练技巧调整resnet网络,在类似的FLOPs和参数量取得更好一点的效果
A ConvNet for the 2020s Abstract 视觉识别的"咆哮的20年代"始于视觉transformer(ViTs)的问世,它迅速取代ConvNets成为最先进 ...
- 苏黎世华人博士提出模型SwinIR,只用33%的参数量就碾压图像修复领域sota
来源:新智元 [导读]参数量和模型的性能有绝对关系吗?苏黎世华人博士提出SwinIR模型,实验结果告诉你,越小的模型还可能更强!SwinIR使用Transformer力压CNN,又在图像修复领域屠榜, ...
- YOLOv5首发改进最新CVPR2023主干FasterNet系列:实测私有数据集mAP有效涨点,同时降低参数量|为更快的神经网络追求更高的 FLOPS,参数量下降,超越其他轻量化模型
- 【YOLOv5-6.x】模型参数量param及计算量FLOPs解析
文章目录 前言 参数量param和计算量FLOPs简介 参数量 计算量 YOLOv5计算模型参数 训练和验证输出模型参数不同的原因分析 输出模型参数结果(以YOLOv5s-coco2017为例) 参数 ...
- 卷积神经网络参数量和计算量内存计算
卷积神经网络参数量和计算量内存计算 参数量 计算量 内存 参数量 每一次卷积的参数量和特征图的大小无关,仅和卷积核的大小,偏置及BN有关. 1.每个卷积层的参数量,+1表示偏置: Co x (Kw x ...
最新文章
- 刚过国家线计算机考研报哪个好,考研估分刚过了去年国家线,今年上岸还有希望吗?有!...
- 「杂谈」如何系统性地学习生成对抗网络GAN
- 阿里云 Caused by: redis.clients.jedis.exceptions.JedisDataException: ERR invalid password
- windows备份0x80070422错误解决方法
- 32位md5解密_冰蝎特征检测及报文解密
- git上托管的代码如何部署在阿里云上_居然仅用浏览器搞定Spring Boot应用的开发与部署...
- [转载] python 去除字符串的标点符号 用_Python成为专业人士笔记–String字符串方法
- java 镶嵌创建线程_请教一个 Java 多线程嵌套使用的问题
- cad2020 开始_中望cad2020发布,附简体中文免费版安装教程
- 新hp设备无法连接到计算机,联想的台式机,用的win7系统,无法装惠普1108打印机驱动,一直显示新设备现已连接,然后无限循环!!!...
- 一份完整的app产品运营推广方案,app推广运营的方法(二
- 安卓APP的字体大小设置不受系统字体大小的影响
- 编写iptables模块实现不连续IP地址的DNAT-POOL
- Euraka服务注册篇
- 游戏运营相关名词及解释
- eSDK 华为ICT能力开放平台
- AMD的cpu vmware装黑苹果报错:客户机操作系统已禁用 CPU,请关闭或重置虚拟机
- win10已达到计算机的连接数量最大值,win10系统共享提示“达到连接数目限制”的办法...
- go分布式存储,rs纠删码
- FPGA给DSP6678复位