深度学习 Deep Learning 第2章 线性代数

server/2025/3/16 13:47:50/

深度学习 第2章 线性代数

线性代数深度学习的语言。 张量操作是神经网络计算的基石,矩阵乘法是前向传播的核心,范数约束模型复杂度,而生成空间理论揭示模型表达能力的本质。 本章介绍线性代数的基本内容,为进一步学习深度学习做准备。

主要内容

在这里插入图片描述

2.1 标量、向量、矩阵和张量

  • 标量:单个数字,用斜体表示,通常赋予小写字母变量名。
  • 向量:数字数组,按顺序排列,用粗体小写字母表示,元素通过下标访问。
  • 矩阵:二维数字数组,用粗体大写字母表示,元素通过两个索引访问。
  • 张量:多维数字数组,用特殊字体表示,元素通过多个索引访问。

2.2 矩阵和向量的乘法

  • 矩阵乘法:两个矩阵相乘得到第三个矩阵,要求第一个矩阵的列数等于第二个矩阵的行数。
  • 点积:两个向量的点积是它们对应元素乘积的和,结果是一个标量。
  • 矩阵乘法的性质:矩阵乘法是可分配的和结合的,但不具有交换性。

2.3 单位矩阵和逆矩阵

  • 单位矩阵:与任何向量相乘都不会改变该向量的矩阵,主对角线元素为1,其余为0。
  • 逆矩阵:矩阵A的逆矩阵A⁻¹满足A⁻¹A = I,用于求解线性方程组。

2.4 线性相关性和生成空间

  • 线性相关性:一组向量中至少有一个向量可以表示为其他向量的线性组合。
  • 生成空间:一组向量的所有线性组合构成的集合。

2.5 范数

  • Lᵖ范数:衡量向量大小的函数,L¹范数(欧几里得范数)和L²范数常用。
  • 矩阵范数:衡量矩阵大小的函数,如弗罗贝尼乌斯范数。
    “范数衡量向量大小,L¹鼓励稀疏性,L²平滑但易微分。”

2.6 特殊类型的矩阵和向量

  • 对角矩阵:只有主对角线有非零元素的矩阵。
  • 对称矩阵:等于其转置的矩阵。
  • 正交矩阵:行和列都是标准正交的矩阵。

2.7 特征分解

  • 特征向量和特征值:矩阵A的特征向量v满足Av = λv,λ是对应的特征值。
  • 特征分解:将矩阵分解为特征向量和特征值的组合。

总结

线性代数深度学习的“语法”:

  • 张量作为数据容器,支撑图像、语音等高维数据表示。
  • 矩阵乘法是神经网络前向传播的核心运算(如全连接层)。
  • 范数约束模型复杂度(如正则化项)
  • 生成空间理论解释模型表达能力
  • 线性相关性直接影响参数优化稳定性。
    掌握这些概念,可深入理解神经网络的计算本质与设计逻辑。

延伸思考

深度学习视角:张量(高维数组)是神经网络中数据的通用表示形式(如图像=3D张量)。
实践意义:广播机制(broadcasting)允许不同维度张量运算,是框架(如PyTorch)高效实现的关键。掌握这些内容,就握住了理解深度学习模型的钥匙!

精彩语句

  1. 英文“A vector can be regarded as a point in space, with each element corresponding to a position on a different coordinate axis.”
    中文:向量可视为空间中的点,每个元素对应不同坐标轴的位置。
    解释:从几何视角连接代数与空间,奠定线性组合的直观基础。

  2. 英文“Matrix multiplication is not an element-wise product, but a linear combination of rows and columns.”
    中文:矩阵乘法是行与列的线性组合,而非逐元素乘积。
    解释:揭示神经网络中权重与输入交互的本质(如全连接层计算)。

  3. 英文“The inverse of an orthogonal matrix is its transpose, making computations highly efficient.”
    中文:正交矩阵的逆即其转置,计算成本极低。
    解释:正交性在梯度稳定性和参数初始化中的关键作用(如防止梯度爆炸)。

  4. 英文“Norms measure the size of vectors: L¹ encourages sparsity, while L² is smooth and differentiable.”
    中文:范数衡量向量大小:L¹ 鼓励稀疏性,L² 平滑且易微分。
    解释:指导损失函数设计(如Lasso回归与岭回归的正则化选择)。


http://www.ppmy.cn/server/175439.html

相关文章

Flink术语

Flink Application: 一个完整的Flink程序代码叫做一个Flink Application,其始于一个或多个Source,终于一个或多个Sink,中间由一个或者多个Operator(算子)组合对数据进行转换形成Transformation。 编写Flink代码要符合一定的流程,首…

Spring Boot实战:MySQL与Redis数据一致性深度解析与代码实战

Spring Boot实战:MySQL与Redis数据一致性深度解析与代码实战 一、数据一致性问题概述二、常见解决方案三、选择合适的解决方案四、总结 在Spring Boot开发中,MySQL作为关系型数据库,提供了强大的数据存储和查询能力;而Redis作为内…

基于 Verilog 的多路复用显示驱动设计与测试:实践与探索

在数字电路设计的学习与实践中,Verilog 语言作为硬件描述的有力工具,被广泛应用于各类电路设计场景。今天,我们将深入探讨如何运用 Verilog 实现多路复用显示驱动的设计与测试,这不仅能加深对 Verilog 语言的理解,还能提升数字电路设计的实践能力。 一、实验目的 本次实验…

解决PC串流至IPad Pro时由于分辨率不一致导致的黑边问题和鼠标滚轮反转问题

问题背景 今天在做 电脑串流ipad pro 的时候发现了2个问题: 1.ipadpro 接上鼠标后,滚轮上下反转,这个是苹果自己的模拟造成的问题,在设置里选择“触控板与鼠标”。 关闭“自然滚动”,就可以让鼠标滚轮正向滚动。 2. ipadpro 分…

小说文本分析工具:基于streamlit实现的文本分析

小说文本分析工具:基于streamlit实现的文本分析 主要在于使用python对小说文本中章节之间的识别与分割,通过分词以及停用词库,抽取关键词章节的词云展示,以及关键词在整个文本当中的权重网络。 import re import streamlit as s…

【SpringMVC】常用注解:@CookieValue

1.作用 用于把指定cookie名称传入控制器方法参数 2.属性 value&#xff1a;指定cookie的名称 required&#xff1a;是否必须有次cookie 3.示例 先写jsp代码 <a href"demo1/useCookieValue">绑定 cookie 的值</a> 控制器代码 RequestMapping(&qu…

贪吃蛇小游戏-简单开发版

一、需求 本项目旨在开发一个经典的贪吃蛇游戏&#xff0c;用户可以通过键盘控制蛇的移动方向&#xff0c;让蛇吃掉随机出现在游戏区域内的食物&#xff0c;每吃掉一个食物&#xff0c;蛇的身体长度就会增加&#xff0c;同时得分也会相应提高。游戏结束的条件为蛇撞到游戏区域的…

C语言零基础入门:嵌入式系统开发之旅

C语言零基础入门&#xff1a;嵌入式系统开发之旅 一、引言 嵌入式系统开发是当今科技领域中一个极具魅力和挑战性的方向。从智能家居设备到汽车电子系统&#xff0c;从智能穿戴设备到工业自动化控制&#xff0c;嵌入式系统无处不在。而C语言&#xff0c;作为嵌入式开发中最常…