当前位置: 首页 > news >正文

专业营销型网站建设公司百度网盘搜索神器

专业营销型网站建设公司,百度网盘搜索神器,海外网络加速器免费,网站图片素材下载pytorch 官方文档 Tensor基础,数据类型,及其多种创建方式 1. 创建 Creating Tensor: 标量、向量、矩阵、tensor2. 三种方法可以创建张量,一是通过列表(list),二是通过元组(tuple),三是通过Numpy的数组(arra…

pytorch 官方文档

Tensor基础,数据类型,及其多种创建方式

      • 1. 创建 Creating Tensor: 标量、向量、矩阵、tensor
      • 2. 三种方法可以创建张量,一是通过列表(list),二是通过元组(tuple),三是通过Numpy的数组(array),基本创建代码如下:
      • 3. 张量类型, pytorch下的数组类型
      • 4. 张量特殊类型及其创建方法

1. 创建 Creating Tensor: 标量、向量、矩阵、tensor

#标量 scalar
scalar = torch.tensor(7)
scalar.ndim  # 查看维度
scalar.item() # 转换成 python中的整数 #向量 vector
vector = torch.tensor([7, 7])
vector.shape #查看形状#矩阵 matrix
MATRIX = torch.tensor([[7, 8], [9, 10]])#随机tensor,下面是一些生成随机tensor的方法:[更多详细方法见博客](https://blog.csdn.net/Darlingqiang/article/details/134946446?spm=1001.2014.3001.5501)

在这里插入图片描述

2. 三种方法可以创建张量,一是通过列表(list),二是通过元组(tuple),三是通过Numpy的数组(array),基本创建代码如下:

import torch                                # 导入pytorch
import numpy as np                          # 导入numpyprint(torch.__version__)                    # 查看torch版本
t1 = torch.tensor([1,1])                    # 通过列表创建
t1 = torch.tensor((1,1))                    # 通过元组创建
t1 = torch.tensor(np.array([1,1])           # 通过数组创建
t1                                          # tensor([1, 1])

张量相关属性查看的基本操作,后期遇到的张量结构都比较复杂,难以用肉眼直接看出,因此相关方法用的也比较频繁

方法描述栗子🌰
ndim查看张量的维度,也可使用dim()t.ndim /t.dim()
dtype查看张量的数据结构t.dtype
shape查看张量的形状t.shape
size查看张量的形状,和shape方法相同t.size()
numel查看张量内元素的元素t.numel()

注:size()和numel()是需要加括号, 实例

t2 = torch.tensor([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
t2.ndim                             # 2
t2.dtype                            # torch.int64
t2.shape                            # torch.Size([3, 3])
t2.size()                           # torch.Size([3, 3])
t2.numel()                          # 返回9

3. 张量类型, pytorch下的数组类型

python作为动态语言,很少去注意到变量的类型,因为我们编写代码时并不需要声明变量类型,但是细心的小伙伴会发现,调用dtype后返回的是torch.int64, 这说明pytorch对于数组的类型是很严谨,因此我们还要了解在pytorch下的数组类型

注: 只需要记住有整数,浮点数,布尔型和复数即可

类型dtype
32bit浮点数torch.float32 或 torch.float
64bit浮点数torch.float64 或 torch.double
16bit浮点数torch.float16
8bit无符号整数torch.uint8
8bit有符号整数torch.int8
16bit有符号整数torch.int16 或 torch.short
32bit有符号整数torch.int32 或 torch.int
64bit有符号整数torch.int64 或 torch.long
布尔型torch.bool
复数型torch.complex64

在pytorch中,默认的张量整数类型是int64,使用浮点数类型是float32【不同版本pytorch可能不同】;

双精度double能存储的有效位数比单精度float更多,但相应的需要的存储空间越多

int16,int32,int64的区别主要在于表示值的范围不同,数字越大所能表示的范围越大

在pytorch中,可以使用在创建时指定数据类型,也可以后期进行修改,实例如下

t3 = torch.tensor([True, 1.0])              # tensor([1., 1.])隐式转换
t3 = torch.tensor([1,1,1,1],dtype=float)
t3.dtype                                    # torch.float64
t3.int()                                    # tensor([1, 1, 1, 1], dtype=torch.int32)
t3.byte()                                   # tensor([1., 1., 1., 1.], dtype=torch.float64)
t3.short()                                  # tensor([1, 1, 1, 1], dtype=torch.int16)
t3.bool()                                   # tensor([True, True, True, True])

4. 张量特殊类型及其创建方法

方法描述
torch.zeros()创建全为0的张量
torch.ones()创建全为1的张量
torch.eye()创建对角为1的单位矩阵
torch.diag(t)创建对角矩阵,需要传入1维张量
torch.rand()创建服从0-1均匀分布的张量
torch.randn()创建服从标准正态分布的张量
torch.normal()创建服从指定正态分布的张量
torch.randn创建服从标准正态分布的张量
torch.randint()创建由指定范围随机抽样整数组成的张量
torch.arange()创建给定范围内的连续整数组成的张量
torch.linspace()创建给定范围内等距抽取的数组成的张量
torch.empty()创建未初始化的指定形状的张量
torch.full()创建指定形状,指定填充数值的张量

需要注意有哪些方法是传入代表结构的列表,有哪些是传入张量,有哪些是传入数字,实例如下

torch.zeros([3,3])                      # 创建3行3列,元素全为0的2维张量
torch.ones([3,3])                   # 创建3行3列,元素全为1的2维张量
torch.eye(4)                          # 创建4行4列的单位矩阵t = torch.tensor([1,2,3,4])   # 创建需要传入的1维张量
torch.diag(t)                 # 创建对角元素为1,2,3,4的对角矩阵

在这里插入图片描述

torch.rand([3,4])                           # 创建元素为0-1分布的3行4列张量
torch.normal(3, 4, [2, 2])      # 创建服从均值为3,标准差为4的正态分布元素组成的张量
torch.randn([3,4])                      # 创建元素为标准正态分布的3行4列张量

在这里插入图片描述

torch.randint(0,20,[3,4])     # 创建由0-20间的随机整数组成的3行4列的张量
torch.arange(1,20)            # 创建0-20内连续整数组成的张量

在这里插入图片描述


torch.linspace(1, 10, 5)      # 创建给定范围内等距取样的数组成的张量   1-10范围内,创建5个元素
torch.empty([3,4])            # 创建3行4列的未初始化张量
torch.full([3, 4], 2)         # 创建3行4列的全为2的张量

在这里插入图片描述

http://www.zhongyajixie.com/news/63383.html

相关文章:

  • 网龙网络有限公司seo技术外包公司
  • 中型网站开发语言广西壮族自治区在线seo关键词排名优化
  • 永安网站建设网络服务公司
  • 企业高端网站建设需要注意哪些事项域名免费注册
  • 济南网站制作培训班广告开户
  • 品牌产品网站怎么做seo搜索引擎优化公司
  • 怎么写自己的网页惠州seo推广公司
  • 哪些网站做批发衣服好小网站搜什么关键词
  • 模板网站怎么做才美观成都计算机培训机构排名前十
  • 网站设计素材淄博做网站的公司
  • 三亚政府网站建设好的单位域名查询站长之家
  • 太原市网站青岛seo霸屏
  • 网站建设 架构深圳seo优化
  • 宁波网站建设信息论坛seo设置
  • 中山网站建设盘古搜索
  • app制作网站seo免费课程
  • 网站搭建功能需求线上营销策划案例
  • 英文网站怎么推广系统优化app最新版
  • 便宜的网站设计企业陕西seo公司
  • 抖音代运营合作方案ppt大连seo外包平台
  • 怎么做网站内部链接的优化阿里网站seo
  • wordpress博客优点网站关键词优化排名推荐
  • 临西网站建设网络营销的核心
  • 佛山做外贸网站的公司企业网站优化方案
  • wordpress下载最新线上seo关键词优化软件工具
  • 福建省教师空间建设网站哪些网站推广不收费
  • 5昌平区网站建设万网域名管理平台
  • 吉林公司做网站专业全网优化
  • 最好的做网站公司有哪些好推建站
  • 广告优化师面试常见问题seo优化快速排名