Pytorch框架-----torch.tensor(创建张量)

news2024/10/6 12:18:46

文章目录

  • 前言
  • 一、torch.Tensor
  • 二、构建tensor
    • 1.从Python的list或序列构建
    • 2.空张量
    • 3.索引和切片来获取和修改一个张量tensor中的内容


前言

torch.Tensor 是包的核心类。如果将其属性 .requires_grad 设置为 True,则会开始跟踪针对 tensor的所有操作。完成计算后,您可以调用 .backward() 来自动计算所有梯度。该张量的梯度将累积到.grad 属性中。

要停止 tensor 历史记录的跟踪,可以调用 .detach(),它将其与计算历史记录分离,并防止将来的计算被跟踪。
要停止跟踪历史记录(和使用内存),还可以将代码块使用 with torch.no_grad(): 包装起来。在评估模型时,这是特别有用,因为模型在训练阶段具有requires_grad = True 的可训练参数有利于调参,但在评估阶段我们不需要梯度。

还有一个类对于 autograd 实现非常重要那就是 Function。Tensor 和 Function 互相连接并构建一个非循环图,它保存整个完整的计算过程的历史信息。每个张量都有一个 .grad_fn 属性保存着创建了张量的 Function 的引用,(如果用户自己创建张量,则g rad_fn 是 None )。如果你想计算导数,你可以调用Tensor.backward()。

如果 Tensor 是标量(即它包含一个元素数据),则不需要指定任何参数backward(),但是如果它有更多元素,则需要指定一个gradient 参数
来指定张量的形状


一、torch.Tensor

torch.Tensor是一种包含单一数据类型元素的多维矩阵。
在这里插入图片描述torch.Tensor是默认的tensor类型(torch.FlaotTensor)的简称。

二、构建tensor

1.从Python的list或序列构建

代码如下(示例):

>>> torch.FloatTensor([[1, 2, 3], [4, 5, 6]])
1 2 3
4 5 6
[torch.FloatTensor of size 2x3]

2.空张量

代码如下(示例):

>>> torch.IntTensor(2, 4).zero_()
0 0 0 0
0 0 0 0
[torch.IntTensor of size 2x4]

3.索引和切片来获取和修改一个张量tensor中的内容

>>> x = torch.FloatTensor([[1, 2, 3], [4, 5, 6]])
>>> print(x[1][2])
6.0
>>> x[0][1] = 8
>>> print(x)
 1 8 3
 4 5 6
[torch.FloatTensor of size 2x3]



本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1456629.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

VS引用第三方库

使用Qt开发习惯了,切换来VS环境,居然引用第三方库,都有所不适应;因为之前都是在Qt项目的pro文件里面直接手写配置好第三方库的include目录、lib目录和依赖的lib名称和拷贝dll语句. Vs也一样,如下三步: 第一…

世界顶级名校计算机专业,都在用哪些书当教材?(文末送书)

目录 01《深入理解计算机系统》02《算法导论》03《计算机程序的构造和解释》04《数据库系统概念》05《计算机组成与设计:硬件/软件接口》06《离散数学及其应用》07《组合数学》08《斯坦福算法博弈论二十讲》参与规则 清华、北大、MIT、CMU、斯坦福的学霸们在新学期里…

板块一 Servlet编程:第三节 HttpServletRequest对象全解与请求转发 来自【汤米尼克的JAVAEE全套教程专栏】

板块一 Servlet编程:第三节 HttpServletRequest对象全解与请求转发 一、什么是HttpServletRequest二、接收请求的常用方法三、请求乱码问题四、请求转发:forward五、Request作用域getParameter和getAttribute的区别 在上一节中我们已经学习了完整的Servl…

【Linux】进程地址空间的理解

进程地址空间的理解 一,什么是程序地址空间二,页表和虚拟地址空间三,为什么要有进程地址空间 一,什么是程序地址空间 在我们写程序时,都会有这样下面的内存结构,来存放变量和代码等数据。 一个进程要执行…

【安全狐】Windows隐藏计划任务技术及排查方法

