高维空间中的高斯分布和随机投影
(一)在高维球体表面产生均匀分布点的方法
我们来考虑一个采样问题,就是怎样在高维单位球体的表面上均匀的采样。首先,考虑二维的情况,就是在球形的周长上采样。我们考虑如下方法:第一,先在一个包含该圆形的外接正方形内均匀的采样;第二,将采样到的点投影到圆形上。具体地说就是,第一,先独立均匀的从区间
[−1,1]
(我们假设圆形跟正方形的中心点都在原点)内产生两个值组成一个二维的点
(x1,x2)
;第二,将该二维点投影到圆形上。例如,如下图所示,如果我们产生点是图中的A,B两点,那么投影到圆形上就是C点,如果产生的是点D,那么投影到圆形上就是E点。但是,用这样的方法得到点在圆形上并不是均匀分布的,比如产生C点的概率将大于产生E点概率,因为可以投影到C点对应的那条直线比E点对应的那条直线要长。解决的办法是去掉圆形外面的点,也就是如果我们首先产生的点在圆形外的话(比如点B),那么我们就丢弃该点,重新在产生,这样的话产生的点在圆形上是均匀分布的。
那么,我们能否将此方法扩展到高维的情况下呢?答案是不行的。因为在高维的情况下球与正方体的体积比将非常非常小,几乎接近于零。也就是我们在正方体内产生的点几乎不可能落到球体内部,那么也就无法产生有效的点。那么,在高维的球体上,我们应该怎样才能产生一个均匀分布与球体表面的点呢?答案是利用高斯分布。即将上述第一步改成:以均值为零方差为1的高斯分布独立地产生
d
个值,形成一个d维的点
x=(x1,x2,⋯,xd)
;然后第二步:将点
x
归一化x~=x∥x∥。用这种方法产生点必定均匀分布在高维球体表面。原因如下,
d
个独立的高斯分布的密度函数为:
p(x1,x2,⋯,xd)=1(2π)d2e−x21+x22+⋯+x2d2=1(2π)d2e−∥x∥22
那么
p(x~)=1(2π)d2e−12
,为常数,说明产生的每个点的概率都一样,即均匀分布。这个结论在证明随机投影定理时会用到。
(二)高维空间下的高斯分布性质
高斯分布是概率统计里面最常见也是最有用的分布之一,本文主要关注高斯分布在高维情况下的一些特性。首先,对于低维高斯分布来说,其概率质量主要集中在均值附近。那么在高维情况下,这样的情况是否还是真的呢?一个均值为零,协方差为
σ2I
的
d
为高斯分布的密度函数为:
p(x)=1(2π)d/2σdexp(−∥x∥22σ2)
当
σ=1
时,由于单位球在高维的情况下的体积趋近于零,所以以均值点为原点的单位球所累计的概率质量也接近于零。事实上,只有当这个球的半径增长到
d√
时,才会有相对比较大的概率质量。更准确的说,在距离原点
d√
附近的环内占据了高斯分布的主要概率质量。
对于一个服从均值为零协方差为
σ2I
的
d
维的高斯分布的向量x来说,可以将其看成每个坐标是独立地由均值为零方差为
σ2
的一维高斯分布产生。所以
x
到均值点的距离平方期望为:E(∥x∥2)=dE(x21)=dσ2。根据大数定理我们可以知道,当
d
很大时,x点到均值点的距离平方主要集中在其期望值附近,从这个角度也可以看到服从高维高斯分布的点主要聚集在距离均值点距离为
σd√
附近,这里的
σd√
称为高斯分布的半径。以下,我们只分析均值为零协方差为单位阵的高斯分布。
首先,我们来计算在高斯分布中距离原点为
r
的那个“面”对应的概率质量是多少?也就是我们要计算高斯分布在半径为r的
d
维球体表面的概率质量g(r),由于在这个表面所有的点对应的概率密度都一样(为
1(2π)d/2exp(−r2/2)
),所以这个概率质量等于相同的概率密度乘以表面积,即
g(r)=Crd−1e−r2/2
,其中
C
为固定的常数。令I=[d−1−−−−√−c,d−1−−−−√+c],其中
c
为正实数,现在我们来证明:高维高斯分布的概率质量主要聚集在区间I内。令a表示区间I外的概率质量,
b
表示区间I内的概率质量。
令f(r)=lng(r)=(d−1)lnr−r22+lnC,对
f(r)
求导有:
f′(r)=d−1r−rf′′(r)=−d−1r2−1≤−1
将
f(r)
在
d−1−−−−√
处二阶泰勒展开:
f(r)=f(d−1−−−−√)+f′(d−1−−−−√)(r−d−1−−−−√)+12f′′(ζ)(r−d−1−−−−√)2
其中
ζ
介于
d−1−−−−√
与
r
之间。由于f′(d−1−−−−√)=0,所以:
f(r)=f(d−1−−−−√)+12f′′(ζ)(r−d−1−−−−√)2≤f(d−1−−−−√)−12(r−d−1−−−−√)2
所以
g(r)=ef(r)≤g(d−1−−−−√)exp(−12(r−d−1−−−−√)2)
。这样我们就可以计算
a
的上界:
aamp;=∫r∈Ig(r)dramp;≤∫d−1√−cr=0g(d−1−−−−√)exp(−(r−d−1−−−−√)2/2)dr+∫∞r=d−1√+cg(d−1−−−−√)exp(−(r−d−1−−−−√)2/2)dramp;≤2g(d−1−−−−√)∫∞r=d−1√+cexp(−(r−d−1−−−−√)2/2)dramp;=2g(d−1−−−−√)∫∞y=cexp(−y2/2)dyamp;≤2g(d−1−−−−√)∫∞y=cycexp(−y2/2)dyamp;=2cg(d−1−−−−√)exp(−c2/2)
接下去,计算
b
的下界。在子区间[d−1−−−−√,d−1−−−−√+c2]内,可以计算
f′′(r)≥−2
,所以:
f(r)≥f(d−1−−−−√)−(r−d−1−−−−√)2≥f(d−1−−−−√)−c24
因此,
g(r)≥exp(f(d−1−−−−√))exp(−c24)=g(d−1−−−−√)exp(c24)
,故:
b≤∫d−1√+c2d−1√g(r)dr≤c2g(d−1−−−−√)exp(−c24)
利用
a
的上界以及b的下界,可以得到:
ab≤2cg(d−1−−−−√)e−c2/2c2g(d−1−−−−√)exp(−c24)≤4c2exp(−c24)
所以
aa+b=1b/a+1≤11+c24exp(c24)≤4c2exp(−c24)
。当
c
取较大时,4c2exp(−c24)很小,也就是说高斯分布的概率质量在区间I外占很小很小的比例。根据上面分析我们可以得到如下引理:
引理一 在均值为零协方差为单位阵的
d
维高斯分布中,区间I以外所占的概率质量不超过4c2exp(−c24)。
(三)随机投影定理
再讲随机投影定理之前,我们先来介绍一下如何利用随机投影来降维。对于一个高维的数据
x,y
(假设其维度为
n
),我们可以首先产生一个随机矩阵R∈Rn×k,其中k<n,然后将矩阵
R
左乘这些数据得到
x¯=RTx,y¯=RT
,其中
x¯,y¯∈Rk
,这样我们就得到一个维度更低的数据。而随机投影定理讲的是,当
k
满足何种条件下,我们能保持x,y的距离跟被投影后的距离的比接近与维度的比。(关于随机投影的方法,《The Random Projection Method》这本参考文献可能会全面点)。那么,为什么我们希望他们之间的距离能够得到保持呢?这是因为很多机器学习的算法都是利用点跟点之间的距离信息来执行的,比如K-mean算法,如果降维后的数据之间的距离已经不再保持跟原来数据一致性的话,那么降维后的算法的准确度会大打折扣,这样降维也就没什么意义了。
如果我们将一个
n
维的单位向量投影到k维的子空间中去的话,那么我们会希望投影后的距离平方为
kn
。我们来证明下面这个定理:
定理一 令
v
为n维空间中固定的单位向量,
W
为k维的随机子空间,
w
为将v投影到
W
后的向量,那么对于任意0≤ϵ≤1,有
P(|∥w∥2−kd|≥ϵkd)≤2e−kϵ24
。
证明:如果我们直接从定理那个角度去证明的话,那么这个证明将比较困难(因为我们必须通过选
k
个基去刻画这个随机子空间)。换个角度去想这个问题,如果我们固定住子空间,然后随机的选一个单位向量,然后将这个向量投影到子空间中去,得到投影后向量的分布是否是一样的?令W是随机子空间,
v
为固定的向量,那么投影后的向量为w=WTv,另外,令
U
为一个固定的子空间,z为随机选的一个向量,那么投影后的向量为
z~=UTz
。现在我们来证明对于任意的一个
w
,都存在一个z~与之对应。首先,对于任意产生的一个
W
,都对应着一个变换矩阵D使得
U=DW
,所以得
z~=WTDTz
,而
z
是随机选的,所以我们总可以选到一个z使得
v=DTz
。所以接下去我们都固定住子空间,并且这个子空间为对应的前
k
个基(这个投影就相当与把第k个坐标后面的元素都丢掉),然后通过随机选单位向量来证明。
先大概说一下证明的思路:要证
P(|∥w∥2−kn|≥ϵkn)≤4e−kϵ264
,即证
P(∥z~∥2≤(1−ϵ)kn∪∥z~∥2≥(1+ϵ)kn)≤4e−kϵ264
要证明上式,我们分别证明概率中两个不等式成立的上界,然后在使用联合界得到最终的上界。由于这两个不等式的证明过程相似,接下去我们尽针对其中一个不等式进行证明,另外一种情况类似。
我们要证明的是概率
P[∥z~∥2≤βkn]
,其中
β=1−ϵ
。另外,我们在前面部分说过随机(如果没有特别指出,这里的随机都是指均匀随机)选择一个
n
维单位向量(即在单位球表面随机选点)可以等价于独立随机的选择n个服从高斯分布的变量(这些高斯分布的均值为零,方差为1),然后在对该向量归一化。即假设产生的高斯变量为
x=(x1,⋯,xn)
,则单位随机变量
z=x∥x∥
,那么投影后的变量
z~=(x1∥x∥,⋯,xk∥x∥)
,故:
P[∥z~∥2lt;βkn]amp;=P[x21+x22+⋯+x2kamp;=P[βk(x21+⋯+x2n)−n(x21+⋯+x2k)amp;=P[exp(t(βk(x21+⋯+x2n)−n(x21+⋯+x2k)))amp;=P[∥z~∥2≤βkn∥z∥2]lt;βkd(x21+x22+⋯+x2n)]gt;0]gt;1]
上式对任何
t
都成立。然后利用Markov不等式(形式类似于P[X≥δ]≤E[X]δ2)得:
\begin{align}\mathbb{P}[\|\tilde{z}\|^2<\beta\frac{k}{n}]&\leq\mathbb{E}[exp(t(\beta k(x_1^2+\cdots+x_n^2)-n(x_1^2+\cdots+x_k^2)))]\nonumber\\&=\mathbb{E}[exp(t(\beta k(x_{k+1}^2+\cdots+x_n^2)+(\beta k-n)(x_1^2+\cdots+x_k^2)))]\nonumber\\&=\mathbb{E}[exp(t\beta k(x_{k+1}^2+\cdots+x_n^2))]\mathbb{E}[exp(t(\beta k-n)(x_1^2+\cdots+x_k^2))]\nonumber\\&=[\mathbb{E}[t\beta kx_1^2]]^{n-k}[\mathbb{E}[t(\beta k-n)x_1^2]]^k\label{equ:P}\end{align}
现在我们来求
E[tx2]
,其中
x
服从均值零方差为1的高斯分布:
\begin{align}\mathbb{E}[exp(tx^2)]&=\frac{1}{\sqrt{2\pi}}\int_{-\infty}^{\infty}exp(tx^2)exp(-\frac{x^2}{2})dx\nonumber\\&=\frac{1}{\sqrt{2\pi}}\int_{-\infty}^{\infty}exp(-\frac{1}{2}(1-2t)x^2)dx\nonumber\\&=\frac{1}{\sqrt{2\pi}}\sqrt{2\pi}\frac{1}{\sqrt{1-2t}}\nonumber\\&=\frac{1}{\sqrt{1-2t}}\label{equ:int}\end{align}
将式子
???
代入式子
???
得:
P[∥z~∥2amp;≤(11−2tβk−−−−−−−√)n−k(11−2t(βk−n)−−−−−−−−−−−−√)kamp;≜g(t)
由于上式对任意的
t
都成立,所以我们可以通过求g(t)的最小值来得到一个最紧的上界。这里我就不写出求
g(t)
最小值的计算过程了,直接给出最小值点
t0=fracβ−12β(βk−n)
。将
t0
代入可得如下结论:
P[∥z~∥2amp;≤g(t0)amp;=(11−2βkβ−12β(βk−n))n−k2(11−2(βk−n)β−1β(βk−n))k2amp;=βk2(βk−nk−n)n−k2amp;=βk2(1+k−βkn−k)n−k2amp;≤βk2exp(k−βk2)=exp(k2ln(β)+k2(1−β))amp;=exp(k2(ln(1−ϵ)+ϵ))≤exp(−k4ϵ2)
其中最后一个不等式是因为
ln(1−ϵ)≤−ϵ−ϵ22
对任意0<\epsilon<1成立。
对于另外一种情况,我们也可以用同样的方法证得:
P[∥z~∥2≥(1+ϵ)kn]≤exp(−kϵ24)
。最后,由联合界可使定理得证。
注:书本中关于这个定理的证明有错,这里的证明是根据作者的课堂笔记(http://www.cs.cornell.edu/courses/cs4850/2010sp/Scribe%20Notes%5CLecture05.pdf)整理而得的。
利用上述定理,我们就可以证明随机投影中重要的引理,称为Johnson-Lindenstrauss Lemma.
引理二. Johnson-Lindenstrauss Lemma
对任意的0<\epsilon<1以及任意的整数
m
,若k≥4ln(m)ϵ2,则对任意的包含
m
个维度为n的点的集合P,对P中所有的点进行随机投影到
k
维子空间,则任意两点u,v与投影后的点
f(u),f(v)
之间的距离满足如下不等式成立的概率至少为
1−1m2
:
\begin{equation}(1-\epsilon)\frac{k}{n}|u-v|^2\leq|f(u)-f(v)|^2\leq(1+\epsilon)\frac{k}{n}|u-v|^2\label{equ:JL1}\end{equation}
在证明这个引理之前,我们先来说说这个定理的意义。定理说的是,对于任意一个样本大小为
m
的集合,如果我们通过随机投影将其维度降到一个合适的范围内,那么我们将以较高的概率保证投影后的数据点之间的距离信息变化不大。这样我们在做K-mean之类的算法时,就可以先将高维度的数据利用随机投影进行降维处理,然后在执行算法。
证明:令z=u−v为投影前空间上的点,
z~=f(u)−f(v)
为投影后子空间上的点。则根据定理一可知,投影后向量的长度应该以很高的概率跟原向量长度相差在
ϵ
内,用数学表示即:
\begin{equation}\mathbb{P}[|\|\tilde{z}\|^2-\frac{k}{n}\|z\|^2|\geq \epsilon \frac{k}{n}\|z\|^2]\leq 2exp(-\frac{k\epsilon^2}{4})\label{equ:JL2}\end{equation}
所以,如果
k≥4ln(m)ϵ2
,则
2exp(−kϵ24)≤1m4
。也就是说对于每一对点,式子
???
左边的上界小于
1m4
,那么对于集合P中的所有点对(总共约为
m2
对)采用联合界可得,所有点对中至少有一对满足式子
|∥z~∥2−kn∥z∥2|≥ϵkn∥z∥2
的概率小于
1m2
。换句话说,所有点都不满足式子
|∥z~∥2−kn∥z∥2|≥ϵkn∥z∥2
的概率将大于
1−1m2
。这就证明了式子
???
。