机器学习领域中所谓的降维就是指采用某种映射方法,将原高维空间中的数据点映射到低维度的空间中。降维的原因,在周志华《机器学习》中用最近邻分类器给了一个解释——数据集需要满足密采样条件,以及高维计算下会有很多麻烦,甚至在尾数特别高的时候连计算内积都变的复杂,这种计算阻碍称为“维数灾难”。其他的原因还有过滤噪音等。
假设样本数m( X∈Rd∗m X∈Rd∗m),样本间的距离矩阵 D∈Rm∗m D∈Rm∗m,其第i行第j列的元素为 distij distij是 xi xi到 xj xj的距离。
这里降维的目标是得到样本在 d′≤d d′≤d的 d′ d′维空间里的表示: Z∈Rd′∗m Z∈Rd′∗m且任意两个样本之间的欧氏距离不变。即( ||zi−zj||=distij ||zi−zj||=distij)
令内积矩阵 B=ZTZ∈Rm∗m B=ZTZ∈Rm∗m, bij=zTizj bij=ziTzj有
为便于计算,令Z被中心化,即质心在原点,则 ∑mi=1zi=0 ∑i=1mzi=0,则:
令
我有几张阿里云幸运券分享给你,用券购买或者升级阿里云相应产品会有特惠惊喜哦!把想要买的产品的幸运券都领走吧!快下手,马上就要抢光了。
则可以由上式得:
由此就可以在保持样本距离矩阵不变并求出内积矩阵B。
接下来求矩阵Z:
可以把B特征值分解为 B=VΛVT,Λ=diag(λ1,λ2,...,λd) B=VΛVT,Λ=diag(λ1,λ2,...,λd)(这是写到现在为止学了线代唯一还记得的:))
原文链接