0x00 前置知识 计划任务SCHTASKS命令 SCHTASKSSCHTASKS /Create 参数 SCHTASKS /Create [/S system [/U username [/P [password]]]][/RU username [/RP password]] /SC schedule [/MO modifier] [/D day][/M months] [/I idletime] /TN taskname /TR taskrun [/ST starttim…

掘根宝典之C++深复制与浅复制(复制构造函数,默认复制构造函数)

到目前为止我们已经学了构造函数,默认构造函数,析构函数:http://t.csdnimg.cn/EOQxx 转换函数,转换构造函数:http://t.csdnimg.cn/kiHo6 友元函数:http://t.csdnimg.cn/To8Tj 接下来我们来学习一个新函数…

FL Studio21.2.3最新版一键安装版专业版水果FLStudio 2024最新下载

FL Studio21.2.3.4004中文破解版系统要求: 版本:v21.2.3 内部版本 [4004] 开发商: Image-Line 格式:独立、VST 位深度:64位 界面语言:英语、德语、西班牙语、法语、中文。 系统环境 Microsoft Window…

AcuAutomate:一款基于Acunetix的大规模自动化渗透测试与漏洞扫描工具

关于AcuAutomate AcuAutomate是一款基于Acunetix的大规模自动化渗透测试与漏洞扫描工具,该工具旨在辅助研究人员执行大规模的渗透测试任务。 在大规模的安全测试活动中,AcuAutomate可以帮助我们同时启动或停止多个Acunetix扫描任务。除此之外&#xff…

ASUS华硕枪神8笔记本电脑G614JIR,G814JVR,G634JYR,G834JZR工厂模式出厂Windows11系统 带重置还原功能

适用ROG枪神8系列笔记本型号: G614JIR、G614JVR、G634JYR、G634JZR G814JIR、G814JVR、G834JYR、G834JZR 链接:https://pan.baidu.com/s/1tYZt6XFNC2d6YmwTbtFN7A?pwd3kp8 提取码:3kp8 带有ASUS RECOVERY恢复功能、自带所有驱动、出厂主…

minio+nginx 集群快速搭建

文章目录 1、概要2、整体架构流程3、集群搭建3.1、服务器准备3.2、下载并安装3.3、minio集群配置3.4、minio.service配置3.5、启动 4、nginx 转发 1、概要 minIO 是一个开源的分布式对象存储服务,可用于构建高可用性和高扩展性的存储集群。 分布式架构:…

Ubuntu本地安装code-server结合内网穿透实现安卓平板远程写代码

文章目录 1.ubuntu本地安装code-server2. 安装cpolar内网穿透3. 创建隧道映射本地端口4. 安卓平板测试访问5.固定域名公网地址6.结语 1.ubuntu本地安装code-server 准备一台虚拟机,Ubuntu或者centos都可以,这里以VMwhere ubuntu系统为例 下载code server服务,浏览器…

http协议概念与使用

一、http相关概念 1.1 什么是 http HTTP协议采用了请求/响应模型。客户端向服务器发送一个请求,请求头包含请求的方法、URL、协议版本、以及包含请求修饰符、客户信息和内容的类似于MIME的消息结构。 服务器以一个状态行作为响应,响应的内容包括消息协…

STM32-点亮 LED

目录 1 、电路构成及原理图 2 、编写实现代码 3、代码讲解 4、烧录到开发板调试、验证代码 5、检验效果 本人使用的是朗峰 STM32F103 系列开发板,此笔记基于这款开发板记录。 1 、电路构成及原理图 首先,通过朗峰 F1 开发板 LED 部分原理图看到…

计算机专业必看《编程之神》

前言 这是一部关于数学家艾伦图灵(Alan Turing)的人物传记电影,非常值得一看. 影片中,艾伦图灵被描绘成一个富有创造力、勇气和独立思考的人物。他的天才思维和对计算机的理解在纠缠复杂的密码解密过程中发挥了重要作用。 图灵的天才 提出图灵…

20. 【Linux教程】emacs 编辑器

前面小节介绍了如何使用 vim 编辑器和 nano 编辑器,本小节介绍 emacs 编辑器,emacs 编辑器最开始是作为控制台的编辑器,并且 emacs 编辑器仍然提供最早的命令行模式。 1. 检查 Linux 系统中是否安装 emacs 编辑器 使用如何命令检查 emacs 编…

显微测量|台阶仪二维超精密测量微观形貌

台阶仪通过扫描被测样品表面,获取高分辨率的表面形貌数据,能够揭示微观结构的特征和性能。 标题了解工作原理和性能特点 台阶仪利用扫描探针在样品表面上进行微观测量,通过探测探针和样品表面之间的相互作用力,获取表面形貌信息…

C++学习Day06之继承中的对象模型

目录 一、程序及输出1.1 程序检验对象1.2 开发人员工具查看对象模型1.2.1 查看对应工程目录文件1.2.2 查看对象模型 二、分析与总结 一、程序及输出 1.1 程序检验对象 父类中私有属性,子类访问不到,是由编译器给隐藏了,但仍然在子类对象模型…

【Visual Studio】技巧 :自动与活动文档同步

在这里插入图片描述 工具 -> 选项 -> 项目和解决方案 - 勾选上面的 我厉害不!!!

B端系统升级方案模板:针对美观性和体验性升级(总体方案)

大家好,我是大美B端工场,专注于前端开发和UI设计,有需求可以私信。本篇从全局分享如何升级B端系统,搞B端系统升级的有个整体思维,不是说美化几个图标,修改几个页面就能解决的,这个方案模板&…

数据安全之认识数据资产管理平台

文章目录 一、什么是数据资产二、什么是数据资产管理平台1、什么是数据资产管理平台2、为什么需要数据资产管理平台 三、数据资产管理平台的主要功能四、数据资产管理平台的工作原理五、数据资产管理平台的应用场景六、安全资产管理平台与数据资产管理平台的区别与关系1、安全资…