《昇思25天学习打卡营第2天 | 张量 Tensor》

《昇思25天学习打卡营第2天 | 张量 Tensor》

《昇思25天学习打卡营第2天 | 张量 Tensor》

  • 《昇思25天学习打卡营第2天 | 张量 Tensor》
    • 什么是张量(Tensor)
      • 张量的创建方式
        • 根据数据直接生成
        • 从NumPy数组生成
        • 使用init初始化器构造张量
        • 继承另一个张量的属性,形成新的张量
      • 张量的属性

什么是张量(Tensor)

张量(Tensor)是一个多维数组或矩阵的概念,它是向量和矩阵的推广。

在数学和物理学中,张量是一个具有多个分量的量,这些分量之间的关系可以通过一组坐标变换来描述。
在计算机科学和工程领域,特别是在机器学习和深度学习中,张量通常指的是多维数组,它是数据的基本表示形式。
在 MindSpore 网络运算中张量(Tensor)是基本的数据结构。张量是一种特殊的数据结构,与数组和矩阵非常相似。

张量的创建方式

根据数据直接生成

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

data = [1, 0, 1, 0]
x_data = Tensor(data)
print(x_data, x_data.shape, x_data.dtype)

[1 0 1 0] (4,) Int64

从NumPy数组生成

可以从NumPy数组创建张量。

np_array = np.array(data)
x_np = Tensor(np_array)
print(x_np, x_np.shape, x_np.dtype)

[1 0 1 0] (4,) Int64

使用init初始化器构造张量

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

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

  • shape: 支持传入 list、tuple、 int。

  • dtype: 支持传入mindspore.dtype。

from mindspore.common.initializer import One, Normal

# Initialize a tensor with ones
# init主要用于并行模式下的延后初始化,在正常情况下不建议使用init对参数进行初始化。
tensor1 = mindspore.Tensor(shape=(2, 2), dtype=mindspore.float32, init=One())
# Initialize a tensor from normal distribution
tensor2 = mindspore.Tensor(shape=(2, 2), dtype=mindspore.float32, init=Normal())

print("tensor1:\n", tensor1)
print("tensor2:\n", tensor2)

tensor1:
[[1. 1.]
[1. 1.]]
tensor2:
[[ 0.01183298 0.00573333]
[ 0.01764924 -0.00527418]]

在这里插入图片描述

继承另一个张量的属性,形成新的张量
from mindspore import ops

x_ones = ops.ones_like(x_data)
print(f"Ones Tensor: \n {x_ones} \n")

x_zeros = ops.zeros_like(x_data)
print(f"Zeros Tensor: \n {x_zeros} \n")

Ones Tensor:
[1 1 1 1]
Zeros Tensor:
[0 0 0 0]

张量的属性

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

  • 形状(shape):Tensor的shape,是一个tuple。
  • 数据类型(dtype):Tensor的dtype,是MindSpore的一个数据类型。
  • 单个元素大小(itemsize): Tensor中每一个元素占用字节数,是一个整数。
  • 占用字节数量(nbytes): Tensor占用的总字节数,是一个整数。
  • 维数(ndim): Tensor的秩,也就是len(tensor.shape),是一个整数。
  • 元素个数(size): Tensor中所有元素的个数,是一个整数。
  • 每一维步长(strides): Tensor每一维所需要的字节数,是一个tuple。
x = Tensor(np.array([[1, 2], [3, 4]]), mindspore.int32)

print("x_shape:", x.shape)
print("x_dtype:", x.dtype)
print("x_itemsize:", x.itemsize)
print("x_nbytes:", x.nbytes)
print("x_ndim:", x.ndim)
print("x_size:", x.size)
print("x_strides:", x.strides)

x_shape: (2, 2)
x_dtype: Int32
x_itemsize: 4
x_nbytes: 16
x_ndim: 2
x_size: 4
x_strides: (8, 4)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

录制游戏视频软件,推荐3款,让你的作品更炫酷!

