目录

    • 引言
    • 一、张量(Tensor)的定义与特性
      • 1. 数学中的张量
      • 2. 深度学习中的Tensor
    • 二、标量(Scalar)是什么?
    • 三、深度学习中的其他核心量
      • 1. 向量(Vector)
      • 2. 矩阵(Matrix)
      • 3. 高阶张量(High-order Tensors)
      • 4. 自动微分与计算图
    • 四、张量与Tensor的区别
    • 五、深度学习中的张量操作
    • 六、总结

引言

在数学、物理学和深度学习中,“张量”(Tensor)是一个核心概念。然而,许多人对"张量"和"Tensor"之间的区别感到困惑,甚至对"标量"、"向量"等基础概念也存在模糊认识。本文将从基础到深度学习,系统梳理这些概念的定义、区别及其应用场景,帮助读者建立清晰的认知框架。


一、张量(Tensor)的定义与特性

1. 数学中的张量

在数学和物理学中,张量(Tensor)是一个多重线性映射,用于描述物理量在不同坐标系下的变换关系。其阶数(Rank)决定了张量的维度:

  • 0阶张量:标量(Scalar),例如温度、质量。
  • 1阶张量:向量(Vector),例如速度、力。
  • 2阶张量:矩阵(Matrix),例如应力张量、旋转矩阵。
  • 高阶张量:3阶及以上,例如视频数据(时间×高度×宽度×通道)。

张量的数学定义强调其坐标变换的不变性。例如,应力张量在不同坐标系下遵循特定的线性变换规则,但其物理意义保持一致。

2. 深度学习中的Tensor

在深度学习框架(如PyTorch、TensorFlow)中,Tensor(张量)被简化为多维数组,本质上是数学张量的计算机实现。

  • 特点
    • 可运行在GPU/TPU上,加速计算。
    • 支持自动微分(Autograd),是神经网络训练的核心。
    • 动态调整形状,适应不同数据结构。

示例

  • 标量loss = 0.5(0D Tensor)。
  • 向量weights = [0.1, 0.3, 0.5](1D Tensor)。
  • 矩阵image = [[1,2,3],[4,5,6]](2D Tensor)。
  • 高阶张量video = [batch, frames, height, width, channels](5D Tensor)。

二、标量(Scalar)是什么?

标量是0阶张量,仅包含一个数值,无方向性

  • 特性
    • 数值大小独立于坐标系(例如温度25°C在任何坐标系下都是25°C)。
    • 支持加减乘除等基本运算。

应用场景

  • 损失函数(Loss)的输出值。
  • 学习率(Learning Rate)等超参数。

三、深度学习中的其他核心量

1. 向量(Vector)

  • 定义:1阶张量,具有大小和方向(例如 [v1, v2, v3])。
  • 应用:神经网络中的权重、偏差(Bias)向量。

2. 矩阵(Matrix)

  • 定义:2阶张量,二维数组(例如 [3x3])。
  • 应用:卷积核(Convolutional Kernel)、全连接层的权重矩阵。

3. 高阶张量(High-order Tensors)

  • 3D张量:时间序列数据([batch, time_steps, features])。
  • 4D张量:图像数据([batch, channels, height, width])。
  • 5D张量:视频数据([batch, frames, channels, height, width])。

4. 自动微分与计算图

  • Tensor在计算图中的角色
    • 每个操作(如加法、乘法)生成新的Tensor节点。
    • 反向传播时,通过链式法则计算梯度(Gradient)。

四、张量与Tensor的区别

