张量的定义及创建

一.张量的定义

1.张量

张量是一个多维数组,是标量,向量,矩阵的高维拓展
在这里插入图片描述

2.Tensor数据类型与Variable数据类型

在PyTorch0.4.0之前,张量相关的数据类型有Tensor和Variable,其中Tensor用于存储张量数据,Variable用来对Tensor进行封装并用于自动求导.
Variable数据类型结构如下图:
在这里插入图片描述
data:被包装的Tensor数据

  • 但在程序中定义了一个张量t=[1,1,1],使用t.data打印出来的是tensor([1,1,1]),需要使用t.data.numpy()打印出来的才是[1,1,1].相当于用.data.numpy()才能tensor中的数据真正取出来

grad:data的梯度
grad_fn:创建Tensor的方法,如加法,乘法等,是自动求导的关键
requires_grad:Tensor是否需要计算梯度(并不是所有的张量都要用到梯度的)
is_leaf:是否是叶子节点,这是计算图中的概念,后面会详细说明

PyTorch0.4.0版本之后,Variable并入Tensor
此时Tensor数据类型结构如下:
在这里插入图片描述
dtype:张量的数据类型
shape:张量的形状
devece:张量所在的设备(CUDA(即GPU)或者CPU)
其他参数与0.4.0版本前的Variable定义相同

Tensor的数据类型:
共有九种,三大类
浮点型类,其中32位浮点型常用于网络权值:

16位浮点型 32位浮点型 64位浮点型
torch.float16或torch.half torch.float32或torch.float torch.float64或torch.double

整型类,其中64位长整形常用于图像的标签:

8位无符号整型 8位有符号整形 16位整形 32位整型 64位长整形
torch.uint8 torch.int8 torch.int16或torch.short torch.int32或torch.int torch.int64或torch.long

布尔类:

布尔型
torch.bool

二.张量的创建-直接创建

1.torch.tensor()

创建格式:
在这里插入图片描述
代码实现:

#创建numpy数组
arr = np.ones(
  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值