logo资料库

Pytorch中文文档.pdf

第1页 / 共210页
第2页 / 共210页
第3页 / 共210页
第4页 / 共210页
第5页 / 共210页
第6页 / 共210页
第7页 / 共210页
第8页 / 共210页
资料共210页,剩余部分请下载后查看
torch 包 torch 包含了多维张量的数据结构以及基于其上的多种数学操作。另外,它也提供了多种工 具,其中一些可以更有效地对张量和任意类型进行序列化。 它有 CUDA 的对应实现,可以在 NVIDIA GPU 上进行张量运算(计算能力>=2.0)。 torch.is_tensor[source] torch.is_tensor(obj) 如果 obj 是一个 pytorch 张量,则返回 True  参数: obj (Object) – 判断对象 torch.is_storage [source] torch.is_storage(obj) 如何 obj 是一个 pytorch storage 对象,则返回 True  参数: input (Object) – 判断对象 torch.__set_default_tensor_type__[source] torch.set_default_tensor_type(t) torch.numel torch.numel(input)->int 返回 input 张量中的元素个数  参数: input (Tensor) – 输入张量 例子: >>> a = torch.randn(1,2,3,4,5) >>> torch.numel(a) 120 >>> a = torch.zeros(4,4) >>> torch.numel(a)
16 torch.set_printoptions[source] torch.set_printoptions(precision=None, threshold=None, edgeitems=None, linewidth=None, profile=None) 设置打印选项。 完全参考自 Numpy。 参数:  precision – 浮点数输出的精度位数 (默认为 8 )  threshold – 阈值,触发汇总显示而不是完全显示(repr)的数组元素的总数 (默认为 1000)  edgeitems – 汇总显示中,每维(轴)两端显示的项数(默认值为 3)  linewidth – 用于插入行间隔的每行字符数(默认为 80)。Thresholded matricies will ignore this parameter.  profile – pretty 打印的完全默认值。 可以覆盖上述所有选项 (默认为 short, full) 创建操作 Creation Ops torch.eye torch.eye(n, m=None, out=None) 返回一个 2 维张量,对角线位置全 1,其它位置全 0 参数:  n (int ) – 行数  m (int, optional) – 列数.如果为 None,则默认为 n  out (Tensor, optinal) - Output tensor 返回值: 对角线位置全 1,其它位置全 0 的 2 维张量 返回值类型: Tensor 例子: >>> torch.eye(3) 1 0 0 0 1 0 0 0 1 [torch.FloatTensor of size 3x3]
from_numpy torch.from_numpy(ndarray) → Tensor Numpy 桥,将 numpy.ndarray 转换为 pytorch 的 Tensor。 返回的张量 tensor 和 numpy 的 ndarray 共享同一内存空间。修改一个会导致另外一个也被修改。返回的张量不能改变大小。 例子: >>> a = numpy.array([1, 2, 3]) >>> t = torch.from_numpy(a) >>> t torch.LongTensor([1, 2, 3]) >>> t[0] = -1 >>> a array([-1, 2, 3]) torch.linspace torch.linspace(start, end, steps=100, out=None) → Tensor 返回一个 1 维张量,包含在区间 start 和 end 上均匀间隔的 step s 个点。 输出 1 维张量的长 度为 steps。 参数:  start (float) – 序列的起始点  end (float) – 序列的最终值  steps (int) – 在 start 和 end 间生成的样本数  out (Tensor, optional) – 结果张量 例子: >>> torch.linspace(3, 10, steps=5) 3.0000 4.7500 6.5000 8.2500 10.0000 [torch.FloatTensor of size 5] >>> torch.linspace(-10, 10, steps=5) -10 -5 0
5 10 [torch.FloatTensor of size 5] >>> torch.linspace(start=-10, end=10, steps=5) -10 -5 0 5 10 [torch.FloatTensor of size 5] torch.logspace torch.logspace(start, end, steps=100, out=None) → Tensor 返回一个 1 维张量,包含在区间 10start10start 和 10end10end 上以对数刻度均匀间隔的 steps 个点。 输出 1 维张量的长度为 steps。 参数:  start (float) – 序列的起始点  end (float) – 序列的最终值  steps (int) – 在 start 和 end 间生成的样本数  out (Tensor, optional) – 结果张量 例子: >>> torch.logspace(start=-10, end=10, steps=5) 1.0000e-10 1.0000e-05 1.0000e+00 1.0000e+05 1.0000e+10 [torch.FloatTensor of size 5] >>> torch.logspace(start=0.1, end=1.0, steps=5) 1.2589 2.1135 3.5481 5.9566
10.0000 [torch.FloatTensor of size 5] torch.ones torch.ones(*sizes, out=None) → Tensor 返回一个全为 1 的张量,形状由可变参数 sizes 定义。 参数:  sizes (int...) – 整数序列,定义了输出形状  out (Tensor, optional) – 结果张量 例子: >>> torch.ones(2, 3) 1 1 1 1 1 1 [torch.FloatTensor of size 2x3] >>> torch.ones(5) 1 1 1 1 1 [torch.FloatTensor of size 5] torch.rand torch.rand(*sizes, out=None) → Tensor 返回一个张量,包含了从区间[0,1)的均匀分布中抽取的一组随机数,形状由可变参数 sizes 定 义。 参数:  sizes (int...) – 整数序列,定义了输出形状  out (Tensor, optinal) - 结果张量 例子: >>> torch.rand(4) 0.9193 0.3347 0.3232 0.7715 [torch.FloatTensor of size 4]
>>> torch.rand(2, 3) 0.5010 0.5140 0.0719 0.1435 0.5636 0.0538 [torch.FloatTensor of size 2x3] torch.randn torch.randn(*sizes, out=None) → Tensor 返回一个张量,包含了从标准正态分布(均值为 0,方差为 1,即高斯白噪声)中抽取一组随机数, 形状由可变参数 sizes 定义。 参数:  sizes (int...) – 整数序列,定义了输出形状  out (Tensor, optinal) - 结果张量 例子:: >>> torch.randn(4) -0.1145 0.0094 -1.1717 0.9846 [torch.FloatTensor of size 4] >>> torch.randn(2, 3) 1.4339 0.3351 -1.0999 1.5458 -0.9643 -0.3558 [torch.FloatTensor of size 2x3] torch.randperm torch.randperm(n, out=None) → LongTensor 给定参数 n,返回一个从 0 到 n -1 的随机整数排列。 参数:  n (int) – 上边界(不包含) 例子: >>> torch.randperm(4)
2 1 3 0 [torch.LongTensor of size 4] torch.arange torch.arange(start, end, step=1, out=None) → Tensor 返回一个 1 维张量,长度为 floor((end−start)/step)floor((end−start)/step)。包含从 start 到 end,以 step 为步长的一组序列值(默认步长为 1)。 参数:  start (float) – 序列的起始点  end (float) – 序列的终止点  step (float) – 相邻点的间隔大小  out (Tensor, optional) – 结果张量 例子: >>> torch.arange(1, 4) 1 2 3 [torch.FloatTensor of size 3] >>> torch.arange(1, 2.5, 0.5) 1.0000 1.5000 2.0000 [torch.FloatTensor of size 3] torch.range torch.range(start, end, step=1, out=None) → Tensor
返回一个 1 维张量,有 floor((end−start)/step)+1floor((end−start)/step)+1 个元素。包含在半 开区间[start, end)从 start 开始,以 step 为步长的一组值。 step 是两个值之间的间隔, 即 xi+1=xi+stepxi+1=xi+step 警告:建议使用函数 torch.arange() 参数:  start (float) – 序列的起始点  end (float) – 序列的最终值  step (int) – 相邻点的间隔大小  out (Tensor, optional) – 结果张量 例子: >>> torch.range(1, 4) 1 2 3 4 [torch.FloatTensor of size 4] >>> torch.range(1, 4, 0.5) 1.0000 1.5000 2.0000 2.5000 3.0000 3.5000 4.0000 [torch.FloatTensor of size 7] torch.zeros torch.zeros(*sizes, out=None) → Tensor 返回一个全为标量 0 的张量,形状由可变参数 sizes 定义。 参数:  sizes (int...) – 整数序列,定义了输出形状  out (Tensor, optional) – 结果张量
分享到:
收藏