torch.tensor

torch.tensor

通过复制数据构造一个张量

  • (构造出的张量是一个没有自动微分(autograd )历史的张量,也称为叶张量,参考Autograd mechanics)。

torch.tensor(data, *, dtype=None, device=None, requires_grad=False, pin_memory=False) Tensor

  • data– 用于创建张量的初始数据。可以是列表、元组、NumPyndarray、标量和其他类型。
  • dtype (torch.dtype,可选)– 返回张量的所需数据类型。默认值:如果为 None,则从数据中推断数据类型。pytorch中的数据类型
  • device(torch.device,可选)- 构造的张量的设备。如果 None 且 data 是张量,则使用 data 设备。如果 None 且 data 不是张量,则结果张量在当前设备上构造。
  • requires_grad(bool, 可选)– 是否有autograd。默认值:False(没有)。
  • pin_memory (bool,可选) – 返回的张量将在固定内存中分配。仅适用于 CPU 张量。默认值:False。
import torch# 创建一个空张量(大小为0)
tensor_0=torch.tensor([]) 
print("空张量:", tensor_0)# 创建一个一维张量(向量)
tensor_1d = torch.tensor([1, 2, 3, 4, 5])
print("一维张量:", tensor_1d)# 创建一个二维张量(矩阵)
tensor_2d = torch.tensor([[1.1, 2.2], [3.3, 4.4]])
print("二维张量:", tensor_2d)# 创建一个三维张量
tensor_3d = torch.tensor([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])
print("三维张量:", tensor_3d)# 创建一个序列,并将其转换为张量
sequence = [1, 2, 3]
tensor_from_list = torch.tensor(sequence)
print("从列表创建的张量:", tensor_from_list)# 创建一个张量,并指定是否需要梯度
tensor_requires_grad = torch.tensor([1.0, 2.0, 3.0], requires_grad=True)
print("需要梯度的张量:", tensor_requires_grad)# 对需要梯度的张量进行操作,并计算梯度
tensor_requires_grad[0].backward()
print("梯度:", tensor_requires_grad.grad)# 创建一个张量,并指定数据类型和设备
tensor_dtype_device = torch.tensor([0.1, 0.2, 0.3], dtype=torch.float64, device=torch.device('cuda:0'))
print("指定数据类型和设备的张量:", tensor_dtype_device)
'''output
空张量: tensor([])
一维张量: tensor([1, 2, 3, 4, 5])
二维张量: tensor([[1.1000, 2.2000],[3.3000, 4.4000]])
三维张量: tensor([[[1, 2],[3, 4]],[[5, 6],[7, 8]]])
从列表创建的张量: tensor([1, 2, 3])
需要梯度的张量: tensor([1., 2., 3.], requires_grad=True)
梯度: tensor([1., 0., 0.])
指定数据类型和设备的张量: tensor([0.1000, 0.2000, 0.3000], device='cuda:0', dtype=torch.float64)
'''

注意

当使用张量时,为了可读性,更倾向使用torch.Tensor.clone(), torch.Tensor.detach()torch.Tensor.requires_grad_()
设t为张量,torch.tensor(t)等价于t.clone().detach()torch.tensor(t, requires_grad=True)等价于t.clone().detach().requires_grad_(True)

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

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

相关文章

探索PyTorch:从入门到实践的demo全解析

探索PyTorch:从入门到实践的demo全解析 一、环境搭建:PyTorch的基石(一)选择你的“利器”:安装方式解析(二)步步为营:详细安装步骤指南二、基础入门demo:点亮第一盏灯(一)张量操作:深度学习的“积木”(二)自动求导:模型学习的“幕后英雄”三、数据处理demo:喂饱…

SpringMVC学习(二)——RESTful API、拦截器、异常处理、数据类型转换

一、RESTful (一)RESTful概述 RESTful是一种软件架构风格,用于设计网络应用程序。REST是“Representational State Transfer”的缩写,中文意思是“表现层状态转移”。它基于客户端-服务器模型和无状态操作,以及使用HTTP请求来处理数据。RES…

Windows中安装Python3

Windows中安装Python3 1. 下载Python安装包 首先,访问Python的官方网站 Python.org,选择适合你Windows版本的Python安装包。 2. 运行安装包 下载完成.exe文件后,双击运行安装包。在安装过程中,有一些关键的选项需要特别注意&a…

虚幻引擎结构之UWorld

Uworld -> Ulevel ->Actors -> AActor 在虚幻引擎中,UWorld 类扮演着至关重要的角色,它就像是游戏世界的总指挥。作为游戏世界的核心容器,UWorld 包含了构成游戏体验的众多元素,从游戏实体到关卡设计,再到物…

2024第一届Solar杯应急响应挑战赛

日志流量 日志流量-1 直接放到D盾分析 解码 flag{A7b4_X9zK_2v8N_wL5q4} 日志流量-2 哥斯拉流量 工具解一下 flag{sA4hP_89dFh_x09tY_lL4SI4} 日志流量-3 tcp流6复制data流 解码 改pdf flag{dD7g_jk90_jnVm_aPkcs} 内存取证 内存取证-1 vol.py -f 123.raw --profileWin…

HarmonyOS Next 实现登录注册页面(ARKTS) 并使用Springboot作为后端提供接口

