第一章torch(1-10)页

文章介绍了PyTorch库中的核心数据结构张量(Tensor),包括其数学操作、序列化工具,以及如何在CUDA支持下利用GPU进行计算。此外,提到了torch.from_numpy()函数用于Numpy数组和PyTorch张量间的转换,以及各种创建张量的方法如torch.ones(),torch.rand()等。
摘要由CSDN通过智能技术生成

包torch包含了多维张量得数据结构以及其上得多种数学操作,另外,它也提供了多种工具。其中一些可以有效得对张量和任意类型进行序列化。它有CUDA得对应实现,可以在 NVIDIA GPU 上进行张量运算(计算能力>=2.0)。

张量Tensors

torch.is_tensor

torch.is_tensor(obj)

如果obj是一个pytorch张量,则返回True.

  • 参数: obj(Object)-判断对象

torch.is_storage

torch.is_storage(obj)

如果obj是一个pytorch storage对象,则返回true,

  • 参数:input (Object) – 判断对象

torch.set_default_tensor_type

torch.set_default_tensor_type(t)

torch.numel

torch.numel(input)->int

返回input张量中得元素个数。

  • 参数: input(tensor)-输入张量

torch.set_printoptions

torch.set_printoptions(precision=None, threshold=None,

edgeitems=None, linewidth=None, profile=None)
设置打印选项
参数:

  • precision: 浮点数输出的精度位数 (默认为 8 )
  • threshold – 阈值,触发汇总显示而不是完全显示(repr)的数组元素的总数 (默认为 1000)
  • edgeitems – 汇总显示中,每维(轴)两端显示的项数(默认值为 3)
  • linewidth – 用于插入行间隔的每行字符数(默认为 80)。
  • 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

from_numpy

torch.from_numpy(ndarray) → Tensor

Numpy桥,将 numpy.ndarray 转换为 pytorch 的 Tensor。返回的张量 tensor 和 numpy
的 ndarray 共享同一内存空间。修改一个会导致另外一个也被修改。返回的张量不能改变大
小。

torch.linspace

torch.linspace(start, end, steps=100, out=None) → Tensor

返回一个1维张量,包含在区间start和end上均匀间隔得step点,输出1维张量长度为steps
参数:

  • start (float) – 序列的起始点
  • end (float) – 序列的最终值
  • steps (int) – 在 start 和 end 间生成的样本数
  • out (Tensor, optional) – 结果张量

torch.logspace

torch.logspace(start, end, steps=100, out=None) → Tensor

返回一个1维张量,包含在区间 1 0 s t a r t 10^{start} 10start 1 0 e n d 10^end 10end上以对数刻度均匀间隔steps个点,输出1维张量得长度为steps
参数:

  • start (float) – 序列的起始点
  • end (float) – 序列的最终值
  • steps (int) – 在 start 和 end 间生成的样本数
  • out (Tensor, optional) – 结果张量

torch.ones

torch.ones(*sizes, out=None) → Tensor

返回一个全为1得张量,其形状由可变参数sizes定义。
参数

  • sizes:整数序列,定义了输出的形状
  • out (Tensor, optional) – 结果张量

torch.rand

torch.rand(*sizes, out=None) → Tensor

返回一个张量,包含了从区间[0,1)的均匀分布中抽取一组随机数,形状由可变参数sizes定义。
参数

  • sizes (int…) – 整数序列,定义了输出形状
  • out (Tensor, optinal) - 结果张量

torch.randn

torch.randn(*sizes, out=None) → Tensor

返回一个张量,包含了从**标准正态分布(均值为 0,方差为 1,即高斯白噪声)**中抽取一组随
机数,形
状由可变参数 sizes 定义。
参数

  • sizes (int…) – 整数序列,定义了输出形状
  • out (Tensor, optinal) - 结果张量

torch.randperm

torch.randperm(n, out=None) → LongTensor

给定参数n,返回一个从0到n-1的随机整数排列。
参数

  • n (int) – 上边界(不包含)

torch.arange

torch.arange(start, end, step=1, out=None) → Tensor

返回一个1维张量,长度为 floor((end−start)/step)。包含从 start 到 end,以 step 为步长
的一组
序列值(默认步长为1)
参数

  • start (float) – 序列的起始点
  • end (float) – 序列的终止点
  • step (float) – 相邻点的间隔大小
  • out (Tensor, optional) – 结果张量

torch.range

torch.range(start, end, step=1, out=None) → Tensor

返回一个 1 维张量,有 floor((end−start)/step)+1 个元素。包含在半开区间[start, end)
从 start
开始,以 step 为步长的一组值。 step 是两个值之间的间隔,即 xi+1=xi+step
警告:建议使用函数 torch.arange()
参数:

  • start (float) – 序列的起始点
  • end (float) – 序列的最终值
  • step (int) – 相邻点的间隔大小
  • out (Tensor, optional) – 结果张量

torch.zeros

torch.zeros(*sizes, out=None) → Tensor

返回一个全为标量0的张量,形状由可变参数size定义。
参数:

  • sizes (int…) – 整数序列,定义了输出形状
  • out (Tensor, optional) – 结果张量
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

big_matster

您的鼓励,是给予我最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值