维度数学张量深度学习Tensor
定义多重线性映射,强调坐标变换不变性多维数组,强调计算效率
应用场景物理学、连续介质力学深度学习、计算机视觉、NLP
存储方式符号化表达(如 σ_ij数组形式(如 [1, 2, 3]
计算支持手动推导GPU加速、自动微分

关键区别

  • 数学张量是抽象的数学实体,而深度学习中的Tensor是计算机实现的多维数组
  • 深度学习Tensor支持动态计算图,而数学张量通常用于静态分析。

五、深度学习中的张量操作

  1. 创建Tensor

    import torch
    # 从列表创建
    tensor = torch.tensor([1, 2, 3])
    # 全零张量
    zeros = torch.zeros(2, 3)
    
  2. 张量转换

    • Tensor ↔ NumPy数组torch.from_numpy() / .numpy()
    • Tensor ↔ 列表.tolist()
  3. 张量运算

    • 加法、乘法、矩阵乘法(@)。
    • 广播机制(Broadcasting):低维张量自动扩展到高维。
  4. GPU加速

    tensor = tensor.to("cuda")  # 将Tensor移动到GPU
    

六、总结

  • 标量是0维数据,向量是1维,矩阵是2维,高阶张量是3维及以上。
  • 深度学习中的Tensor是数学张量的计算机实现,通过多维数组高效处理数据。
  • 张量操作(如自动微分、GPU加速)是神经网络训练的核心。

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

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

相关文章

设计模式一: 模板方法模式 (Template Method Pattern)

模板方法模式是一种行为设计模式,它通过定义一个算法的骨架,而将一些步骤延迟到子类中实现。Template Method 使得子类可以不改变(复用)一个算法结构 即可重定义(override 重写)该算法的某些特定步骤。基本…

Linux驱动学习day24(UART子系统)

一、UART硬件理论1.1 作用及功能UART:通用异步收发传输器,简称串口。功能:移植u-boot、内核时,主要使用串口查看打印信息。外接各种模块,比如蓝牙GPS模块。使用UART的时候,要注意1. 波特率 2. 格式&#xf…

NFS共享服务器

目录 任务要求 思路总结 1.NFS共享服务 服务端 (ip 192.168.48.128) 客户端 (ip 192.168.48.130) 2.配置autofs自动挂载 任务要求 1.NFS服务器,可以让PC将网络中的NFS服务器共享的目录挂载到本地端的文件系统中,而在本地端的系统中看来,那个远程主机的目…

FreeRTOS学习笔记之队列

小编正在学习嵌入式软件,目前建立了一个交流群,可以留下你的评论,我拉你进群一、简介队列是为了任务与任务、任务与中断之间的通信而准备的,可以在任务与任务、任务与中断之间消息传递,队列中可以存储有限的、大小固定…

垃圾收集器-ZGC

前言在Java开发中,垃圾收集器的选择对系统性能有着致命的影响。Java 8后,虽然G1 GC成为默认,但是它在延迟性控制上仍有限。ZGC作为最新一代高性能低延迟垃圾收集器,解决了CMS和G1在延迟、垃圾堆容量和吞吐量方面的重大突破。本文将…

计算机“十万个为什么”之跨域

计算机“十万个为什么”之跨域 本文是计算机“十万个为什么”系列的第五篇,主要是介绍跨域的相关知识。 作者:无限大 推荐阅读时间:10 分钟 一、引言:为什么会有跨域这个“拦路虎”? 想象你正在参观一座戒备森严的城堡…

C语言:20250719笔记

字符数组在C语言中,支持字符串常量,不支持字符串变量。如果想要实现类似的字符串变量,C语言提供了两种实现方式:字符数组:char name[] “哪吒”;字符指针:char *name "娜吒"&#x…

decltype是什么,什么作用?

基本概念decltype 是 C11 引入的关键字,用于推导表达式的类型,且会完整保留类型的细节(包括 const、引用 &、指针 * 等)。语法:decltype(表达式) 变量名核心特点1.推导依据是表达式本身,而非表达式的结果&#xff…

RPC 与 Feign 的区别笔记

一、基本概念 1.1 RPC(Remote Procedure Call) 定义:远程过程调用,允许像调用本地方法一样调用远程服务的方法。 本质:跨进程通信,隐藏了底层网络通信的复杂性。 常见实现: Java 原生 RMIDub…

高防IP能够防御CC攻击吗?它具备哪些显著优势?

摘要: 面对日益复杂的网络攻击,高防IP作为重要的安全工具,不仅能防御常见的DDoS攻击,还能有效应对CC攻击。本文将解析高防IP防御CC攻击的原理及其核心优势,帮助读者了解其在网络安全中的关键作用。一、高防IP能否防御C…

TypeScript 类型注解(一)

一、TypeScript 类型注解1、什么是TpyeScript类型注解- 是否还记得TypeScript的两个重要特性?- 类型系统、适用于任何规模- 可以说,TS的类型系统是TS最重要的功能;那么什么是类型注解呢?其实就是在声明变量时,将变量的…

弗兰肯斯坦式的人工智能与GTM策略的崩溃

2025 年上半年已经明确了一件事:B2B 市场营销团队被工具淹没,但缺乏策略。人工智能无处不在。收入领导者在进行无休止的试点。营销团队拼凑各种点解决方案,希望能实现规模扩张。然而,销售线索的增长停滞不前。信誉正在受损。曾经承…

NAND闪存(NAND Flash)是什么?

NAND闪存(NAND Flash)是什么? NAND闪存(NAND Flash)详解 NAND闪存是一种非易失性存储介质(断电不丢失数据),广泛应用于SSD、U盘、手机存储等设备中。NAND Flash 的全称是 “Negative-AND Flash”(与非型闪存),其名称源自其底层存储单元的电路结构——基于**“与非门…

Android性能优化之UI渲染优化

一、UI渲染核心瓶颈深度解析 1. 渲染管线关键阶段阶段CPU工作GPU工作潜在卡顿点Measure计算View尺寸-嵌套布局多次测量Layout计算View位置-频繁重排(Relayout)Draw构建DisplayList指令集-复杂自定义View.onDraw()Sync & Upload资源上传到GPU内存纹理上传大图/未压缩资源Ras…

基于Spring AI Alibaba的智能知识助手系统:从零到一的RAG实战开发

📖 项目概述 在人工智能快速发展的今天,RAG(Retrieval-Augmented Generation)技术已成为构建智能问答系统的核心技术。本文将详细介绍一个基于Spring AI Alibaba DashScope深度集成的智能知识助手系统的完整开发过程,…

VirtualBox + CentOS:启用 DHCP 获取 IPv4 地址

标题: VirtualBox CentOS:启用 DHCP 获取 IPv4 地址 日期: 2025-07-18 一、问题现象 最小化安装的 CentOS 7 虚拟机里敲: ip addr输出只有 lo 的 127.0.0.1 以及 enp0s3 的 IPv6 链路本地地址,没有 IPv4&#xff0…

Git

Git简介Git 是一个分布式版本控制工具,通常用来对软件开发过程中的源代码文件进行管理。通过Git 仓库来存储和管理这些文件,Git 仓库分为两种:本地仓库:开发人员自己电脑上的 Git仓库。远程仓库:远程服务器上的 Git 仓库。commit: 提交, 将本地文件和版本…

通信算法之294:LTE系统中的整数倍频偏估计

在LTE系统中,整数倍频偏估计主要通过以下方法实现:一、最大似然估计法(ML)通过遍历预设的整数倍频偏范围(如30kHz),将接收信号与本地的PSS序列在不同频偏点上进行相关运算,选择相关峰…

数字人直播:开启直播行业新纪元​

​原始尺寸更换图片p9-flow-imagex-sign.byteimg.com​​在科技日新月异的当下,直播行业正经历着一场深刻变革,数字人直播的兴起,宛如一颗璀璨新星,照亮了直播领域的新征程。数字人直播,是利用先进的人工智能技术&…

朝鲜升级供应链恶意软件XORIndex,再次瞄准npm生态系统

Socket威胁研究团队最新披露,朝鲜国家支持的黑客组织在"传染性面试"攻击活动中采用了新型恶意软件加载器XORIndex,该恶意程序专门通过npm软件包注册表渗透软件供应链。攻击规模与持续性此次攻击并非孤立事件,而是针对开发者、求职者…