Tensor

Method 描述
is_tensor(obj) 如果 obj 是 PyTorch 张量,则返回 True ;
is_storage(obj) 如果 obj 是 PyTorch 存储对象,则返回 True ;[torch.storage() ]
is_complex(input) input如果 的数据类型是复杂数据类型,则返回 True ;
is_conj(input) 如果 input 是共轭张量,则返回 True ,即其共轭位设置为 True
is_floating_point(input) 如果 input 的数据类型是浮点数据类型,则返回 True ;
is_nonzero(input) input 如果是 单个张量且类型转换后不等于0,则返回 True ;
set_default_dtype(d) 将默认浮点 dtype 设置为d;[ dtype 查看类型]
get_default_dtype() 获取当前的默认浮点数 torch.dtype;[默认是 torch.float32 ]
set_default_tensor_type(t) 将默认 torch.Tensor 类型设置为浮点张量类型 t
numel(input) 返回 input 张量中元素的总数;[考虑 tensor.shape 的各个维度相乘]
set_printoptions 设置输出格式;
set_flush_denormal(model) 禁用 CPU 上的非规范浮点数;[处理精度问题,False 则完整输出]

创建操作

Method 描述
tensor 用 构造一个张量data
sparse_coo_tensor 在给定索引处构造一个具有指定值的 COO(rdinate) 格式的稀疏张量;
as_tensor 将数据转换为torch.Tensor ;
as_strided 创建具有指定大小、步幅和 storage_offset 的现有 torch.Tensor 输入的视图;
from_numpy 从 numpy.ndarray 创建一个张量;
frombuffer 从实现 Python 缓冲区协议的对象创建一维张量;
zeros 返回一个用标量值 0 填充的张量,其形状由变量参数 *size 定义;
zeros_like 返回一个用标量值 0 填充的张量,大小与 input 相同;
ones 返回一个用标量值 1 填充的张量,其形状由变量参数 *size 定义;
ones_like 返回一个用标量值 1 填充的张量,其大小与input 相同;
arange 返回大小为$\left\lceil\frac{\text { end-start }}{\text { step }}\right\rceil$的一维张量,生成区间 [start , end),公差为 step;
range 返回大小为 $\left\lceil\frac{\text { end-start }}{\text { step }}\right\rceil +1$ 的一维张量值,从startend,步长为 step
linspace 创建大小为 steps 的一维张量,其值从到 start 到 end 的均匀分布;
logspace 创建大小为 steps 的一维张量,值从 ${{\text{{base}}}}^{{\text{{start}}}}$ 到 ${{\text{{base}}}}^{{\text{{end}}}}$ ;
eye 返回一个二维张量,其中对角线为 1,其他位置为 0;
empty 返回一个未初始化数据的张量;
empty_like 返回与 input 大小相同的未初始化张量;
empty_strided 返回一个充满未初始化数据的张量;
full 创建一个大小为 size 的张量,值用 fill_value 填充;
full_like 返回一个与input 大小相同的张量,并用fill_value填充;
quantize_per_tensor 将浮点张量转换为具有给定比例和零点的量化张量;
quantize_per_channel 将浮点张量转换为具有给定比例和零点的每通道量化张量;
dequantize 通过反量化量化张量返回 fp32 张量;
complex 构造复数张量,其实部等于 real 虚部等于 imag
polar 构造复数张量,元素是笛卡尔坐标,对应于具有绝对值和角度的极坐标;
heaviside 计算 中的每个元素的 Heaviside 阶跃函数input

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

