昇思25天学习打卡营第二天|张量 Tensor

背景

华为组织了昇思25天学习学习营,提供免费算力,算力支持是昇腾Ascend 910芯片96G内存,很给力。
第一天的学习内容可以阅读文章:
昇思25天学习打卡营第一天|快速入门

学习内容

今天的学习内容是张量。如果线性代数学的好的同学应该知道矩阵和向量,张量跟矩阵和向量差不多,是人工智能里最重要的基础概念。
张量(Tensor)是一个可用来表示在一些矢量、标量和其他张量之间的线性关系的多线性函数,这些线性关系的基本例子有内积、外积、线性映射以及笛卡儿积。其坐标在  n n n 维空间内,有  n r n^{r} nr 个分量的一种量,其中每个分量都是坐标的函数,而在坐标变换时,这些分量也依照某些规则作线性变换。 r r r 称为该张量的秩或阶(与矩阵的秩和阶均无关系)。

张量是一种特殊的数据结构,与数组和矩阵非常相似。张量(Tensor)是MindSpore网络运算中的基本数据结构,本教程主要介绍张量和稀疏张量的属性及用法。

创建张量

张量的创建方式有多种,构造张量时,支持传入Tensorfloatintbooltuplelistnumpy.ndarray类型。

  • 根据数据直接生成

    可以根据数据创建张量,数据类型可以设置或者通过框架自动推断。

  • 从NumPy数组生成

    可以从NumPy数组创建张量。

  • 使用init初始化器构造张量

    当使用init初始化器对张量进行初始化时,支持传入的参数有initshapedtype

    • init: 支持传入initializer的子类。如:下方示例中的 One() 和 Normal()。

    • shape: 支持传入 listtupleint

    • dtype: 支持传入mindspore.dtype。

张量的属性

张量的属性包括形状、数据类型、转置张量、单个元素大小、占用字节数量、维数、元素个数和每一维步长。

  • 形状(shape):Tensor的shape,是一个tuple。

  • 数据类型(dtype):Tensor的dtype,是MindSpore的一个数据类型。

  • 单个元素大小(itemsize): Tensor中每一个元素占用字节数,是一个整数。

  • 占用字节数量(nbytes): Tensor占用的总字节数,是一个整数。

  • 维数(ndim): Tensor的秩,也就是len(tensor.shape),是一个整数。

  • 元素个数(size): Tensor中所有元素的个数,是一个整数。

  • 每一维步长(strides): Tensor每一维所需要的字节数,是一个tuple。

张量索引

Tensor索引与Numpy索引类似,索引从0开始编制,负索引表示按倒序编制,冒号:...用于对数据进行切片。

张量运算

张量之间有很多运算,包括算术、线性代数、矩阵处理(转置、标引、切片)、采样等,张量运算和NumPy的使用方式类似,下面介绍其中几种操作。

普通算术运算有:加(+)、减(-)、乘(*)、除(/)、取模(%)、整除(//)。

Tensor与NumPy转换

Tensor可以和NumPy进行互相转换。

Tensor转换为NumPy

与张量创建相同,使用 Tensor.asnumpy() 将Tensor变量转换为NumPy变量。

NumPy转换为Tensor

使用Tensor()将NumPy变量转换为Tensor变量。

稀疏张量

稀疏张量是一种特殊张量,其中绝大部分元素的值为零。

在某些应用场景中(比如推荐系统、分子动力学、图神经网络等),数据的特征是稀疏的,若使用普通张量表征这些数据会引入大量不必要的计算、存储和通讯开销。这时就可以使用稀疏张量来表征这些数据。

MindSpore现在已经支持最常用的CSRCOO两种稀疏数据格式。

常用稀疏张量的表达形式是<indices:Tensor, values:Tensor, shape:Tensor>。其中,indices表示非零下标元素, values表示非零元素的值,shape表示的是被压缩的稀疏张量的形状。在这个结构下,我们定义了三种稀疏张量结构:CSRTensorCOOTensorRowTensor

CSRTensor

CSR(Compressed Sparse Row)稀疏张量格式有着高效的存储与计算的优势。其中,非零元素的值存储在values中,非零元素的位置存储在indptr(行)和indices(列)中。各参数含义如下:

  • indptr: 一维整数张量, 表示稀疏数据每一行的非零元素在values中的起始位置和终止位置, 索引数据类型支持int16、int32、int64。

  • indices: 一维整数张量,表示稀疏张量非零元素在列中的位置, 与values长度相等,索引数据类型支持int16、int32、int64。

  • values: 一维张量,表示CSRTensor相对应的非零元素的值,与indices长度相等。

  • shape: 表示被压缩的稀疏张量的形状,数据类型为Tuple,目前仅支持二维CSRTensor

CSRTensor的详细文档,请参考mindspore.CSRTensor。

COOTensor

COO(Coordinate Format)稀疏张量格式用来表示某一张量在给定索引上非零元素的集合,若非零元素的个数为N,被压缩的张量的维数为ndims。各参数含义如下:

  • indices: 二维整数张量,每行代表非零元素下标。形状:[N, ndims], 索引数据类型支持int16、int32、int64。

  • values: 一维张量,表示相对应的非零元素的值。形状:[N]

  • shape: 表示被压缩的稀疏张量的形状,目前仅支持二维COOTensor

COOTensor的详细文档,请参考mindspore.COOTensor。

在这里插入图片描述

总结

今天学习的是基础概念,没有写代码,在训练营总给的教程很清晰易懂。感兴趣的小伙伴可以免费报名学习。

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

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

相关文章

求字符串中所有整数的最小和(100%用例) C卷(JavaPythonC++Node.jsC语言)

输入字符串s,输出s中包含所有整数的最小和 说明 1. 字符串s,只包含 a-z A-Z +- ; 2. 合法的整数包括 1) 正整数 一个或者多个0-9组成,如 0 2 3 002 102 2)负整数 负号 - 开头,数字部分由一个或者多个0-9组成,如 -0 -012 -23 -00023 输入描述: 包含数字的字符串 …

