当前位置: 首页 > news >正文

深度学习 必然用到的 线性代数知识

把标量到张量、点积到范数全串起来,帮你从 0 → 1 搭建 AI 数学底座 🚀

1 标量:深度学习的最小单元

标量 就是一维空间里的“点”,只有大小没有方向。例如温度 52 °F、学习率 0.001。

  • 记号:普通小写 x;域:x ∈ ℝ
  • 代码:torch.tensor(3.0)
    在网络中,标量常作为超参数单一输出出现(如二分类概率)。它让后续向量、矩阵的世界有了可度量的起点。

在这里插入图片描述

📊 标量由只有一个元素的张量表示。下面的代码将实例化两个标量,并执行一些熟悉的算术运算,即加法、乘法、除法和指数。

2 向量:特征打包者

把多个标量排成一列就是 向量。大小 + 方向 = 能描述“状态”。

  • 记号:粗体小写 x,维度 nx ∈ ℝⁿ
  • 用途:一条用户画像、一帧心电图、一张词嵌入
  • 代码:torch.arange(4)tensor([0,1,2,3])
    向量让模型一次性“看见”多特征,用长度(维度)衡量信息量 👍。

3 矩阵:表格数据的万能容器

矩阵 是“批量向量”或“二维表”。

  • 记号:粗体大写 A ∈ ℝ^{m×n}
  • 行表示样本,列表示特征;深度学习 mini-batch 自然采用行批次
  • 核心操作:转置 A.T、索引 A[i,j]、对称性检查 A==A.T
    矩阵让 GPU 并行冲浪,线性层的权重本质就是矩阵乘法权值🎯。

📊 可以通过行索引(i)和列索引(j)来访问矩阵中的标量元素,

4 张量:多维世界的坐标系

再在矩阵外加轴,就得到 张量

  • 3D 图像:(C,H,W);视频:(T,C,H,W)
  • 代码:torch.arange(24).reshape(2,3,4)
    张量是 PyTorch 的一等公民,支持广播切片视图变换,让高阶数据和算子自然对齐。

在这里插入图片描述

📊 张量是描述具有任意数量轴的n维数组的通用方法。例如,向量是一阶张量,矩阵是二阶张量。张量用特殊字体的大写字母表示(例如,X、Y和Z)

5 按元素运算与 Hadamard 积:并行的力量

同形状张量可逐元素加减乘除:

  • Hadamard 积 A ⊙ B = A * B → 特征级交互
  • 标量 + 张量:自动广播,不改变形状
    GPU 核心一次算 N 个元素,秒杀循环,真正体现“向量化编程”🔥。

在这里插入图片描述

📊 两个矩阵的按元素乘法称为Hadamard积(Hadamard product)(数学符号⊙)

6 降维:从海量数据中找平均

sum / mean / cumsum 可沿指定轴“折叠”张量:

  • A.sum(axis=0) → 列汇总;keepdims=True 保维度
  • 用于 softmax 归一化、特征池化、全局平均池化
    降维技术让模型聚焦信息密度,减小参数量同时抑制过拟合。

7 点积:度量相似度的核心操作

两向量 x·y = Σ xi yi

  • 加权和(权重非负且和为1)

  • 余弦相似度(单位向量时)

  • 代码:torch.dot(x,y)(x*y).sum()
    点积是注意力机制、Word2Vec 的基石,对齐“相关性”就靠它。

    点积的本质是相似性,余弦相似度的本质是方向相似性,因为余弦是单位向量的点积,规范化消除了长度影响。

在这里插入图片描述

📊 给定两个向量x, y ,它们的点积是相同位置的按元素乘积的和

8 矩阵-向量积:线性变换的快速电梯

Axx ∈ ℝⁿ 变成 ℝᵐ

  • 每行 aᵢ 与 x 点积,得到新向量元素
  • PyTorch:torch.mv(A,x)
    这是全连接层 forward 的数学本质,也能表示旋转、缩放等几何变换。

9 矩阵-矩阵乘法:批量线性映射