随着游戏行业的快速发展,录制游戏视频已经成为许多玩家的必备技能。无论是为了分享自己的游戏体验,还是为了制作游戏教程,一款好的录制游戏视频软件是必不可少的。接下来,我们将介绍三款录制游戏视频的软件,并对它们的…

12个RAG常见痛点及解决方案

Barnett等人的论文《Seven Failure Points When Engineering a Retrieval Augmented Generation System》介绍了RAG的七个痛点,我们将其延申扩展再补充开发RAG流程中常遇到的另外五个常见问题。并且将深入研究这些RAG痛点的解决方案,这样我们能够更好地在…

自动求导(正、反向传播)

一、自动求导:计算一个函数在指定值上的导数 二、计算图、操作子、无环图 1、显示构造(就像数学一样):Tensorflow/Theano/MXNet 2、隐式构造:PyTorch/MXNet(听不懂emmmm) 3、自动求导两种模式 4、前向计算为一个符号求…

解锁高效办公:ONLYOFFICE版本8.1新功能揭秘与个人使用体验

文章目录 💯ONLYOFFICE 桌面编辑器 8.1 ✍1 新增功能介绍✍2 轻松编辑器PDF文件🍓2.1 PDF新增编辑器操作🍓2.2 PDF新增表单操作 ✍3 用幻灯片版式快速修改幻灯片✍4 无缝切换文档编辑、审阅和查看模式✍5 改进从右至左语言的支持 & 新的本…

STM32F4 STD标准库串口接收例程

STM32F4 STD标准库串口接收中断空闲中断例程 🔖工程基于STM32F446 ✨用惯了STM32CubeMX傻瓜式配置,突然改用标准库写代码,初始化外设内容,总是丢三落四的。 本文将提供3种串口接收和发送模式:串口接收中断空闲中断、串…

Vue组件生命周期深度剖析:从创建到销毁的八大钩子实战指南

系列文章目录 Vue核心指令解析:探索MVVM与数据操作之美 文章目录 系列文章目录前言一、Vue生命周期是什么?二、钩子函数讲解1. beforeCreate( 创建前 )2. created ( 创建后 )3. beforeMount(挂载前)4. mounted&#xf…

深度学习之数据集 Dataset总结

数据集 Dataset MindSpore提供了基于Pipeline的数据引擎,通过Dataset和Transforms实现高效的数据预处理。它提供了内置的文本、图像、音频等数据集加载接口,并提供了自定义数据集加载接口。此外,MindSpore的领域开发库也提供了大量的预加载数…

[leetcode]the-skyline-problem 天际线问题

. - 力扣&#xff08;LeetCode&#xff09; class Solution { public:vector<vector<int>> getSkyline(vector<vector<int>>& buildings) {auto cmp [](const pair<int, int>& a, const pair<int, int>& b) -> bool { ret…

GPT-5:博士级智能的破晓,人工智能的新里程碑

随着科技的飞速发展&#xff0c;人工智能领域再次迎来了一场革命性的突破。备受瞩目的新一代大语言模型GPT-5即将在一年半之后发布&#xff0c;这一创新不仅将再次刷新人们对人工智能的认知&#xff0c;更有可能在多个领域展现出超越人类博士级智能的卓越能力。本文将对GPT-5的…

【技术解码】百数SRM:如何助力企业快速优化供应链管理?

SRM应用是企业优化供应链管理的重要工具&#xff0c;它帮助企业全面管理供应商关系&#xff0c;从评估、选择到协同合作和绩效监控&#xff0c;确保供应链的稳定性和效率。 对于企业来说&#xff0c;通过全面管理供应商关系&#xff0c;可以降低采购风险&#xff0c;提升产品质…

秋招突击——6/25——复习{单调队列优化——最大子序列和,单调队列优化——修剪草坪}——新作{搜索插入位置}

文章目录 引言复习单调队列优化——最大子序列和个人实现 单调队列优化——修建草坪个人实现参考实现 新作搜搜插入位置个人实现参考实现 总结 引言 明天要去上海了&#xff0c;今天要打印很多东西&#xff0c;准备很多材料&#xff0c;包括请假&#xff0c;所以上午没有时间刷…

