PyTorch-1.10(二)--torch张量创建以及索引、切片和变换操作

张量Tensors

is_tensor

如果obj是PyTorch张量,则返回True。

is_storage

如果obj是PyTorch存储对象,则返回True。

is_complex

如果输入的数据类型是复数类型,则返回True。torch.complex64和torch.complex128。

is_conj

如果输入是共轭张量,即其共轭位设置为True,则返回True。

is_floating_point

如果输入的数据类型是浮点数据类型,则返回True  torch.float64torch.float32torch.float16, and torch.bfloat16.

is_nonzero

如果输入是类型转换后不等于零的单元素张量,则返回True。

set_default_dtype

将默认浮点数据类型设置为d。

get_default_dtype

获取当前默认的浮点值 torch.dtype.

set_default_tensor_type

设置默认torch.Tensor到浮点张量类型t。

numel

返回输入张量中的元素总数。

set_printoptions

设置打印选项。

set_flush_denormal

禁用CPU上的非规范浮点数。

创建张量

​ 随机抽样创建操作在随机抽样下,包括​: torch.rand() torch.rand_like() torch.randn() torch.randn_like() torch.randint() torch.randint_like() torch.randperm() 下面不包括这部分。

tensor

用数据data构造一个张量。

sparse_coo_tensor

​ 在给定的索引处构造具有指定值的坐标(坐标)格式的稀疏张量。
​ 

as_tensor

将数据转换成torch.Tensor。

as_strided

创建一个现有torch.Tensor输入的视图,指定 sizestride 和storage_offset.

from_numpy

通过 numpy.ndarray创建Tensor

frombuffer

​ 从实现Python缓冲区协议的对象创建一维张量。
​ 

zeros

返回一个由标量值0填充的张量,形状由变量参数大小定义。

zeros_like

返回一个标量值0填充的张量,其大小与输入相同。

ones

返回一个由标量值1填充的张量,形状由变量参数大小定义。

ones_like

返回一个填充标量值1的张量,其大小与输入相同。

arange

返回大小为的一维张量,从开始到结束的公共差分步step在间隔[start,end]/step中取值。

range

返回大小为的一维张量,从开始到结束的公共差分步step在间隔[start,end]/step+1中的值。

linspace

创建大小为步长的一维张量,其值从起点到终点(包括起点和终点)均匀分布。

logspace

创建大小为步长的一维张量,其值从起点到终点(包括起点和终点)log分布。

eye

返回一个二维张量,对角线上为1,其他地方为0。

empty

返回一个充满未初始化数据的张量。

empty_like

返回与输入大小相同的未初始化张量。

empty_strided

返回一个充满未初始化数据的张量。

full

创建一个大小为size的张量,用fill_value填充。

full_like

返回一个张量,其大小与用fill_value填充的输入相同。

quantize_per_tensor

将浮点张量转换为具有给定标度和零点的量化张量。

quantize_per_channel

将浮点张量转换为具有给定标度和零点的每通道量化张量。

dequantize

通过对量化张量进行去量化,返回fp32张量

complex

​ 构造一个实部等于real、虚部等于imag的复张量。
​ 

polar

​ 构造一个复张量,其元素为笛卡尔坐标,对应于绝对值为abs和角度为angle的极坐标。
​ 

heaviside

为输入中的每个元素计算Heaviside步长函数。

索引、切片、连接、变换操作

cat

在给定维中连接给定序列的seq张量。

concat

torch.cat()别名

conj

返回带有翻转共轭位的输入视图。

chunk

尝试将张量拆分为指定数量的块。

dsplit

根据indices_或_sections,将具有三个或更多维度的输入张量纵深拆分为多个张量。

column_stack

通过在张量中水平叠加张量来创建新的张量。

dstack

按深度顺序叠加张量(沿第三轴)。

gather

沿dim指定的轴收集值。

hsplit

根据索indices_或_sections,将输入(一个或多个维度的张量)水平拆分为多个张量。

hstack

按顺序水平(按列)叠加张量。

index_select

返回一个新的张量,该张量使用作为LongTensor的索引中的值沿维度dim对输入张量进行索引。

masked_select

返回一个新的1-D张量,该张量根据布尔掩码对输入张量进行索引,该掩码是BoolTensor.

movedim

将源位置的输入维度移动到目标位置。

moveaxis

 torch.movedim()别名

narrow

返回一个新的张量,它是输入张量的缩小版本。

nonzero

返回一个二维张量,其中每一行都是非零值的索引。

permute

返回原始张量输入的维度进行排列后的视图。

reshape

返回一个张量,其数据和元素数与输入相同,但具有指定的形状。

row_stack

torch.vstack()别名

scatter

尽量不使用,参考后面的函数Out-of-place version of torch.Tensor.scatter_()

scatter_add

尽量不使用,参考后面的函数Out-of-place version of torch.Tensor.scatter_add_()

split

将张量拆分为块。

squeeze

返回一个对维度大小为1的输入进行移除后的其他所有维度的张量。

stack

沿新维度连接一系列张量。

swapaxes

torch.transpose()别名

swapdims

torch.transpose()别名

t

输入为<=2-D的张量,并将维度0和1进行掉换。

take

返回一个新的张量,该张量包含给定索引处的输入元素。

take_along_dim

从一维索引的输入中选择值,从给定维度的索引中选择值。

tensor_split

将一个张量拆分为多个子张量,所有子张量都是输入视图,并根据indices_或_sections沿维度dim进行拆分。此函数基于NumPy的numpy.array_split()函数

tile

通过重复输入元素构造张量。

transpose

返回一个张量,该张量是输入的转置版本。

unbind

移除张量维度。

unsqueeze

返回一个新的张量,在指定位置插入一个大小为1的维度。

vsplit

根据索indices_或_sections,将输入(一个或多个维度的张量)垂直拆分为多个张量。

vstack

垂直(按行)按顺序堆叠张量。

where

根据条件,返回从x或y中选择的元素的张量。
  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值