Pytorch 学习笔记:layout=torch.strided 意味着什么?理解 torch.layout

Pytorch 中 零矩阵的定义

torch.zeros(*sizes, out=None, 
			 dtype=None, 
			 layout=torch.strided, 
			 device=None, 
			 requires_grad=False)

可以看到默认layout=torch.strided,事实上,Pytorch 中很多函数都可以看到这个参数。

那么,什么是 layout?直接上官方 Documentation在这里插入图片描述

右上角可以看到 torch.tensor 共有三种属性,

其中,torch.dtype 是 tensor 的数据类型,torch.device 表明计算设备是 CPU 还是 GPU,torch.layout 表明内存布局(memory layout),即 tensor 在物理设备中的储存结构。学过数据结构的都知道储存结构(物理结构)简单可以分为:顺序储存、链式储存。

torch.layout 可选torch.striedtorch.sparse_coo。分别对应顺序储存、离散储存。

一般说,稠密张量适用torch.stried,稀疏张量(0 比较多)适用torch.sparse_coo

以上。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章