PyTorch中Tensor简介

PyTorch中所有的操作都是基于Tensor(张量)的,因此理解张量的含义并能够自由创建张量是十分必要的。

张量是PyTorch中最基本的操作对象。我们可以用数学中的概念来辅助理解一下张量,如图5-1所示。

  • 标量(Scalar)只具有数值大小,而没有方向,部分有正负之分,如1、2、3、-10。
  • 矢量(Vector)具有大小和方向,如(3,4)。
  • 矩阵(Matrix)是一个按照长方阵列排列的复数或实数集合,如[[1,2],[3,4]]。

标量、矢量、矩阵都属于张量,标量是零维张量,向量是一维张量,矩阵是二维张量。张量还可以是三维的、四维的等。

PyTorch的张量与NumPy中的ndarray类似,但是在PyTorch中,张量可以使用GPU进行计算以提高运算性能

5.1.2  使用特定数据创建张量

为了更好地理解张量中的矩阵,下面先介绍如何将现有的NumPy矩阵转换成张量中的矩阵。张量就是PyTorch中的一种矩阵形式,因此PyTorch中集成了将NumPy创建的矩阵数据转换成张量的方法torch.from_numpy(),示例代码如下:

import torchimport numpy as npa = np.array([3.0, 4.0, 5.0])b = torch.from_numpy(a)print(b)

输出结果如下:

tensor([3., 4., 5.], dtype=torch.float64)

还可以直接输入数据创建,方法是torch.tensor(),输入数据并指定数据的类型(int/float/double) ,示例代码如下:

import torch
#直接输入数据创建
a = torch.tensor([[3, 4, 5],[6, 7, 8]])
print(a)
print(a.type())   
#输入数据并指定数据类型创建
b = torch.FloatTensor([[3, 4, 5],[6, 7, 8]])
print(b)
print(b.type())

输出结果如下:

tensor([[3, 4, 5],[6, 7, 8]])
torch.LongTensor
tensor([[3., 4., 5.],[6., 7., 8.]])
torch.FloatTensor

在一些实际应用中,可能会遇到全0矩阵、全1矩阵的情况,这时张量的创建采用torch.full方法创建,torch.full()方法接收参数为shape,x,输出一个shape大小的元素全为x的张量,相关代码如下:

import torch
a = torch.full((2,3),1)
print(a)
print(a.type())

输出结果如下:

tensor([[1, 1, 1],[1, 1, 1]])
torch.LongTensor

有些时候,可能会使用一些连续的数据,类似于等差序列。这时可以使用torch.arange()方法,它接收三个参数,前两个是边界值,后一个是步长(Step),输出边界值范围内步长的等差序列组成的它张量。

import torch
#torch.arange()方法创建
a = torch.arange(0,10,2)
print(a)
print(a.type())

输出结果如下:

tensor([0, 2, 4, 6, 8])
torch.LongTensor

《PyTorch深度学习与企业级项目实战(人工智能技术丛书)》(宋立桓,宋立林)【摘要 书评 试读】- 京东图书 (jd.com)

本文节选自《PyTorch深度学习与企业级项目实战》,获出版社和作者授权发布。

【赠书活动第5期】《PyTorch深度学习与企业级项目实战》-CSDN博客

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

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

相关文章

c#数据库的增删改查

** 安装数据库包 ** 在使用 SQLite 数据库时,你需要安装适当的 NuGet 包来提供与 SQLite 的集成。 1.打开 Visual Studio 中的你的项目 2.在顶部菜单栏中选择 “项目” -> “管理 NuGet 包” 3.在 NuGet 管理器中搜索 “System.Data.SQLite” 4.找到适合你项目…

【openlayers系统学习】1.1渲染GeoJSON,添加link交互

一、渲染GeoJSON 在进入编辑之前,我们将看一下使用矢量源和图层进行基本要素渲染。Workshop在 data​ 目录中包含一个 countries.json​ GeoJSON文件。我们首先加载该数据并将其渲染在地图上。 首先,编辑 index.html​ 以便向地图添加深色背景&#xf…

使用llama.cpp实现LLM大模型的格式转换、量化、推理、部署

使用llama.cpp实现LLM大模型的量化、推理、部署 大模型的格式转换、量化、推理、部署概述克隆和编译环境准备模型格式转换GGUF格式bin格式 模型量化模型加载与推理模型API服务模型API服务(第三方)GPU推理 大模型的格式转换、量化、推理、部署 概述 llama.cpp的主要目标是能够在…

【软考中级 软件设计师】数据结构

数据结构是计算机科学中一个基础且重要的概念,它研究数据的存储结构以及在此结构上执行的各种操作。在准备软考中级-软件设计师考试时,掌握好数据结构部分对于通过考试至关重要。下面是一些核心知识点概览: 基本概念: 数据结构定义…

VBA_MF系列技术资料1-615

MF系列VBA技术资料1-615 为了让广大学员在VBA编程中有切实可行的思路及有效的提高自己的编程技巧,我参考大量的资料,并结合自己的经验总结了这份MF系列VBA技术综合资料,而且开放源码(MF04除外),其中MF01-0…

