
PyTorch
风雪夜归人o
晚来天欲雪,能饮一杯无?
展开
-
U-Net,从2D到3D,以及各种变体总结
U-Net,从2D到3D,以及各种变体总结原始U-Net3D U-Net网络结构数据方面原始U-Net 由一个收缩路径和一个扩张路径组成。收缩路径遵循了经典的CNN结构,每个分辨率层由两个3x3的卷积层+ReLU+以2为步长的最大池化组成。收缩路径一共有4个分辨率层,在每一个分辨率层都将特征图的数量进行加倍(通过设置卷积核的数量)。扩张路径也有4个分辨率层,每个层先进行以2为步长的上采样或...原创 2019-12-10 23:00:28 · 3387 阅读 · 0 评论 -
PyTorch内部机制的理解
PyTorch内部机制的理解反向传播与参数更新的理解计算图的概念网络中间变量的梯度detach()的理解requires_grad和volatile的理解反向传播与参数更新的理解 首先,反向传播或许被称为“反向求导”更加合适,因为它只是个求导的过程,即计算中间参数的梯度。在PyTorch中,通过loss.backward()进行反向求导,关于loss.backward()有两点需要注意:【1...原创 2019-11-21 10:14:07 · 1396 阅读 · 0 评论 -
卷积神经网络的特征图可视化秘籍——PyTorch实现
卷积神经网络的特征图可视化秘籍——PyTorch实现可视化的定义及步骤PyTorch实现以预训练好的VGG16为例进行可视化关键代码剖析如果是自行搭建的网络,如何索引网络层?继续使用序号索引不使用序号,直接索引模型内部网络层的属性可视化的定义及步骤 这里所说的可视化是指对卷积神经网络中间层的输出特征图进行可视化,比如将网络第八层的输出特征图保存为图像显示出来。那么,我们实际上要做的事情非常简...原创 2019-11-19 16:03:59 · 11866 阅读 · 6 评论 -
PyTorch一些有趣而又实用的小操作
PyTorch有趣而又实用的小操作如何取出高维张量中满足一定条件的值(比如大于0.5),其余设为零?解决方案一,张量花式索引解决方案二,torch.where()的API如何取出高维张量中满足一定条件的值(比如大于0.5),其余设为零?解决方案一,张量花式索引 代码如下:a = t.randn([2,3])print(a)a[a<0.5] = 0print(a) 结果:...原创 2019-11-19 15:20:55 · 343 阅读 · 0 评论 -
Pytorch查看网络可学习参数的秘籍
Pytorch作为当前风头正劲的深度学习框架,以强大的动态图机制笑傲江湖。Pytorch通过autograd构建了自动微分系统,并且基于autograd构建了nn神经网络模块,封装了卷积、池化、全连接等各种神经网络常见结构。 torch.nn的核心数据结构是Module,它是一个抽象的概念,既可以表示神经网络中的某个层(layer),也可以表示一个包含很多层的神经网络。在实际运用中,我们通...原创 2019-11-02 17:44:53 · 1032 阅读 · 0 评论 -
PyTorch的nn.Linear()详解
PyTorch的nn.Linear()是用于设置网络中的全连接层的,需要注意的是全连接层的输入与输出都是二维张量,一般形状为[batch_size, size],不同于卷积层要求输入输出是四维张量。其用法与形参说明如下: in_features指的是输入的二维张量的大小,即输入的[batch_size, size]中的size。 out_features指的是输出的二维张量的大小,即...原创 2019-11-02 17:10:06 · 463485 阅读 · 66 评论 -
Pytorch动态调整学习率的方法详解及示例
PyTorch动态调整学习率 在深度神经网络中,学习率是最重要的超参数之一。如何调整学习率是“炼丹玄学”中最重要的药方之一。作为当前最为流行的深度学习框架,PyTorch已经为我们封装好了一些在训练过程中动态调整学习率的方法,下面就让我们来看一下。torch.optim.lr_scheduler 在torch.optim.lr_scheduler上,基于当前epoch的数值,为我们封装了...原创 2019-10-29 21:30:36 · 33242 阅读 · 1 评论 -
Pytorch的nn.Conv2d()详解
Pytorch的nn.Conv2d()详解nn.Conv2d()的使用、形参与隐藏的权重参数in_channelsout_channelskernel_sizestride = 1padding = 0dilation = 1groups = 1bias = Truepadding_mode = 'zeros'nn.Conv2d()的使用、形参与隐藏的权重参数 二维卷积应该是最常用的卷积方式...原创 2019-10-19 22:13:29 · 215540 阅读 · 29 评论 -
torchvision中给出的归一化方法transforms.Normalize()的形参理解与坑
在PyTorch团队专门开发的视觉工具包torchvision中,提供了常见的数据预处理操作,封装在transforms类中。transforms类涵盖了大量对Tensor和对PIL Image的处理操作,其中包含了对张量进行归一化的transforms.normalize()函数,它的形参包括mean、std等,其手册中对函数和源码的介绍如下图:需要注意的坑是:这里的mean和std并不...原创 2019-10-15 20:52:16 · 9291 阅读 · 5 评论