AB 可看作 m 次矩阵-向量乘再拼接:

  • 形状要求:A(n×k) · B(k×m) → C(n×m)
  • 代码:torch.mm(A,B)
    矩阵乘是多头注意力、卷积的幕后英雄,使并行度再上层楼。

在这里插入图片描述

📊 矩阵‐矩阵乘法AB看作简单地执行m次矩阵‐向量积,并将结果拼接在一起,形成一个n × m矩阵

10 范数:给向量量身定做的尺子

  • L2 范数 ∥x∥₂ = √Σ xi² → 距离、正则化;torch.norm(x)
  • L1 范数 ∥x∥₁ = Σ|xi| → 稀疏性,抗离群

向量的范数是表示一个向量有多大

欧几里得距离就是L2范数 代表真实距离 用于kmeans算法等 余弦相似度用于文本相似性 因为它代表方向

范数和 目标函数 密切相关:L2 正则抑制大权重,L1 促稀疏,在深度学习中我们经常试图解决优化问题:最大化分配给观测数据的概率; 最小化预测和真实观测之间的距离。用向量表示物品(如单词、产品或新闻文章),以便最小化相似项目之间的距离,最大化不同项目之间的距离。目标,或许是深度学习算法最重要的组成部分(除了数据),通常被表达为范数。

概念公式/操作实战意义
标量c = 5/9(f-32)超参数/单输出
向量x ∈ ℝⁿ用户画像
矩阵A ∈ ℝ^{m×n}批次数据
张量(N,C,H,W,…)图像/视频
Hadamard 积A⊙B特征交互
降维sum/mean池化归一
点积x·y相似度
范数∥x∥₁/₂/ₚ正则化

📊 上表浓缩 8 大核心要素,横向对照“公式 → 作用 → 应用”,帮你一眼锁定线性代数在深度学习中的落地场景。读表时先关注左列概念,再往右看公式和实战意义

                 | ∥x∥₁/₂/ₚ        | 正则化     |

📊 上表浓缩 8 大核心要素,横向对照“公式 → 作用 → 应用”,帮你一眼锁定线性代数在深度学习中的落地场景。读表时先关注左列概念,再往右看公式和实战意义

http://www.lryc.cn/news/581689.html

相关文章:

  • 嵌入式 数据结构学习(五) 栈与队列的实现与应用
  • React Ref 指南:原理、实现与实践
  • 【PyTorch】PyTorch中torch.nn模块的卷积层
  • 零基础,使用Idea工具写一个邮件报警程序
  • Solidity——什么是状态变量
  • 计算机网络:(七)网络层(上)网络层中重要的概念与网际协议 IP
  • Kafka “假死“现象深度解析与解决方案
  • UI前端大数据可视化进阶:交互式仪表盘的设计与应用
  • 数据驱动实时市场动态监测:让商业决策跑赢时间
  • 【LeetCode 热题 100】240. 搜索二维矩阵 II——排除法
  • 黑马点评系列问题之实战篇02短信登录 利用资料中的mysql语句创建数据表时报错
  • 关于 栈帧变化完整流程图(函数嵌套)
  • Java 双亲委派机制笔记
  • QML 使用QtObject定义私有变量
  • 基于Flask和机器学习开发的米其林餐厅数据可视化平台
  • 单片机:STM32F103的开发环境搭建
  • 单片机物联网应用中的 Pogopin、串口与外围模组通信技术解析
  • ABP VNext + Tye:本地微服务编排与调试
  • 基于udev规则固定相机名称
  • [netty5: WebSocketServerHandshaker WebSocketServerHandshakerFactory]-源码分析
  • 桥梁桥拱巡检机器人cad+【4张】设计说明书+绛重+三维图
  • 力扣 hot100 Day36
  • webUI平替应用,安装简单,功能齐全
  • LeetCode 75. 颜色分类(荷兰国旗问题)
  • 服务端向客户端主动推送数据的几种方法(Spring Boot 环境)
  • 11.进程间通信
  • VSCode+arm-none-eabi-gcc交叉编译+CMake构建+OpenOCD(基于Raspberry Pico RP2040)
  • 2.线性神经网络--Softmax回归
  • 算法分析与设计实验1:实现两路合并排序和折半插入排序
  • 3.8 java连接数据库