Method 描述
cat 连接给定seq给定维度的张量序列;[ 默认axis = 0 ]
concat 别名 torch.cat()
conj 返回input带有翻转共轭位的视图;[ real 相等,imag 相反,考虑 is_conj() ]
chunk 将张量拆分为指定数量的块;[ 不一定等于给定数量块 ]
dsplit input具有三个或更多维度的张量深度拆分为多个张量;
column_stack 通过在 中水平堆叠张量来创建一个新张量 tensors;
dstack 按深度顺序堆叠张量(沿第三轴);
gather 沿 dim 指定的轴收集值;
hsplit input具有一个或多个维度的张量水平拆分为多个张量;
hstack 水平顺序堆叠张量(按列);
index_select 返回一个新的张量,沿指定轴、索引选择;
masked_select 返回一个新的一维张量,根据 mask 中的 True 选择 input 中的值;
movedim 将 input 的轴从 source 转移到 destination ;
moveaxis torch.movedim() 的别名;
narrow 返回一个新的张量,沿指定 dim ,选择从 start 到 start+length 的元素 ;
nonzero 返回一个新的张量,将值不为 0 的坐标给出;
permute 返回原始张量的视图,input其尺寸已置换;
reshape 返回具有与input相同的数据和元素数量但具有指定形状的张量;
row_stack torch.vstack() 的别名;
scatter 异地版本torch.Tensor.scatter_()
scatter_add 异地版本torch.Tensor.scatter_add_()
split 根据 split_size_or_sections 将张量拆分为块;
squeeze 返回一个张量,其中所有input大小为1的维度都已删除;
stack 沿 dim 连接一系列张量;
swapaxes torch.transpose() 的别名;
swapdims torch.transpose() 的别名;
t 张量转置;
take 从 input 返回具有给定索引处元素的新张量;
take_along_dim 从给定 input 的 1 维索引处选择值;
tensor_split 根据 指定的索引或节数,将input一个张量拆分为多个子张量;
tile 通过重复 input 的元素构造一个张量。
transpose 返回一个张量,它是 的转置版本input
unbind 删除轴 dim 下的张量维度,并返回新张量。
unsqueeze 返回一个插入到指定位置的尺寸为 1 的新张量。
vsplit 根据input将具有两个或多个维度的张量垂直拆分为多个张量。
vstack 垂直(按行)按顺序堆叠张量。
where 返回从xy中选择的元素的张量,具体取决于condition.

Generators

Method 描述
Generator 创建并返回一个生成器对象,该对象管理生成伪随机数的算法的状态;

随机抽样

Method 描述
seed 将生成随机数的种子设置为非确定性随机数;
manual_seed 设置生成随机数的种子;
initial_seed 返回用于生成随机数的初始种子作为 Python long;
get_rng_state 以torch.ByteTensor 形式返回随机数生成器状态;
set_rng_state 设置随机数生成器状态;

分布

Method 描述
bernoulli 从伯努利分布中绘制二进制随机数(0 或 1);
multinomial 返回一个张量,每一行包含num_samples从位于相应张量行中的多项概率分布中采样的索引;
normal 返回从给出均值和标准差的独立正态分布中抽取的随机数张量;
poisson 返回与从泊松分布中采样的每个元素大小相同的张量;
rand 从区间上的均匀分布返回一个填充有随机数[ 0 ,1 )的张量
rand_like 返回一个大小相同的张量,其中input填充了区间上均匀分布的随机数[0, 1);
randint 返回一个填充了随机整数的张量,用[low ,high)填充的张量;
randint_like 返回一个与 Tensor 形状相同的张量,[low,high)之间均匀生成的随机整数;
randn 从均值为 0方差为1的正态分布中返回一个填充随机数的张量;
randn_like 返回一个大小相同的张量,填充了来自均值为 0 和方差为 1 的正态分布的随机数;
randperm 返回从 0 到 n-1 的整数的随机排列;