1. HarmonyOS next ArkTS ArkTS围绕应用开发在 TypeScript (简称TS)生态基础上做了进一步扩展,继承了TS的所有特性,是TS的超集 ArkTS在TS的基础上扩展了struct和很多的装饰器以达到描述UI和状态管理的目的 以下代码是一个基于…

Spring Boot教程之四十:使用 Jasypt 加密 Spring Boot 项目中的密码

如何使用 Jasypt 加密 Spring Boot 项目中的密码 在本文中,我们将学习如何加密 Spring Boot 应用程序配置文件(如 application.properties 或 application.yml)中的数据。在这些文件中,我们可以加密用户名、密码等。 您经常会遇到…

七、队列————相关概念详解

队列————相关概念详解 前言一、队列1.1 队列是什么?1.2 队列的类比 二、队列的常用操作三、队列的实现3.1 基于数组实现队列3.1.1 基于环形数组实现的队列3.1.2 基于动态数组实现的队列 3.2 基于链表实现队列 四、队列的典型应用总结 前言 本篇文章,我们一起来…

基于 Ragflow 搭建知识库-初步实践

基于 Ragflow 搭建知识库-初步实践 一、简介 Ragflow 是一个强大的工具,可用于构建知识库,实现高效的知识检索和查询功能。本文介绍如何利用 Ragflow 搭建知识库,包括环境准备、安装步骤、配置过程以及基本使用方法。 二、环境准备 硬件要…

Pandas03

Pandas01 Pandas02 文章目录 内容回顾1 排序和统计函数2 缺失值处理2.1 认识缺失值2.2 缺失值处理- 删除2.3 缺失值处理- 填充非时序数据时序数据 3 Pandas数据类型3.1 数值类型和字符串类型之间的转换3.2 日期时间类型3.3 日期时间索引 4 分组聚合4.1 分组聚合的API使用4.2 分…

springboot整合log4j2日志框架1

一 log4j基本知识 1.1 log4j的日志级别 Log4j定义了8个级别的log(除去OFF和ALL,可以说分为6个级别),优先级从低到高依次为:All,trace,debug,info,warn,err…

Spring源码_05_IOC容器启动细节

前面几章,大致讲了Spring的IOC容器的大致过程和原理,以及重要的容器和beanFactory的继承关系,为后续这些细节挖掘提供一点理解基础。掌握总体脉络是必要的,接下来的每一章都是从总体脉络中, 去研究之前没看的一些重要…

WPF使用OpenCvSharp4

WPF使用OpenCvSharp4 创建项目安装OpenCvSharp4 创建项目 安装OpenCvSharp4 在解决方案资源管理器中,右键单击项目名称,选择“管理 NuGet 包”。搜索并安装以下包: OpenCvSharp4OpenCvSharp4.ExtensionsOpenCvSharp4.runtime.winSystem.Man…

TCP-UDP调试工具推荐:Socket通信测试教程(附详细图解)

前言 在网络编程与应用开发中,调试始终是一项不可忽视的重要环节。尤其是在涉及TCP/IP、UDP等底层网络通信协议时,如何确保数据能够准确无误地在不同节点间传输,是许多开发者关注的核心问题。 调试的难点不仅在于定位连接建立、数据流控制及…

【新方法】通过清华镜像源加速 PyTorch GPU 2.5安装及 CUDA 版本选择指南

下面详细介绍所提到的两条命令,它们的作用及如何在你的 Python 环境中加速 PyTorch 等库的安装。 1. 设置清华镜像源 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple这条命令的作用是将 pip (Python 的包管理工具&#xf…

【数据结构】单链表的使用

单链表的使用 1、基本概念2、链表的分类3、链表的基本操作a、单链表节点设计b、单链表初始化c、单链表增删节点**节点头插:****节点尾插:****新节点插入指定节点后:**节点删除: d、单链表修改节点e、单链表遍历,并打印…

虚幻引擎是什么?

Unreal Engine,是一款由Epic Games开发的游戏引擎。该引擎主要是为了开发第一人称射击游戏而设计,但现在已经被成功地应用于开发模拟游戏、恐怖游戏、角色扮演游戏等多种不同类型的游戏。虚幻引擎除了被用于开发游戏,现在也用于电影的虚拟制片…

Linux(Centos 7.6)yum源配置

yum是rpm包的管理工具,可以自动安装、升级、删除软件包的功能,可以自动解决软件包之间的依赖关系,使得用户更方便软件包的管理。要使用yum必须要进行配置,个人将其分为三类,本地yum源、局域网yum源、第三方yum源&#…

Linux上更新jar包里的某个class文件

目标:替换voice-1.0.jar里的TrackHandler.class文件 一.查询jar包里TrackHandler.class所在的路径 jar -tvf voice-1.0.jar |grep TrackHandler 二.解压出TrackHandler.class文件 jar -xvf voice-1.0.jar BOOT-INF/classes/com/yf/rj/handler/TrackHandler.cla…

机器学习中回归预测模型中常用四个评价指标MBE、MAE、RMSE、R2解释

在机器学习中,评估模型性能时常用的四个指标包括平均绝对误差(Mean Absolute Error, MAE)、均方误差(Mean Squared Error, MSE)、均方根误差(Root Mean Squared Error, RMSE)和决定系数&#xf…