pytorch 权重weight 与 梯度grad 可视化
查看特定layer的权重以及相应的梯度信息
- 打印模型
- 观察到model下面有module的key,module下面有features的key, features下面有(0)的key,这样就可以直接打印出weight了
- 在pdb debug界面输入
p model.module.features[0].weight
,就可以看到weight,输入p model.module.features[0].weight.grad
就可以查看梯度信息。
中间变量的梯度 : .register_hook
- pytorch 为了节省显存,在反向传播的过程中只针对计算图中的叶子结点(leaf variable)保留了梯度值(gradient)。但对于开发者来说,有时我们希望探测某些中间变量(intermediate variable) 的梯度来验证我们的实现是否有误,这个过程就需要用到 tensor的register_hook接口
grads = {}def save_grad(name):def hook(grad):grads[name] = gradreturn hookx = torch.randn(1, requires_grad=True)
y = 3*x
z = y * y# 为中间变量注册梯度保存接口,存储梯度时名字为 y。
y.register_hook(save_grad('y'))# 反向传播
z.backward()# 查看 y 的梯度值
print(grads['y'])
打印网络回传梯度
- net.named_parameters()
- parms.requires_grad 表示该参数是否可学习,是不是frozen的;
- parm.grad 打印该参数的梯度值。
net = your_network().cuda()
def train():...outputs = net(inputs)loss = criterion(outputs, targets)loss.backward()for name, parms in net.named_parameters(): print('-->name:', name, '-->grad_requirs:',parms.requires_grad, \' -->grad_value:',parms.grad)
查看pytorch产生的梯度
[x.grad for x in self.optimizer.param_groups[0]['params']]
资料
- pytorch查看模型weight与grad
- pytorch 查看中间变量的梯度
- pytorch 打印网络回传梯度
- 如何查看pytorch产生的梯度
pytorch 权重weight 与 梯度grad 可视化相关推荐
- Pytorch获取中间变量的梯度grad
为了节约显存,pytorch在反向传播的过程中只保留了计算图中的叶子结点的梯度值,而未保留中间节点的梯度 import torchx = torch.tensor(3., requires_grad= ...
- Blender基础:从程序员的角度理解顶点组(Vertex Group)和权重(Weight)
本文基于Blender 2.8正式版 参考官方文档Vertex Group 从程序员的角度看,一个**顶点组(Vertex Group)**实际上就是一个容器,容器中是顶点的引用(弱引用),一个模型可 ...
- pointconv pytorch modelnet40 点云分类结果可视化
文章目录 前言 环境 服务器环境 本地环境 准备工作 下载项目文件 下载数据集 训练 预测 下载训练权重 预测 部分代码解析 可视化输出 运行预测 查看运行结果 前言 上一篇博客介绍了在scannet ...
- PyTorch项目使用TensorboardX进行训练可视化
PyTorch项目使用TensorboardX进行训练可视化 什么是TensorboardX 配置TensorboardX 使用 pip 安装 从源码安装 使用TensorboardX 参考资料 什么 ...
- 梯度grad公式_FLAC3D梯度计算详解
重要通知:本公众号已开通赞赏功能,各位读者老爷有钱的可以给呱太捧个钱场!推荐使用微信PC端进行阅读,以避免命令流显示畸变.文章所附命令流均可直接复制到FLAC3D 6.0中运行,若有报错,请手动重输命 ...
- pytorch权重保存与加载
pytorch权重保存: # 1) 保存网络的结构以及权重值文件 torch.save(model,'XXX.pth') # 2) 仅保存权重值文件 torch.save(model.state_di ...
- PyTorch 入坑四 梯度、链式法则、计算图与反向传播
PyTorch 一文入门 PyTorch 入坑四:计算图与反向传播 导数.梯度与最优化 方向导数与梯度 最优化 复合函数求梯度 计算图 PyTorch实战 PyTorch中的动态图机制 PyTorch ...
- pytorch教程(1.5)——梯度自动计算
摘要 在训练神经网络时,最常用的算法是反向传播. 在该算法中,参数(模型权重)根据损失函数相对于给定参数的梯度进行调整. 为了计算这些梯度,PyTorch 有一个名为 torch.autograd 的 ...
- pytorch 时间序列预测,梯度裁剪
1.49.PyTorch时间序列预测 1.49.1.问题描述 已知 [k, k+n)时刻的正弦函数,预测 [k+t, k+n+t)时刻的正弦曲线. 因为每个时刻曲线上的点是一个值,即feature ...
- 【caffe-matlab】权重以及特征图的可视化
前言 移植了各种caffe,是时候进行下一步操作了,先拿可视化下手吧.大部分内容可能跟网上的方法不一样,大家看完我的博客最好去网上看看大牛们的博客,万一被我误导了,就罪过了o(╯□╰)o,开更.... ...
最新文章
- 通过 RDTSC 指令从 CPU 寄存器中直接获取系统时钟
- oracle用户、表空间操作常用命令
- c++ opencv实现区域填充_帮你解锁一个新技能,opencv完美媲美PS,图片PS,我们代码实现...
- ambari 2.5.0源码编译安装
- TCP 的有限状态机
- Notepad++快速选中多行
- iOS 网络图片转为UIImage 和微信分享时缩略图片的压缩
- 联想笔记本键盘亮屏幕不亮_联想笔记本电脑开机键亮但是黑屏?键盘没反应?
- 机器人手眼标定原理介绍(含详细推导过程)使用Tsai-Lenz算法
- 利用fiddler抓包工具测试APP及高级应用
- 手机便签怎么对待办分类文件夹加密
- Selenium简单的163邮箱登录实例
- 智能家居远程控制:实现 APP 与 ESP8266 远程通信
- 如何删除双系统中的ubuntu
- 1068. 万绿丛中一点红(20)
- 计算机2级免考那几项,计算机二级证书可以免考哪些自学考试科目?
- 重磅!Amazon发布个人免费的AI编程助手:CodeWhisperer !
- Word2016加载MathType打开时显示“安全警告 宏已被禁用”解决办法
- Oracle-1 - :超级适合初学者的入门级笔记,CRUD,事务,约束 ......
- 无线网络中PPK-MIC和CKIP-CMIC的学习资料
热门文章
- 冰汽朋克侦查机器人_冰汽时代机器人与人力效率对比分析 寒霜朋克机器人与人力哪个效率高...
- 一块蛋清皂,把毛孔洗得一干二净
- 报表工具(报表设计器)使用的开发历程
- 2018招商银行春招笔试编程题第一题
- 加强财务知识细节:营业利润,利润总额,净利润
- DotSoft.C3DTools.v7.0.0.3民用勘测地图和GIS工具集合
- 魔兽世界燃烧的远征服务器状态,暴雪战网读入经典TBC服务器,魔兽世界燃烧的远征即将起航...
- Java:获取map的key和value
- MovieClip添加点击事件
- 计算机安全知识策划书,安全知识竞赛策划书