【AI邪修·破壁行动】神经网络基础—核心数据结构—张量

1. 从标量到张量

问AI:

什么是张量?

AI答:

0维是标量,1维是向量,2维是矩阵,3维及以上就是张量。

在深度学习中,张量不仅是多维数据容器,更重要的是它支持自动微分和GPU加速计算,这是普通多维数组不具备的核心特性。比如PyTorch和TensorFlow中的张量,除了存储数据,还记录了计算图信息,能够反向传播梯度。

个人理解:
从数组的角度看,

  • 数字1就是0维数组
  • 坐标(100,100)就是1维数组
  • NxM 矩阵(011110101)\begin{pmatrix} 0&1&1\\ 1&1&0\\ 1&0&1\\ \end{pmatrix} 011110101 就是2维数组。
  • QxNxM张量就是Q个矩阵的数组,也就是3维数组。

所以从数组的角度看,张量就是多维数组。

从几何的角度看:

  • 数字1是一维坐标轴上的向量;
  • 点(100, 100)是二维空间中的一个向量,由xy坐标轴上的两个分向量合成而来;
  • 矩阵是向量的推广,矩阵的子向量数量可以是多个。矩阵要竖着看,每一列都是一个向量。
    比如1x1矩阵:
    (0)\begin{pmatrix} 0 \end{pmatrix}(0)
    可以表示一个标量。
    3x1矩阵:
    (011)(3)\begin{pmatrix} 0\\ 1\\ 1\\ \end{pmatrix} \tag{3} 011 (3)
    表示一个3维向量。
    3x3矩阵:
    (011110101)\begin{pmatrix} 0&1&1\\ 1&1&0\\ 1&0&1\\ \end{pmatrix} 011110101
    表示3个3维向量。
    4x3矩阵:
    (011110101100)\begin{pmatrix} 0&1&1\\ 1&1&0\\ 1&0&1\\ 1&0&0\\ \end{pmatrix} 011111001010
    表示3个4维向量。
    从几何的角度看,矩阵可以代表由子向量组成的任意维度的空间。这个维度是几何维度,不是数组中的维度概念,不要搞混。比如说一张二维1920x1080的图片,你可以把它看作矩阵,那么它代表的空间是多少维的?上千维的。但是它作为数据,就是个二维数组。这两个维度要区分开,否则很晕。
  • 张量:张量是矩阵的推广。既然矩阵可以表示任意维度的空间,那么从几何角度看,张量就是多元宇宙。3维的张量,就是一阶多元宇宙,4维的张量,就是二阶多元宇宙。以此类推。

需要强调的是,数组中的维度和空间中的维度是不一样的,在神经网络中最好还是从多维数组的角度去理解张量。

2.张量在神经网络中的地位

问AI:

是不是神经网络中几乎都在用张量或者说离不开张量?

AI答:

是的,神经网络几乎完全依赖张量。

张量是深度学习的核心数据结构,几乎所有现代深度学习框架(如PyTorch、TensorFlow、JAX)都围绕张量构建。神经网络的输入数据(如图像、文本序列)、权重参数、中间计算结果、梯度信息等都以张量形式存储和计算。

张量不仅仅是多维数组,更重要的是它们支持自动微分和GPU加速,这是训练神经网络的关键能力。框架通过张量追踪计算图,实现反向传播算法,自动计算梯度用于参数更新。可以说,没有张量,现代深度学习的高效训练和推理就无从谈起。

3.张量的使用

张量是神经网络框架(pytorch, tensorflow)中的核心数据结构,经常用到。所以一般输入的图片都需要转换成张量才能被计算。

问AI:

torch中toTensor()函数作用的什么,为什么要把图片toTensor()?

AI答:

toTensor()就是给图片办一张「神经网络身份证」。

它主要做三件事:

改格式:从图片格式(如jpg、png)变成神经网络能看懂的数字格式(张量)。

缩数值:把像素亮度从0-255的整数,变成0-1之间的小数,神经网络处理起来更顺手。

调顺序:把图片的「高×宽×颜色通道」排布,改成神经网络最喜欢的「颜色通道×高×宽」排布。

一句话总结:没有 toTensor(),图片就进不了神经网络的大门。


好了,下一篇直接让AI分析代码,AI之下没有看不懂的代码。

相关推荐
小鸡吃米…28 分钟前
机器学习 - K - 中心聚类
人工智能·机器学习·聚类
好奇龙猫1 小时前
【AI学习-comfyUI学习-第三十节-第三十一节-FLUX-SD放大工作流+FLUX图生图工作流-各个部分学习】
人工智能·学习
沈浩(种子思维作者)1 小时前
真的能精准医疗吗?癌症能提前发现吗?
人工智能·python·网络安全·健康医疗·量子计算
minhuan1 小时前
大模型应用:大模型越大越好?模型参数量与效果的边际效益分析.51
人工智能·大模型参数评估·边际效益分析·大模型参数选择
Cherry的跨界思维1 小时前
28、AI测试环境搭建与全栈工具实战:从本地到云平台的完整指南
java·人工智能·vue3·ai测试·ai全栈·测试全栈·ai测试全栈
MM_MS1 小时前
Halcon变量控制类型、数据类型转换、字符串格式化、元组操作
开发语言·人工智能·深度学习·算法·目标检测·计算机视觉·视觉检测
ASF1231415sd2 小时前
【基于YOLOv10n-CSP-PTB的大豆花朵检测与识别系统详解】
人工智能·yolo·目标跟踪
水如烟2 小时前
孤能子视角:“意识“的阶段性回顾,“感质“假说
人工智能
Carl_奕然2 小时前
【数据挖掘】数据挖掘必会技能之:A/B测试
人工智能·python·数据挖掘·数据分析
旅途中的宽~2 小时前
《European Radiology》:2024血管瘤分割—基于MRI T1序列的分割算法
人工智能·计算机视觉·mri·sci一区top·血管瘤·t1