pytorch
❣❣
这个作者很懒,什么都没留下…
展开
-
When should I use nn.ModuleList and when should I use nn.Sequential?
When should I use nn.ModuleList and when should I use nn.Sequential?https://discuss.pytorch.org/t/when-should-i-use-nn-modulelist-and-when-should-i-use-nn-sequential/5463转载 2019-12-26 15:08:32 · 168 阅读 · 0 评论 -
torch.mul()与 torch.mm()
torch.mul(a, b) 是矩阵a和b对应位相乘,即点乘。a和b的维度必须相等,比如a的维度是(1, 3),b的维度是(1, 3),返回的仍是(1, 3)的矩阵。torch.mm(a, b) 是矩阵a和b矩阵相乘,即矩阵乘法。比如a的维度是(1, 3),b的维度是(3, 2),返回的就是(1, 2)的矩阵。...原创 2019-11-15 10:59:19 · 614 阅读 · 0 评论 -
torch.manual_seed()
torch.manual_seed(args.seed) # 为CPU设置种子用于生成随机数,以使得结果是确定的。当你设置一个随机种子时,接下来的随机算法生成数根据当前的随机种子按照一定规律生成。随机种子作用域是在设置时到下一次设置时。要想重复实验结果,设置同样随机种子即可。修改随机种子数,可以看到发生了变化。而且即使关闭进程,重新运行代码,同一随机种子下生成的数依...原创 2019-11-14 09:43:36 · 1659 阅读 · 0 评论 -
tensor.data
学习ing如果我们想要修改 tenso r的数值,但是又不希望被autograd记录,那么我么可以对 tensor.data 进行操作如果我们希望对tensor,但是又不希望被记录, 可以使用tensor.data 或者tensor.detach()报错是因为 c=a*b, b的梯度取决于a,现在修改了tensor,其实也就是修改了a,梯度不再准确。...原创 2019-11-12 21:07:05 · 6861 阅读 · 1 评论 -
pytorch中的 requires_grad和volatile
简单总结(1)requires_grad = Fasle 时不需要更新梯度, 适用于冻结某些层的梯度;(2)volatile = True 相当于 requires_grad = False。有时候,我们可能不希望autograd对tensor求导。认为求导需要缓存许多中间结构,增加额外的内存/显存开销,那么我们可以关闭自动求导。对于不需要反向传播的情景(如inference,即测试...原创 2019-11-12 20:43:17 · 469 阅读 · 0 评论 -
Python中的 %matplotlib inline
在一些代码中经常会看到这样的:其中第二句 %matplotlib inline 比较奇怪,而且无论是用哪个 python 的 IDE 如 spyder 或者 pycharm,这个地方都会报错,显示invalid syntax(无效语法)。那为什么这些代码里面会有这一句呢?原来是这样的。%matplotlib 作用是在使用 jupyter notebook 或者 jupyt...原创 2019-11-08 19:37:02 · 1710 阅读 · 0 评论 -
torch.set_printoptions()
torch.set_printoptions(precision=None,threshold=None,edgeitems=None,linewidth=None,profile=None)precision是每一个元素的输出精度,默认是八位;threshold是输出时的阈值,当tensor中元素的个数大于该值时,进行缩略输出,默认时1000;edgeitems是输出的维...原创 2019-11-08 16:55:41 · 4982 阅读 · 0 评论 -
广播法则(broadcast)
广播法则(broadcast)是科学运算中经常使用的一个技巧,它在快速执行向量化的同时不会占用额外的内存/显存。 Numpy的广播法则(3条)定义如下:让所有输入数组都向其中shape最长的数组看齐,shape中不足的部分通过在前面加1补齐 两个数组要么在某一个维度的长度一致,要么其中一个为1,否则不能计算 当输入数组的某个维度的长度为1时,计算时沿此维度复制扩充成一样的形状PyT...原创 2019-11-08 15:52:48 · 914 阅读 · 0 评论 -
torch.max()
torch.max(input)→ Tensor返回输入tensor中所有元素的最大值torch.max(input,dim,keepdim=False,out=None) -> (Tensor,LongTensor)按维度dim 返回最大值torch.max(a, dim = 1) 返回每一行中最大值的那个元素values,且返回其索引ind...原创 2019-11-07 16:05:38 · 271 阅读 · 0 评论 -
torch.linspace()
从PyTorch的官方网站上找到了这个函数的详细说明。torch.linspace(start,end,steps=100,out=None,dtype=None,layout=torch.strided,device=None,requires_grad=False)→ Tensor函数的作用是,返回一个一维的tensor(张量),这个张量包含了从start到end...原创 2019-11-07 15:49:30 · 308 阅读 · 0 评论 -
torch.cumsum() 和 torch.cumprod()
import torch as ta = t.arange(0, 6).view(2,3)print(a)a.cumsum(dim=0)a = t.arange(0, 6).view(2,3)print(a)a.cumsum(dim=1)对于二维输入a,dim=0(第1行不动,将第1行累加到其他行);dim=1(进入最内层,转化成列处理。第1列不动,将第1列累加...原创 2019-11-07 15:27:34 · 10751 阅读 · 0 评论 -
pytorch中scatter_()函数用法
scatter_(dim,index,src) → Tensor首先看一下这个函数的接口,需要三个输入:1)维度dim; 2)索引数组index; 3)原数组src,为了方便理解,我们后面把src换成input表示。最终的输出是新的output数组。即 scatter_(dim, index, input)→ Tensor下面依次介绍:1)维度dim:整数,可以是0,1,2,3....原创 2019-11-06 22:09:06 · 3352 阅读 · 5 评论 -
Pytorch出现 raise NotImplementedError
ubuntu16.04上用pytorch跑网络的时候,一开始就出现这个问题:经过反复检查,发现是 forward函数 出了问题,没检测到forward函数但明明写了 def forward ....的......后来发现这一段代码多缩进了一个Tap位……注意观察和上面的 def __init__ 是不是对齐了的一定要仔细仔细再仔细!!!!!...原创 2019-10-25 10:56:49 · 803 阅读 · 0 评论