Lesson1——Tensor的更多相关文章

  1. [PyTorch 学习笔记] 1.2 Tensor(张量)介绍

    本章代码: https://github.com/zhangxiann/PyTorch_Practice/blob/master/lesson1/tensor_introduce1.py https: ...

  2. Torch7 Tensor切片总结

    1.narrow(k,m,n) 这个函数是选中第k维的从m行开始,供选中n行 2.sub(dim1s,dim1e[,dim2s,dim2e,..,dim4s,dim4e]) 功能最强大,可以切任意的一 ...

  3. Tensorflow学习笔记2:About Session, Graph, Operation and Tensor

    简介 上一篇笔记:Tensorflow学习笔记1:Get Started 我们谈到Tensorflow是基于图(Graph)的计算系统.而图的节点则是由操作(Operation)来构成的,而图的各个节 ...

  4. tensor

    初始化 z = torch.Tensor(,,,,) --可以创建多维数组.里面是随机的数. s = torch.Tensor(,):fill() --用1填充 t = torch.rand(,) m ...

  5. 4d tensor

    偶然在一个ppt中看到了如下关于tensor的解释,清晰明白,所以post在这里,以备后续查看 根据这个理解: theano中的input(4d tensor):[mini-batch size, n ...

  6. Tensor神经网络进行知识库推理

    本文是我关于论文<Reasoning With Neural Tensor Networks for Knowledge Base Completion>的学习笔记. 一.算法简介 网络的 ...

  7. lesson1:压测普通网页

    本文展示了利用jmeter来压力测试普通网页,具体步骤如下: 1.添加[线程组]“lesson1压测普通网页”,“线程数”设置为10:“循环测试“设置为50,如图所示: 2.添加一个"htt ...

  8. TFboy养成记 tensor shape到底怎么说

    tensor.shape 对于一位向量,其形式为[x,] 对于矩阵,二维矩阵[x,y],三维矩阵[x,y,z] 对于标量,也就是0.3*x这种0.3,表示形式为() 如果说这个矩阵是三维的,你想获得其 ...

  9. tensorflow+入门笔记︱基本张量tensor理解与tensorflow运行结构

    Gokula Krishnan Santhanam认为,大部分深度学习框架都包含以下五个核心组件: 张量(Tensor) 基于张量的各种操作 计算图(Computation Graph) 自动微分(A ...

随机推荐

  1. 【Java】简单了解网络编程

    文章目录 网络编程 网络编程中有两个主要的问题 网络编程中的两个要素 通信要素一:IP和端口号 实例化InetAddress 两个常用方法 端口号 通信要素二:网络通信协议 实现TCP的网络编程 例子 ...

  2. MySQL的学习记录 DAY03~

    小记:昨天打了新冠加强针,今天开始拉肚子,嗓子疼,超级难受~

  3. grpc基础讲解和golang实现grpc通信小案例

    grpc简介 gRPC由google开发,是一款语言中立.平台中立.开源的远程过程调用系统 gRPC客户端和服务端可以在多种环境中运行和交互,例如用java写一个服务端,可以用go语言写客户端调用 g ...

  4. UncLutter

    在 Mac 上「速记」的正确姿势:Unclutter 现代人的大脑,每天都会被大量有用,或无用的东西充斥着,过多「思想垃圾」的沉重负担就容易导致失忆.也就是说,你很可能会记得一个无关紧要,但给你留下深 ...

  5. new实例化和反射实例化有什么区别?

    在工厂设计模式中,使用反射实例化,子类可以随便增加,工厂类不需要做任何的修改 使用反射之后最大的好处就是解耦合

  6. [源码分析] Facebook如何训练超大模型---(4)

    [源码分析] Facebook如何训练超大模型 --- (4) 目录 [源码分析] Facebook如何训练超大模型 --- (4) 0x00 摘要 0x01 背景知识 1.1 单精度.双精度和半精度 ...

  7. Python如何把八进制转换成ASCII码

    做题途中拿到一串八进制字符串 0126 062 0126 0163 0142 0103 0102 0153 0142 062 065 0154 0111 0121 0157 0113 0111 010 ...

  8. Programiz 中文系列教程·翻译完成

    原文:Programiz 协议:CC BY-NC-SA 4.0 欢迎任何人参与和完善:一个人可以走的很快,但是一群人却可以走的更远. 在线阅读 ApacheCN 学习资源 目录 Programiz C ...

  9. AT2645 [ARC076D] Exhausted?

    解法一 引理:令一个二分图两部分别为 \(X, Y(|X| \le |Y|)\),若其存在完美匹配当且仅当 \(\forall S \subseteq X, f(S) \ge |S|\)(其中 \(f ...

  10. java命令-(学习)jstack 工具

    一.介绍 jstack是java虚拟机自带的一种堆栈跟踪工具.jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项&qu ...