为深度学习引入张量

为深度学习引入张量

什么是张量?

神经网络中的输入、输出和转换都是使用张量表示的,因此,神经网络编程大量使用张量。

张量是神经网络使用的主要数据结构。

张量的概念是其他更具体概念的数学概括。让我们看看一些张量的具体实例。

张量的具体实例

这些示例都是更一般的张量概念的具体实例:

  • 数字
  • 标量
  • 数组
  • 向量
  • 二维数组
  • 矩阵

让我们将上述张量实例列表组织成两组:

  • 数字、数组、二维数组
  • 标量、向量、矩阵

第一组的三个术语(数字、数组、二维数组)通常是计算机科学中使用的术语,而第二组(标量、向量、矩阵)通常是数学中使用的术语。

我们经常看到这种情况,不同研究领域对同一概念使用不同的词汇。在深度学习中,我们通常只是将所有这些称为张量。

让我们进一步研究这些术语。每组中的术语在我们从左到右移动时相互对应。为了展示这种对应关系,我们可以重新排列我们的术语列表,得到三组每组两个术语:

  • 数字、标量
  • 数组、向量
  • 二维数组、矩阵
访问元素所需的索引

每对中的关系是,两个元素都需要相同数量的索引来引用数据结构中的特定元素。

访问元素所需的索引计算机科学数学
0数字标量
1数组向量
2二维数组矩阵

例如,假设我们有这样一个数组:

> a = [1,2,3,4]

现在,假设我们想访问(引用)这个数据结构中的数字 3。我们可以使用一个索引像这样来做到:

> a[2]
3

对于向量,这个逻辑也是一样的。

再举一个例子,假设我们有这样一个二维数组:

> dd = [
[1,2,3],
[4,5,6],
[7,8,9]
]

现在,假设我们想访问(引用)这个数据结构中的数字 3。在这种情况下,我们需要两个索引来定位特定元素。

> dd[0][2]
3

对于矩阵,这个逻辑也是一样的。

请注意,如果我们有一个数字或标量,我们不需要索引,我们可以直接引用数字或标量。

这为我们提供了所需的工作知识,因此我们现在准备好进行概括。

张量是概括

让我们看看当我们考虑的这些数据结构需要超过两个索引来访问(引用)特定元素时会发生什么。

​​在这里插入图片描述

当需要超过两个索引来访问特定元素时,我们停止给结构特定名称,并开始使用更一般的语言。

数学

在数学中,我们停止使用标量、向量和矩阵等词,我们开始使用 张量 或 nd-张量这个词。n告诉我们访问结构中特定元素所需的索引数量。

计算机科学

在计算机科学中,我们停止使用数字、数组、二维数组等词,开始使用 多维数组 或 nd-数组这个词。n 告诉我们访问结构中特定元素所需的索引数量。

访问元素所需的索引计算机科学数学
nnd-数组nd-张量

让我们澄清一下。对于神经网络编程的实际目的,张量和 nd-数组是一样的。

张量和 nd-数组是同一件事!

因此,张量是多维数组或简称为 nd-数组。我们说张量是概括的原因是我们对所有 \(n\) 的值使用张量这个词,如下所示:

  • 标量是 0维张量
  • 向量是 1维张量
  • 矩阵是 2 维张量
  • nd-数组是 n维张量

张量让我们可以丢弃这些具体术语,只用一个 n 来识别我们正在处理的维度数量。

关于张量维度需要注意的一点是,它与我们在向量空间中提到向量的维度时的含义不同。张量的维度并没有告诉我们张量内存在多少个分量。

如果我们有一个来自三维欧几里得空间的三维向量,我们有一个有序三元组,包含三个分量。

然而,三维张量可以有远多于三个分量。例如,我们的二维张量 dd​ 有九个分量。

> dd = [
[1,2,3],
[4,5,6],
[7,8,9]
]

总结

在下一篇文章中,当我们介绍秩、轴和形状的概念时,我们将看到如何确定张量内包含的分量数量。这些是我们使用的基本张量属性。

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

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

相关文章

欧拉公式和傅里叶变换

注:英文引文机翻,未校。 中文引文未整理去重,如有异常,请看原文。 Euler’s Formula and Fourier Transform Posted byczxttkl October 7, 2018 Euler’s formula states that e i x cos ⁡ x i sin ⁡ x e^{ix} \cos{x} i …

HDFS编程 - 使用HDFS Java API进行文件操作

文章目录 前言一、创建hdfs-demo项目1. 在idea上创建maven项目2. 导入hadoop相关依赖 二、常用 HDFS Java API1. 简介2. 获取文件系统实例3. 创建目录4. 创建文件4.1 创建文件并写入数据4.2 创建新空白文件 5. 查看文件内容6. 查看目录下的文件或目录信息6.1 查看指定目录下的文…

高德地图调用geoserver提供WMTS服务报错Unknown TILEMATRIX问题

1. 高德地图JSAPI要求WMTS必须是EPSG:3857坐标系 2. 高德调用WMTS服务时参数 TileMatrix中未带有坐标系字段,需要修改geoserver源码兼容一下,修改JSAPI也可以,如你用都用离线的话 leaflet加载geoserver的WMTS服务时TILEMATRIX字段 TILEMATR…

C语言——文件IO 【文件IO和标准IO区别,操作文件IO】open,write,read,dup2,access,stat

1.思维导图 2.练习 1:使用C语言编写一个简易的界面,界面如下 1:标准输出流 2:标准错误流 3:文件流 要求:按1的时候,通过printf输出数据,按2的时候,通过p…

C++实现图书管理系统(Qt C++ GUI界面版)