VirtualBox 7.0.18 安装在D盘文件下,会提示目录不安全等信息,不让安装

VirtualBox 7.0.18 安装在D盘文件下&#xff0c;会提示目录不安全等信息&#xff0c;不让安装 功能快捷键参考链接 功能快捷键 问题&#xff1a; VirtualBox 7.0.18 安装在D盘文件下&#xff0c;会提示目录不安全等信息&#xff0c;不让安装 解决方式&#xff1a; 在D盘新建…

突发!OpenAI停止不支持国家API,7月9日开始执行

6月25日凌晨&#xff0c;有部分开发者收到了OpenAI的信&#xff0c;“根据数据显示&#xff0c;你的组织有来自OpenAl目前不支持的地区的API流量。从7月9日起&#xff0c;将采取额外措施&#xff0c;停止来自不在OpenAI支持的国家、地区名单上的API使用。” 但这位网友表示&am…

MySQL 5.7.42 主从复制环境搭建

MySQL 5.7.42 主从复制环境搭建 下载MySQL二进制包操作系统环境配置安装过程搭建从库 本次安装环境&#xff1a; OS版本&#xff1a;Red Hat Enterprise Linux Server release 6.8 (Santiago) MySQL版本&#xff1a;5.7.42 架构&#xff1a;同一台机器&#xff0c;多实例安装搭…

Spring有哪些依赖注入方式(注意目标类已经在IOC容器中存在)

Spring框架支持多种依赖注入&#xff08;Dependency Injection, DI&#xff09;方式&#xff0c;主要包括以下几种&#xff1a; 构造器注入&#xff08;Constructor Injection&#xff09;&#xff1a; 在这种方式中&#xff0c;依赖关系通过目标类的构造函数参数传递。Spring容…

数字图像分析(第一部分)

文章目录 第2章 图像数字化数字化采样与量化像素的邻域像素的距离图像采集网络**离散直线性**距离变换**第3章 图像变换可分离和正交图像变换2D DFT变换及其本质**哈达玛变换KL变换(PCA)第4章 形态学二值形态学膨胀和腐蚀开启和闭合击中-击不中变换二值形态学实用算法噪声滤除目…

YOLOv10:无需NMS的目标检测新范式(强的离谱)

本本来自公众号“AI大道理”。 YOLO系列一直存在nms&#xff0c;然而nms非常耗时&#xff0c;且总给人一种不简单&#xff0c;不直接的感觉。能不能去掉nms&#xff1f; YOLOv10终于实现了&#xff01; YOLOV10的改进 1、Backbone 2、Neck 3、Head与双标签分配 4、Loss计算…

看看人家的单点登录认证系统,确实清新优雅!

插&#xff1a; AI时代&#xff0c;程序员或多或少要了解些人工智能&#xff0c;前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家(前言 – 人工智能教程 ) 坚持不懈&#xff0c;越努力越幸运&#xff0c;大家…

Windows安装dig命令