spring-boot集成slf4j(二)logback配置详解

一、configuration 根节点:configuration,作为顶级标签, 可以用来配置一些lockback的全局属性,常见的属性如下: (1)scan“true” :scan是否开启自动扫描,监控配置文件更…

el-table 组件实现 “合并单元格 + N行数据小计” 功能

目录 需求 - 要实现的效果初始代码代码升级(可供多个表格使用)CommonTable.vue 子组件 使用子组件1 - 父组件 - 图1~图3使用效果展示 使用子组件2 - 父组件 - 图4使用效果展示 注意【代码优化 - 解决bug】 需求 - 要实现的效果 父组件中 info 数据示例 …

内网安全之证书服务基础知识

PKI公钥基础设施 PKI(Public Key Infrastructure)公钥基础设施,是提供公钥加密和数字签名服务的系统或平台,是一个包括硬件、软件、人员、策略和规程的集合,用来实现基于公钥密码体制的密钥和证书的产生、管理、存储、分发和撤销等功能。企业…

element-plus:踩坑日记

el-table Q:有fixed属性时,无数据时,可能出现底部边框消失的bug 现象: 解决方法: .el-table__empty-block {border-bottom: 1px solid var(--el-table-border-color); } el-collapse 折叠面板 Q:标题上…

云平台的安全能力提升解决方案

提升云平台的安全能力是确保数据和服务安全的关键步骤。针对大型云平台所面临的云上安全建设问题,安全狗提供完整的一站式云安全解决方案,充分匹配云平台安全管理方的需求和云租户的安全需求。协助大型云平台建设全网安全态势感知、统一风险管理、统一资…

PCIE协议-4-物理层逻辑模块

4.1 简介 物理层将事务层和数据链路层与用于链路数据交换的信令技术隔离开来。物理层被划分为逻辑物理层和电气物理层子模块(见图4-1)。 4.2 逻辑物理层子模块 逻辑子模块有两个主要部分:一个发送部分,它准备从数据链路层传递过…

v-md-editor和SSE实现ChatGPT的打字机式输出

概述 不论是GPT还是文心一言,在回答的时候类似于打字机式的将答案呈现给我们,这样的交互一方面比较友好,另一方面,当答案比较多、生成比较慢的时候也能争取一些答案的生成时间。本文后端使用express和stream,使用SSE将…

Boosting Cache Performance by Access Time Measurements——论文泛读

TOC 2023 Paper 论文阅读笔记整理 问题 大多数现代系统利用缓存来减少平均数据访问时间并优化其性能。当缓存未命中的访问时间不同时,最大化缓存命中率与最小化平均访问时间不同。例如:系统使用多种不同存储介质时,不同存储介质访问时间不同…

【C++初阶】—— 类和对象 (上)

📝个人主页🌹:EterNity_TiMe_ ⏩收录专栏⏪:C “ 登神长阶 ” 🌹🌹期待您的关注 🌹🌹 类和对象 1. 初步认识C2. 类的引入3. 类的定义声明和定义全部放在类体中声明和定义分开存放 4.…

8个实用网站和软件,收藏起来一定不后悔~

整理了8个日常生活中经常能用得到的网站和软件,收藏起来一定不会后悔~ 1.ZLibrary zh.zlibrary-be.se/这个网站收录了超千万的书籍和文章资源,国内外的各种电子书资源都可以在这里搜索,98%以上都可以在网站内找到,并且支持免费下…

linux中ansible整理笔记

一、工作模式 1. adhoc临时命令 语法: ansible 主机或者组列表 -m 模块 -a “参数” 2. playbook 语法: ansible-playbook xxx.yml 二、模块 1. ping 2.command:默认模块(不支持重定向,管道) 3.shell:类似com…

IP地址显示“不安全”怎么办|已解决

解决IP地址显示“不安全”的问题,通常需要确保网站或服务使用HTTPS协议进行加密通信,可以通过部署SSL证书来解决,以下是具体的解决步骤: 1 申请IP地址SSL证书:网站管理员应向证书颁发机构(CA)申…

网络拓扑—WEB-IIS服务搭建

文章目录 WEB-IIS服务搭建网络拓扑配置网络IISPC 安装IIS服务配置IIS服务(默认站点)PC机访问网页 配置IIS服务(新建站点)PC机访问网页 WEB-IIS服务搭建 网络拓扑 //交换机忽略不计 IIS服务IP:192.168.1.1 PC机IP&…

人类交互2 听觉处理和语言中枢

人类听觉概述 人类听觉是指通过耳朵接收声音并将其转化为神经信号,从而使我们能够感知和理解声音信息的能力。听觉是人类五种感觉之一,对我们的日常生活和交流至关重要。 听觉是人类交流和沟通的重要工具。通过听觉,我们能够听到他人的语言…

安装错误提示Please run MaterialLibrary2018.msi first或者其他MaterialLibrary版本

打开autoremove,系统检查,点击开始检查。检查完成修复。 可以解决部分该问题,如果没解决的请咨询