前瞻 本项目基于【C】图书管理系统(完整版) 图书管理系统功能概览: 登录,注册学生,老师借书,查看自己当前借书情况,还书。管理员增加书,查看当前借阅情况,查看当前所有借阅人,图书信息。 效果…

使用 NestJS 构建高效且模块化的 Node.js 应用程序,从安装到第一个 API 端点:一步一步指南

一、安装 NestJS 要开始构建一个基于 NestJS 的应用,首先需要安装一系列依赖包。以下是必要的安装命令: npm i --save nestjs/core nestjs/common rxjs reflect-metadata nestjs/platform-express npm install -g ts-node包名介绍nestjs/coreNestJS 框…

鸿蒙面试 2025-01-09

鸿蒙分布式理念?(个人认为理解就好) 鸿蒙操作系统的分布式理念主要体现在其独特的“流转”能力和相关的分布式操作上。在鸿蒙系统中,“流转”是指涉多端的分布式操作,它打破了设备之间的界限,实现了多设备…

Mysql--基础篇--SQL(DDL,DML,窗口函数,CET,视图,存储过程,触发器等)

SQL(Structured Query Language,结构化查询语言)是用于管理和操作关系型数据库的标准语言。它允许用户定义、查询、更新和管理数据库中的数据。SQL是一种声明性语言,用户只需要指定想要执行的操作,而不需要详细说明如何…

SQL 幂运算 — POW() and POWER()函数用法详解

POW() and POWER()函数用法详解 POW() 和 POWER() —计算幂运算(即一个数的指定次方)的函数。 这两个函数是等价的,功能完全相同,只是名字不同。 POW(base, exponent); POWER(base, exponent); base:底数。exponen…

Elasticsearch:聚合操作

这里写目录标题 一、聚合的概述二、聚合的分类1、指标聚合(Metric Aggregation)2、桶聚合(Bucket Aggregation)3、管道聚合(Pipeline Aggregation) 三、ES聚合分析不精准原因分析四、聚合性能优化1、ES聚合…

Ubuntu 磁盘修复

Ubuntu 磁盘修复 在 ubuntu 文件系统变成只读模式,该处理呢? 文件系统内部的错误,如索引错误、元数据损坏等,也可能导致系统进入只读状态。磁盘坏道或硬件故障也可能引发文件系统只读的问题。/etc/fstab配置错误,可能…

重新整理机器学习和神经网络框架

本篇重新梳理了人工智能(AI)、机器学习(ML)、神经网络(NN)和深度学习(DL)之间存在一定的包含关系,以下是它们的关系及各自内容,以及人工智能领域中深度学习分支对比整理。…

LabVIEW瞬变电磁接收系统

利用LabVIEW软件与USB4432采集卡开发瞬变电磁接收系统。系统通过改进硬件配置与软件编程,解决了传统仪器在信噪比低和抗干扰能力差的问题,实现了高精度的数据采集和处理,特别适用于地质勘探等领域。 ​ 项目背景: 瞬变电磁法是探…

Redis 优化秒杀(异步秒杀)

目录 为什么需要异步秒杀 异步优化的核心逻辑是什么? 阻塞队列的特点是什么? Lua脚本在这里的作用是什么? 异步调用创建订单的具体逻辑是什么? 为什么要用代理对象proxy调用createVoucherOrder方法? 对于代码的详细…

C++笔记之`size_t`辨析

C++笔记之size_t辨析 code review! 文章目录 C++笔记之`size_t`辨析一.什么是 `size_t`?二.`size_t` 的来源和设计目的三.`size_t` 的应用场景四.`size_t` 的优点五.`size_t` 的缺点和注意事项六.`size_t` 和其他类型的比较七.总结与建议在 C/C++ 中,size_t 是一个非常重要的…

MySQL表的增删查改(下)——Update(更新),Delete(删除)

文章目录 Update将孙悟空同学的数学成绩修改为80分将曹孟德同学的数学成绩变更为 60 分,语文成绩变更为 70 分将总成绩倒数前三的 3 位同学的数学成绩加上 30 分将所有同学的语文成绩更新为原来的 2 倍 Delete删除数据删除孙悟空同学的考试成绩删除整张表数据 截断表…

大语言模型训练的数据集从哪里来?

继续上篇文章的内容说说大语言模型预训练的数据集从哪里来以及为什么互联网上的数据已经被耗尽这个说法并不专业,再谈谈大语言模型预训练数据集的优化思路。 1. GPT2使用的数据集是WebText,该数据集大概40GB,由OpenAI创建,主要内…

【hadoop学习遇见的小问题】clone克隆完之后网络连接不上问题解决

vi /etc/udev/rules.d/70-persistent-net.rules注释掉第一行 第二行的eth1 改为eth0 由上图也可以看到物理地址 记录下来在网卡中修改物理地址 vi /etc/sysconfig/network-scripts/ifcfg-eth0修改完之后 重启reboot 即可

PDFMathTranslate: Star13.8k,一款基于AI的PDF文档全文双语翻译PDF文档全文双语翻译,保留格式神器,你应该需要它

嗨,大家好,我是小华同学,关注我们获得“最新、最全、最优质”开源项目和高效工作学习方法 PDFMathTranslate是一个开源项目,旨在为用户提供便捷的PDF科学论文翻译解决方案。它不仅能够翻译文本,还能保留公式、图表、目…

对话|全年HUD前装将超330万台,疆程技术瞄准人机交互“第一屏”

2024年,在高阶智驾进入快速上车的同时,座舱人机交互也在迎来新的增长点。Chat GPT、AR-HUD、车载投影等新配置都在带来新增量机会。 高工智能汽车研究院监测数据显示,2024年1-10月,中国市场(不含进出口)乘用…