背景 Windows环境下 cmd 执行 dig 命令提示“dig不是内部或外部命令”&#xff0c;需要在Windows环境下安装dig命令 下载dig软件 可通过网络搜索“Windows平台的Bind_9.16.16”&#xff0c;或者访问https://download.csdn.net/download/m0_46665077/62245100 下载 Windows…

Hive笔记-4

240618-Hive笔记-4 4.2 Insert 4.2.1 将查询结果插入表中 1) 语法 INSERT (INTO | OVERWRITE) TABLE tablename [PARTITION (partcol1val1,partcol2val2 ...)] select_stamement; 关键字说明: (1) INTO: 将结果追加到目标表 (2) OVERWRITE: 用结果覆盖原有数据 2) 案例…

表单prop必填验证根据el-radio-group的值来动态绑定

1、radio的值为5时输入框是必填&#xff0c;其余时候是非必填 2、看图 3、代码 data() {return {optForm:{type:,remark:,},rules:{type:[{ required: true,trigger: change,message:该项为必填项}],remark:[]}};},watch: {"optForm.type"(newVal, oldVal) {this.$…

NAT punching hole tech

What is NAT Hole Punching? NAT hole punching is a technique used to establish direct connections between devices behind Network Address Translation (NAT) routers or firewalls.The goal is to allow communication between two devices (let’s call them Node A …

红酒品鉴秘籍:一键解锁味觉宇宙,开启你的味觉探险新纪元

红酒&#xff0c;这种优雅的液体&#xff0c;蕴藏着丰富的口感和层次&#xff0c;每一次的品鉴都是一次味觉的探险。今天&#xff0c;就让我们一起探索红酒品鉴的奥秘&#xff0c;解锁味觉的新世界&#xff0c;而在这个过程中&#xff0c;雷盛红酒将成为我们的向导&#xff0c;…

ArcGIS Pro SDK (五)内容 6 工程单位

ArcGIS Pro SDK &#xff08;五&#xff09;内容 6 工程单位 目录 ArcGIS Pro SDK &#xff08;五&#xff09;内容 6 工程单位1 获取所有可用单位格式的完整列表2 获取当前项目的单位格式列表3 获取当前项目的特定单位格式列表4 获取当前项目的默认格式列表5 获取当前项目的特…

【杂记-浅谈RSTP快速生成树】

RSTP快速生成树 一、RSTP协议概述二、RSTP工作原理与配置三、RSTP的端口角色和状态四、RSTP之边缘端口 一、RSTP协议概述 定义 Rapid Spanning Tree Protocol&#xff0c;RSTP&#xff0c;快速生成树协议&#xff0c;是在STP生成树基础上发展起来的&#xff0c;用于在网络结构…

使用Python进行文本处理:从入门到精通

哈喽,大家好,我是木头左! 1. 引言 在当今的信息时代,文本数据已经成为了生活中不可或缺的一部分。无论是社交媒体、新闻报道还是学术论文,都离不开文本。因此,掌握文本处理技能对于的生活和工作都具有重要意义。而Python作为一门强大的编程语言,其在文本处理方面的表现…

定制化服务:可燃气体报警器检定收费新模式

随着工业化和城市化的快速发展&#xff0c;可燃气体报警器作为重要的安全监测设备&#xff0c;其准确性和可靠性对于保障人们的生命财产安全至关重要。因此&#xff0c;可燃气体报警器的定期检定和维护显得尤为重要。 在这篇文章中&#xff0c;佰德将围绕可燃气体报警器检定收…

Windows重新安装安全中心解决白屏问题

重新安装Windows安全中心&#xff08;Windows Security Center&#xff09;涉及多个步骤&#xff0c;包括重置Windows安全功能和重新安装Windows安全应用。以下是详细的步骤&#xff1a; 1. 通过PowerShell重置Windows安全中心 打开PowerShell: 在开始菜单中搜索“PowerShell”…

【多通道卷积终结篇,通俗易懂,清晰必读】

作为常识&#xff0c; 1、卷积层 输出特征图通道数 卷积核个数 与输入特征图通道数无关&#xff0c; 2、多卷积核处理多通道特征图的机制过程如下&#xff1a; 本文的参考资料为知乎&#xff1a;一文读懂Faster RCNN。 对于多通道图像多卷积核做卷积&#xff0c;计算方式如…

常用框架-Zookeeper

常用框架-Zookeeper 1、Zookeeper是什么?2、ZooKeeper有哪些应用场景?3、说说Zookeeper的工作原理?4、说说Zookeeper的通知机制?5、Zookeeper对节点的 watch 监听通知是永久的吗?6、Zookeeper集群中有哪些角色?7、Zookeeper集群中是怎样选举leader的?8、Zookeeper是如何…