深度学习(花书)读书笔记-第二章线性代数

基本概念

  • 标量(scalar):一个标量就是一个单独的数(标量可以看作是只有一个元素的矩阵),通常赋予小写的变量名称。
  • 向量(vector):一个向量是一数(向量可以看作是只有一列的矩阵),通常赋予向量粗体的小写变量名称。
  • 矩阵(matrix):矩阵是一个二维数组,其中的每一个元素被两个索引而非一个所确定,通常赋予矩阵粗体的大写变量名称。
  • 张量(tensor):张量是多维数组(可以超过二维),当它是零维时就是标量,一维时就是矢量,二维时就是矩阵。
    深度学习(花书)读书笔记-第二章线性代数_第1张图片

  • 转置(transpose):矩阵 A 的转置表示为 A ⊤ ,定义如下
    (A ⊤ ) i,j = A j,i .
    -矩阵乘法:矩阵 A 的形状是 m×n,矩阵 B 的形状是 n×p,那么矩阵
    C 的形状是 m×p。
    在这里插入图片描述
  • Hadamard 乘积(Hadamard product):两个矩阵中对应元素的乘积,记为 A ⊙ B。

  • 单位矩阵(identity matrix):所有沿主对角线的元素都是 1,而所有其他位置的元素都是0。
  • 矩阵逆(matrix inversion):
    在这里插入图片描述
  • 对角矩阵(diagonal matrix):只在主对角线上含有非零元素,其他位置都是零。

  • 范数(norm):衡量一个向量的大小。Lp范数定义如下:
    深度学习(花书)读书笔记-第二章线性代数_第2张图片
    其中,p是实数且大于等于1
    • L2范数被称为欧几里得范数(Euclidean norm)。它表示从原点出发到向量 x 确定的点的欧几里得距离,简化表示为 ∥x∥,略去了下标 2。
    • 当机器学习问题中零和非零元素之间的差异非常重要时,通常会使用 L1 范数。每当x 中某个元素从 0 增加 ϵ,对应的 L 1 范数也会增加 ϵ。
      在这里插入图片描述
    • L1范数常常用来做机器学习模型的正则化,因为机器学习模型中常常想减小模型非零变量的数量以防止过拟合,也就是很多变量变为零,而将大部分权重放在某些有意义的变量上,这时候由于L2范数在变量接近零时跟随的改变较小,会出现很多趋近于零而不为零的变量,而 L1范数由于跟随于每个变量的变动是恒定的,使得零元素和非零但趋近于零的变量仍对该项有显著贡献,在目标是减小这一项的过程中会使很多变量归零(注意是归零而不仅仅是较小接近零),从而更有效的减少过拟合。(摘自知乎川陀学者)
  • 单位向量(unit vector):具有单位范数(unit norm)的向量
    在这里插入图片描述
  • 标准正交(orthonormal):两个向量不仅互相正交,并且范数都为 1。
  • 正交矩阵(orthogonal matrix):指行向量和列向量是分别标准正交的方阵,正交矩阵受到关注是因为求逆计算代价小。对于行向量或列向量
    互相正交但不是标准正交的矩阵没有对应的专有术语。
    在这里插入图片描述

  • 迹运算:返回的是矩阵对角元素的和:
    在这里插入图片描述
    循环改变迹运算中相乘矩阵的顺序不影响结果,如下式所示:
    在这里插入图片描述

  • 行列式:记作 det(A),是一个将方阵 A 映射到实数的函数。行列式等于矩阵特征值的乘积。行列式的绝对值可以用来衡量矩阵参与矩阵乘法后空间扩大或者缩小了多少。如果行列式是 0,那么空间至少沿着某一维完全收缩了,使其失去了所有的体积。如果行列式是 1,那么这个转换保持空间体积不变。


特征分解

例如,整数可以分解为质因数。我们可以用十进制或二进制等不同方式表示整数 12,但是 12 = 2 × 3 × 3 永远是对的。从这个表示中我们可以获得一些有用的信息,比如 12 不能被 5 整除,或者 12 的倍数可以被 3 整除。
正如我们可以通过分解质因数来发现整数的一些内在性质,我们也可以通过分解矩阵来发现矩阵表示成数组元素时不明显的函数性质。

  • 特征分解(eigendecomposition):将矩阵分解成一组特征向量和特征值。
    方阵 A 的特征向量(eigenvector)是指与 A 相乘后相当于对该向量进行缩放的非零向量 v:
    在这里插入图片描述
    标量 λ 被称为这个特征向量对应的特征值(eigenvalue)。

  • 假设我们将矩阵A的所有特征向量连成一个矩阵V,而对应的特征值连成一个向量λ ,那么矩阵A就可以表示为它的特征分解形式:
    在这里插入图片描述
    可以将 A 看作是沿方向 v (i) 延展 λ i 倍的空间,如下图所示:
    深度学习(花书)读书笔记-第二章线性代数_第3张图片
    在这里,矩阵A 有两个标准正交的特征向量,对应特征值为 λ 1 的 v (1) 以及对应特征值为 λ 2 的 v (2) 。通过观察 A 拉伸单位圆的方式,我们可以看到它将 v (i) 方向的空间拉伸了 λ i 倍。


奇异值分解(singular value decomposition, SVD)

  • SVD将矩阵分解为奇异向量(singular vector)和奇异值(singular value)。奇异值分解有更广泛的应用。每个实数矩阵都有一个奇异值分解,但不一定都有特征分解。例如,非方阵的矩阵没有特征分解,这时我们只能使用奇异值分解。SVD将矩阵 A 分解成三个矩阵的乘积:
    在这里插入图片描述
  • 假设 A 是一个 m×n 的矩阵,那么 U 是一个 m×m 的正交矩阵,D 是一个 m×n的对角矩阵(D不一定是方阵),V 是一个 n × n的正交矩阵。
  • D对角线上的元素被称为矩阵 A 的奇异值(singular value)。U的列向量被称为左奇异向量(left singular vector),V的列向量被称右奇异向量(right singular vector)。
  • SVD在很多方面有重要的作用,比如在推荐系统里,我们有矩阵A来表示用户对影片的评分,那么SVD可以看做是将其映射到某个隐性特征(例如影片风格)的过程,其中U即为(用户,隐性特征)矩阵,V即为(影片,隐性特征)矩阵,而D就代表了每个隐性特征的重要性,我们如果想压缩存储空间的话可以只选择D的一些较大的对角元素,而相应的选取出U和V的对应行列形成新矩阵,通过压缩后的U’,D’,V’再重构的矩阵A’可以较好的还原矩阵A而没有较大的失真。(摘自知乎川陀学者)
    (在另一篇博客https://blog.csdn.net/qq_41398418/article/details/114309304也简单介绍了SVD的作用)

Moore-Penrose 伪逆

https://blog.csdn.net/qq_41398418/article/details/114297654

你可能感兴趣的:(读书笔记,线性代数,深度学习,机器学习)