前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >张量 Tensor学习总结

张量 Tensor学习总结

作者头像
查拉图斯特拉说
发布2024-06-23 10:45:35
650
发布2024-06-23 10:45:35
举报
文章被收录于专栏:后端架构

张量 Tensor

张量是一种多线性函数,用于表示矢量、标量和其他张量之间的线性关系,其在n维空间内有n^r个分量,每个分量都是坐标的函数。张量在坐标变换时也会按照某些规则作线性变换,是一种特殊的数据结构,在MindSpore网络运算中起着重要作用。

%%capture captured_output # 实验环境已经预装了mindspore==2.2.14,如需更换mindspore版本,可更改下面mindspore的版本号 !pip uninstall mindspore -y !pip install -i https://pypi.mirrors.ustc.edu.cn/simple mindspore==2.2.14

创建张量

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

使用init初始化器构造张量

张量的属性

张量的属性包括形状、数据类型、单个元素大小、占用字节数量、维数、元素个数和每一维步长。形状是一个tuple,数据类型是MindSpore的一个数据类型,单个元素大小是每一个元素占用字节数,占用字节数量是总字节数,维数是秩,元素个数是所有元素的个数,每一维步长是每一维所需要的字节数。

张量索引和张量运算

Tensor索引与Numpy索引类似,索引从0开始编制,负索引表示按倒序编制,冒号:和 ...用于对数据进行切片。张量之间有很多运算,包括算术、线性代数、矩阵处理(转置、标引、切片)、采样等,张量运算和NumPy的使用方式类似。

Tensor与NumPy互相转换

稀疏张量

稀疏张量是一种特殊类型的张量,其中大部分元素的值为零。在一些应用场景中,如推荐系统、分子动力学、图神经网络等,数据的特征往往是稀疏的。为了避免不必要的计算、存储和通讯开销,可以使用稀疏张量来表示这些数据。MindSpore现在已经支持最常用的CSRCOO两种稀疏数据格式。

CSRTensor

CSR稀疏张量格式以values、indptr和indices存储非零元素的值和位置,具有高效的存储与计算优势。其中,indptr表示每一行非零元素在values中的起始位置和终止位置,indices表示非零元素在列中的位置,values表示非零元素的值,shape表示稀疏张量的形状。

COOTensor

COO(Coordinate Format)稀疏张量格式用于表示在给定索引上非零元素的集合,包括indices(非零元素下标)、values(非零元素的值)和shape(稀疏张量的形状)。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-06-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 张量 Tensor
  • 创建张量
  • 张量的属性
    • 张量索引和张量运算
      • Tensor与NumPy互相转换
        • CSRTensor
        • COOTensor
    • 稀疏张量
    相关产品与服务
    对象存储
    对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档