【算法工程师的数学基础】系列将会从线性代数、微积分、数值优化、概率论、信息论五个方面进行介绍,感兴趣的欢迎关注【搜索与推荐Wiki】公众号,获得最新文章。

《算法工程师的数学基础》已更新:


线性代数主要包含向量、向量空间(或称线性空间)以及向量的线性变换和有限维的线性方程组。本篇文章主要介绍线性代数部分中的向量和向量空间。

向量和向量空间

向量

标量(Scalar)是一个实数,只有大小,没有方向。而向量(Vector)是由一组实数组成的有序数组,同时具有大小和方向。

一个$n$维向量$a$是由$n$个有序实数组成,表示为:

其中$a_i$称为向量的第$i$个分量,或者第$i$维。向量符号一般用黑色小写字母$a、b、c$或者小写字母$\alpha、\beta、\gamma$表示。

为了书写方便期见,本系列文章向量并没有进行黑色加粗,但读者也要进行区分。

向量空间

向量空间(Vector Space) 也称为线性空间(Linear Space),是指由向量组成的集合,并满足以下的两个条件:

  • 向量加法+:向量空间$V$中的两个向量$a、b$,他们的和$a+b$也属于向量空间
  • 标量乘法$\cdot$:向量空间$V$中的任一向量$a$和任一标量$c$,他们的乘积$c \cdot a$也属于向量空间

欧式空间(Euclidean Space) 是一个常用的线性空间,通常表示为$R^n$,其中$n$为空间维度(Dimension)。欧式空间中向量加法和标量乘法定义为:

其中向量加法需要满足两个向量的维度必须一致。

线性子空间 向量空间$V$的线性子空间$U$是$V$的一个子集,并且满足向量空间的两个条件(向量加法和标量乘法)。

线性无关 线性空间$V$中的一组向量$\{ v_1, v_2, …., v_n\}$,如果对任意的一组标量$\lambda_1, \lambda_2, …, \lambda_n$,满足$\lambda_1\,v_1 + \lambda_2\,v_2, …, \lambda_n\,v_n=0$,则必然$\lambda_1=\lambda_2=…=\lambda_n=0$,那么$\{ v_1, v_2, …, v_n\}$是线性无关的,也称为线性独立。

注意$\lambda_1\,v_1 + \lambda_2\,v_2, …, \lambda_n\,v_n=0$ 中 0 表示 $n$维的0向量

线性相关性是线性代数的重要概念,因为线性无关的一组向量可以生成一个向量空间,而这组向量则是这向量空间的基。

补充wiki上的线性相关性判断:

  • 含有零向量的向量组,必定线性相关。若有向量组${\displaystyle a_{1},a_{2},…,a_{s}}$,其中${\displaystyle a_{1}=0}$,则${\displaystyle a_{1}=0\cdot a_{2}+…+0\cdot a_{s}}$。
  • 含有两个相等向量的向量组,必定线性相关。若有向量组${\displaystyle a_{1},a_{2},…,a_{s}}$,其中${\displaystyle a_{1}=a_{2}}$,则${\displaystyle a_{1}=1\cdot a_{2}+0\cdot a_{3}+…+0\cdot a_{s}}$。
  • 若一向量组相关,则加上任意个向量后,仍然线性相关;即局部线性相关,整体必线性相关。
  • 整体线性无关,局部必线性无关。
  • 向量个数大于向量维数,则此向量组线性相关。
  • 若一向量组线性无关,即使每一向量都在同一位置处增加一分量,仍然线性无关。
  • 若一向量组线性相关,即使每一向量都在同一位置处减去一分量,仍然线性相关。
  • 若${\displaystyle a_{1},a_{2},…,a_{s}}$线性无关,而${\displaystyle b,a_{1},a_{2},…,a_{s}}$线性相关,则${\displaystyle b}$,b必可由${\displaystyle a_{1},a_{2},…,a_{s}}$线性表示,且表示系数唯一。
  • 有向量组${\displaystyle {\textrm {I}}\{a_{1},a_{2},…,a_{s}\}}$和${\displaystyle {\textrm {II}}\{b_{1},b_{2},…,b_{t}\}}$,其中${\displaystyle t>s}$,且${\displaystyle {\textrm {II}}}$中每个向量都可由${\displaystyle {\textrm {I}}}$线性表示,则向量组${\displaystyle {\textrm {II}}}$必线性相关。即向量个数多的向量组,若可被向量个数少的向量组线性表示,则向量个数多的向量组必线性相关。
  • 若一向量组${\displaystyle b_{1},b_{2},…,b_{t}}$可由向量组${\displaystyle a_{1},a_{2},…,a_{s}}$线性表示,且${\displaystyle b_{1},b_{2},…,b_{t}}$线性无关,则${\displaystyle t\leq s}$。即线性无关的向量组,无法以向量个数较少的向量组线性表示。

基向量
向量空间$V$的基(bases)$B=\{ e_1, e_2, e_3, …, e_n\}$是$V$的有限子集,其元素之间线性无关。向量空间$V$所有的向量都可以按唯一的方式表达为$B$中向量的线性组合。对任意$v\in V$,存在一组标量$(\lambda_1,\lambda_2,…,\lambda_n)$使得:

其中基$B$中的向量称为基向量(base vector)。如果基向量是有序的,则标量$(\lambda_1,\lambda_2,…,\lambda_n)$称为向量$v$关于基$B$的坐标(coordinates)。

$n$维空间$V$的一组标准基(standard basis) 为:

$V$中的任一向量$v=[v_1, v_2, v_3, .., v_n]$可以唯一表示为:

$v_1, v_2, v_3, .., v_n$ 也称为向量$v$的笛卡尔坐标(Carterian coordinates)。

向量空间中的每个向量可以看作是一个线性空间中的笛卡儿坐标。

内积 一个$n$ 维线性空间中的两个向量$a,b$,其内积为:

正交 如果向量空间中两个向量的内积为0,则他们正交(orthogonal)。如果向量空间中一个向量$v$与子空间$U$中的每个向量都正交,那么向量$v$和子空间$U$正交。

范数

范数(norm)是一个表示向量长度得函数,为向量空间内得所有向量赋予非零得正长度或大小。对于一个$n$维向量$v$,一个常见得范数函数为$l_p$范数

其中$p\geq0$为一个标量的参数。常用的$p$的取值有$1,2,\infty$等。

$l_1$范数 为向量各个元素的绝对值之和。

$l_2$范数 为向量各个元素的平方和再开方

$l_2$范数又称为Euclidean范数或者Frobenius。从几何角度,向量也可以表示为从原点出发的一个带箭头的有向线段,其$l_2$范数为线段的长度,也常称为向量的模。

$l_{\infty}$范数 为向量各个元素的最大绝对值。

下图给出了常见的不同范数示例。
常见的不同范数示例

常见的向量

全0向量 指所有元素都为0的向量,用0表示。全0向量为笛卡尔坐标系中的原点。

全1向量 指所有元素都为1的向量,用1表示。

one-hot向量 为有且已有一个元素为1,其余元素都为0的向量。


【技术服务】,详情点击查看: https://mp.weixin.qq.com/s/PtX9ukKRBmazAWARprGIAg


扫一扫 关注微信公众号!号主 专注于搜索和推荐系统,尝试使用算法去更好的服务于用户,包括但不局限于机器学习,深度学习,强化学习,自然语言理解,知识图谱,还不定时分享技术,资料,思考等文章!