机器学习的数学基础——线性代数篇(一)

前言

很多同学一看到机器学习的数学内容就头皮发麻,甚至因此产生了弃坑的想法,在这里我要告诉大家,每一个学过高数的人,都有足够的数学基础去研究机器学习,有些知识点可能忘了,但看到了就能很快想起来,想入门机器学习真的不难!

这个系列的目的,是帮大家把机器学习所需要的数学基础(线性代数部分)回忆 起来。为了合理控制篇幅,我打算分成 2~3 次来写。

一、线性代数知识结构

为了直观地展示机器学习所需的线性代数的知识结构,我画了一张思维导图:
机器学习的数学基础——线性代数篇(一)_第1张图片
相信其中的很多内容你都觉得眼熟,可以直接跳过觉得没有问题的部分。

二、线性代数中的基本概念

1 向量、矩阵、张量

P.S.这三个概念,不同的学科有不同的理解方式,在这里的概念是依据计算机科学的思维给出的。

向量 (vector): 一列有序排列的数。

矩阵 (matrix): 二维的数组。

张量 (tensor): 多维的数组。

2 线性相关与子空间

把向量分别乘以标量系数并相加的操作称为 线性组合

一组向量,如果任意一个向量都不能表示为其它向量的线性组合,就可以被称为是 线性无关 的,反之,则称为 线性相关

如果把向量看成是多维空间中的一个点,一组向量通过线性组合所能构成的点的集合,称为这组向量的 生成子空间

矩阵可以看作是向量的组合。通常我们会研究线性相关对

A x = b Ax=b Ax=b

这个方程的解的影响,其中 A A A 是一个矩阵, x x x b b b 是向量。

3 范数 (norm)

在知乎上看了一些关于 “如何理解范数” 的回答,感觉并没有 get 到我想要的东西。还是花书讲的好,总结一下就是一句话:

范数是用来衡量向量或矩阵的大小的!

范数是用来衡量向量或矩阵的大小的!

范数是用来衡量向量或矩阵的大小的!

因为向量的大小可以有不同的定义方式,所以存在不同的范数。

或者说,范数是将向量映射到非负值的满足下列性质的任意函数

  • f ( x ) = 0 ∣ x = 0 f(x) = 0|x=0 f(x)=0x=0
  • f ( x + y ) ≤ f ( x ) + f ( y ) f(x+y) \leq f(x)+f(y) f(x+y)f(x)+f(y)
  • ∀ α ∈ R , f ( α x ) = ∣ α ∣ f ( x ) \forall \alpha \in R , f(\alpha x) = |\alpha|f(x) αR,f(αx)=αf(x)

我们经常使用的范数有 L p L^p Lp 范数 、最大范数 、Frobenius 范数等。

L p L^p Lp 范数

向量 x x x L p L^p Lp 范数定义为

∣ ∣ x ∣ ∣ p = ( ∑ i ∣ x i ∣ p ) 1 p ||x||_p=(\sum_i|x_i|^p)^\frac{1}{p} xp=(ixip)p1

其中 p ∈ R p\in R pR p ≥ 1 p\geq 1 p1

p = 2 p=2 p=2 时,上式的形式跟我们定义 向量的模 的公式一毛一样,这个 L 2 L^2 L2 范数,也被称为是 欧几里得范数

L 2 L^2 L2 范数在机器学习中的应用非常广泛。很多时候,我们也会用直接用其平方来衡量向量的大小,因为计算会更加方便。

L 1 L^1 L1 范数常用于需要严格区分向量中零和非零但是很小的元素的情景,因为平方 L 2 L^2 L2 范数在零附近增长很慢。

最大范数

最大范数即向量中最大的元素的绝对值,记作 ∣ ∣ x ∣ ∣ ∞ ||x||_\infty x

Frobenius 范数

Frobenius 范数通常用来衡量矩阵的大小,类似于向量的 L 2 L^2 L2 范数,其形式为

∣ ∣ A ∣ ∣ F = ∑ i , j A i , j 2 ||A||_F=\sqrt{\sum_{i,j}A_{i,j}^2} AF=i,jAi,j2

P.S. 大家在实际中可能会遇见各种各样的范数,或者自己也可以根据需要去定义一个。

4 特殊矩阵

主要有对角、单位、对称、奇异、正交、正定这几种。

对角矩阵

只在主对角线上有非零元素的矩阵。

要注意并不是所有对角矩阵都是方阵,长方形的矩阵也可以是对角矩阵。

单位矩阵

主对角线上全是 1 的对角矩阵,且为方阵。

对称矩阵

元素以主对角线为对称轴对应相等的矩阵。也就是转置等于自身的矩阵。

奇异矩阵

列向量线性相关的方阵。

需要注意的是,非方阵谈不上奇异非奇异,这里说列向量线性相关,其实等价于行向量线性相关。

同时,奇异矩阵不可逆,可逆矩阵一定是非奇异矩阵。

正交矩阵

如果 x T y = 0 x^Ty=0 xTy=0,则称向量 x x x 和向量 y y y 正交。如果这些向量不但相互正交,而且其 L 2 L^2 L2 范数都为 1,则称它们为 标准正交

正交矩阵,是指行向量和列向量分别 标准正交方阵

分别标准正交,即所有行向量之间相互标准正交,所有列向量之间也相互正交。由于 n 维空间中至多有 n 个向量两两正交,所以正交矩阵必定是方阵。

对正交矩阵,有 A T A = A A T = I A^TA=AA^T=I ATA=AAT=I,于是 A − 1 = A T A^{-1}=A^T A1=AT,即

正交矩阵的等于它的转置

正定矩阵

如果方阵 A A A 与一个向量 v v v 相乘,结果是一个与 v v v 共线的向量,相当于对 v v v 进行了缩放,即

A v = λ v Av=\lambda v Av=λv

则称 v v v A A A特征向量,标量 λ \lambda λ v v v 这个特征向量对应的 特征值

特征值 均为正数的方阵称为 正定矩阵

特征值均为 非负数 的矩阵成为 半正定,均为 负数 的称为 负定,均为 非正数 的称为 半负定


在下篇文章中,我们将一起复习线性代数的常见运算。感谢阅读!

你可能感兴趣的:(机器学习)