领夹麦买哪个牌子的好用点?一文看懂领夹麦克风什么牌子的好

自媒体时代的兴起&#xff0c;给了普通人很多的机会&#xff0c;尤其短视频的兴起更是让无数热情&#xff0c;有创作之心的人跃跃欲试。于是乎越来越多的人纷纷拿起了手机到各个平台去展示自己的才华&#xff0c;或者通过vlog记录分享自己的简单生活。 不过在分享和创作的输出时…

电脑屏幕花屏怎么办?5个方法解决问题!

“我刚刚打开电脑就发现我的电脑屏幕出现了花屏的情况。这让我很困惑&#xff0c;我应该怎么解决这个问题呢&#xff1f;求帮助。” 在这个数字时代的浪潮中&#xff0c;电脑早已成为我们生活中不可或缺的一部分。然而&#xff0c;当你正沉浸在紧张的游戏对战中&#xff0c;或是…

第七届IAIC(成都)国际医美产业大会在蓉召开

四川省人民医院新丽美获“中国整形美容协会医疗救助与修复基金-成都市整形修复定点医院”“‘放心美 医无忧’全过程保障示范医院”两块授牌 2024年6月24日&#xff0c;第七届IAIC&#xff08;成都&#xff09;国际医美产业大会暨“医美之都”高峰会议省医院新丽美整形修复基地…

龙芯CPU架构上使用向日葵远程工具

原文链接&#xff1a;龙芯CPU架构上使用向日葵远程工具 Hello&#xff0c;大家好啊&#xff01;今天给大家带来一篇在龙芯CPU上使用向日葵远程控制软件的文章。向日葵是一款强大的远程控制软件&#xff0c;能够帮助用户轻松地实现远程桌面访问和控制。本文将详细介绍如何在龙芯…

Android 11 ,默认授予预置应用/APK 需要的权限,解决permission denied for window type 2003 问题。

写这篇文章的原因是解决了一个APP闪退的问题&#xff0c;闪退的原因是插拔U盘时&#xff0c;注册的广播接收者接收到广播需要弹出一个Dialog询问是否需要打开U盘&#xff0c;这个Dialog设置的是系统级别悬浮窗&#xff0c;没有这个权限&#xff0c;报错导致闪退&#xff0c;下面…

Java-拼接字符串数组(String.join()方法)

问题引入 刷算法题lc2288的时候遇见的一个小细节&#xff0c;记录一下&#xff0c;有兴趣的朋友可以做一下&#xff0c;练习一下哈哈~ 此题需要使用大家都比较熟悉的split方法将句子按照空格拆分为字符串数组。 然后再在数组中对每一个字符串操作&#xff0c;操作完成后要求…

气膜体育馆的使用年限有多少—轻空间

气膜体育馆作为一种新兴的建筑形式&#xff0c;因其独特的结构和功能而备受青睐。它不仅在建设速度、成本控制和环保方面具有显著优势&#xff0c;还在使用年限上展现出良好的性能。轻空间将探讨气膜体育馆的使用年限及其影响因素。 气膜体育馆的基本结构 气膜体育馆主要由膜材…

在数字化营销中如何提高用户参与度和留存率

在当今数字化时代&#xff0c;如何有效地提高用户参与度和留存率成为企业营销的关键课题。蚓链在此为您揭示可采取的一系列重要措施。 在提高用户参与度方面&#xff1a; 其一&#xff0c;通过深入的数据分析洞察用户偏好与行为模式&#xff0c;进而提供高度个性化的内容、精…

录制视频怎么操作?手把手教会你!

在这个互联网科技高速发展的时代&#xff0c;录制视频已经成为了人们生活中一个不可或缺的技能。无论是记录游戏精彩瞬间、制作教程、分享生活趣事&#xff0c;还是进行在线教学&#xff0c;录制视频都是一种非常直观有效的方式。可是录制视频怎么操作呢&#xff1f;本文将介绍…