I. 范数(Norm)
定义:
向量空间\(V\)上的范数(norm)是如下函数:
\[ \begin{align} \|·\|:V→R, \notag \\ x→\|x\| \notag \end{align} \]
该函数会赋予每个向量\(x\)自身的长度\(\|x\|∈R\),并且对于\(\lambda∈R,\,\,x,y∈V\)满足如下性质:
- Absolutely homogeneous:\(\|\lambda x\|=|\lambda|\|x\|\)
- Triangle inequality:\(\|x+y\|≤\|x\|+\|y\|\)
Positive definite:\(\|x\|≥0\)且\(\|x\|=0\Leftrightarrow x=0\)
\(L^p\) norm 公式如右: \(\|x\|_p=(\sum_i|x_i|^p)^{\frac{1}{p}}\) for \(p∈R,p≥1\).
1) \(L^1\) Norm
这个也叫Manhattan norm。
二范式在零点附近增长很慢,而且有的机器学习应用需要在零点和非零点之间进行区分,此时二范式显得力不从心,所以我们可以选择一范式,即\(L^1\) norm,其表达式为:\(\|x\|_1=\sum_i|x_i|\).
2) \(L^2\) Norm
这个也叫Euclidean norm。
最常用的是二范式,即\(L^2\) norm,也称为Euclidean norm(欧几里得范数)。因为在机器学习中常用到求导,二范式求导之后只与输入数据本身有关,所以比较实用。
3) \(L^0\) Norm
0范式表示矢量中非0的元素的个数。其实0范式这个说法是不严谨的,因为它不满足第三个条件,but whatever~
4) \(L^∞\) Norm
无穷大范式,也叫max norm,它表示矢量中所有元素绝对值的最大值,即
\[||x||_∞=max |x_i|\]
5) F norm
F norm全称是Frobenius Norm,其表达式如下:
\[||A||_F=\sqrt{\sum_{i,j}A_{i,j}^2} \]
II. 内积(Inner Products)
内积的一个主要目的是用来判断两个向量是否互相正交。另外内积并没有明确的定义,他只是一个广泛的定义,也就是说我们可以根据需要定义内积,例如我们可以把内积定义成点积的形式等等。
1. 点积(Dot Product)
一种常见的内积形式是向量空间\(R^n\)内的点积(Dot Product/ Scalar Product),计算公式如下:
\[x^Ty=\sum_{i=1}^nx_iy_i\]
2. General Inner Products
在对内积给出一般性的定义之前需要做一些铺垫:
-
双向映射(Bilinear Mapping)
*上的定义:A bilinear map is a function combining elements of two vector spaces to yield an element of a third vector space, and is linear in each of its arguments.
看定义其实不太好懂什么是bilinear mapping,stackexchange上有人给出了简单定义,即可以简单理解为满足如下性质的映射即为双向映射:
\(B(x+y,z) = B(x,z) + B(y,z)\)(additive in the first "coordinate"),
\(B(x,y+z) = B(x,y) + B(x,z)\) (additive in the second "coordinate"),
\(B(cx,y) = cB(x,y) = B(x,cy)\)preserves scaling in each "coordinate").
再简单快捷理解的方式就是将\(B\)理解成实数的乘法,即:
\(B(a,b)=a·b\)
\(B(x+y,z) = (x+y)\cdot z = x\cdot z + y\cdot z = B(x,z) + B(y,z)\)
\(B(x,y+z) = x\cdot (y+z) = x\cdot y + x\cdot z = B(x,y) + B(x,z)\)
\(B(cx,z) = (cx)\cdot z = c\cdot(xz) = x\cdot(cz) = B(x,cz)\)
这样有没有好理解很多?
-
又一个定义
假设 \(V\)为向量空间, \(\Omega:V×V→R\)是一个bilinear mapping,它能将两个向量映射到一个实数上。那么
- 若\(\Omega(x,y)=\Omega(y,x)\),则称\(\Omega\)是对称的。
若\(\forall x∈V \backslash \{0\}:\Omega(x,x)>0,\,\,\,\Omega(0,0)=0\),则称\(\Omega\)为正定(positive definite)。
- 若\(\Omega(x,y)=\Omega(y,x)\),则称\(\Omega\)是对称的。
内积的定义
假设\(V\)为向量空间,\(\Omega:V×V→R\)是一个bilinear mapping,它能将两个向量映射到一个实数上。那么
- 一个正定(positive definite)且对称的bilinear mapping\(\Omega:V×V→R\)被称为在向量空间\(V\)上的内积(inner product),一般记为\(<x,y>\),而不是\(\Omega(x,y)\)。
- \((V,<·,·>)\)称为内积空间(inner product space)
3. 对称正定矩阵(Symmetric,Positive Definite Matrices)
定义:
满足如下条件的对称矩阵\(A∈R^{n×n}\)称为对称正定矩阵或正定矩阵
\[\forall{x∈V\backslash\{0\}}:x^TAx>0\]
若上式中的>换成≥,则该矩阵为对称半正定矩阵。
例子:
正定矩阵\(A\)有如下性质:
- \(A\)的kernel (null space)只包含\(0\),因为当\(x≠0\)时,\(x^TAx>0\)。
- \(A\)的对角元素\(a_{ii}\)都是正的,因为\(a_{ii}=e_i^TAe_i>0\),其中\(e_i\)表示第\(i\)个标准基。
III. 内积的应用
我们可以通过定义内积从而定义长度(length),距离(distance),角度(angle),正交(orthogonal)等。
- 长度&距离
其实长度和距离可以是等价的,定义如下:
假设有内积空间\((V,<·,·>)\),那么如下表达式表示\(x,y∈V\)之间的距离
\[d(x,y)=\|x-y\|=\sqrt{<x-y,x-y>}\]
如果我们使用点积作为内积,那么上面定义的距离则为欧几里得距离(Euclidean distance),其中映射
\[ \begin{align} d:V×V→R \notag \\ (x,y)→d(x,y) \notag \end{align} \]称为metric
- 角度&正交
令\(w∈[0,π]\)表示两向量之间的角度,则有
\[ \begin{align} cos\,\mathcal{w}&=\frac{<x,y>}{\sqrt{<x,x><y,y>}} \notag \\ (dot\,\,product)&=\frac{x^Ty}{\sqrt{x^Tx\,y^Ty}} \notag \\ \Rightarrow w &= arccos\frac{<x,y>}{\sqrt{<x,x><y,y>}} \notag \end{align} \]
由上面的定义可知当\(<x,y>=0\)时,二者正交。
IV. 函数的内积(Inner Product of Functions)
前面介绍的内积都是基于有限的向量,如果扩展到有无限元素的函数,此时的内积如何定义呢?
假设有两个函数\(u(x),v(x)\),二者的内积为:\(<u,v>=\int_a^b{u(x)v(x)dx}, \,\, a,b<∞\)
当如上积分为0时,表示两个函数正交。