MVU

MVU

MVU算法核心思想

在局部等距约束条件下通过最大化非近邻点间的距离,在低维空间中展开高维数据。
数据集的局部等距要求每个数据点和它的近邻点在平移、旋转等作用下它们之间的角度和距离保持不变。
设原样本 X=[x1,x2,,xn]RD×n ,样本在低维空间的表示为 Y=[y1,y2,,yn]Rd×n
xj xk xi 的两个近邻点,局部等距要求满足 (yiyk)(yiyj)=(xixk)(xixj)
因为在三角形中当确定了三角形的两边及两边所夹的角,三角形就可保持不变。同时当确定三角形三边时三角形也保持不变。
所以上述约束等价于 ||yiyj||2=||xixj||2
因此问题转化为:

maxs.t.i=1nj=1n||yiyj||2i=1nyi=0||yiyj||2=||xixj||2xjxi

这是一个在二次等式约束条件下最大化平方函数的非凸优化问题,为了获得最优解,需要定义内积矩阵 Kij=yiyj ,该矩阵满足对称半正定约束 K0
同时 0=ni=1yi = ||ni=1yi||2 = ni=1nj=1yiyj = ni=1nj=1Kij
||yiyj||2=Kii2Kij+Kjj=||xixj||2
因此,MVU的优化问题转化为一个半定规划(SDP)问题
maxs.t.trace(K)K0i=1nj=1nKij=0Kii2Kij+Kjj=||xixj||2xjxi

求解该SDP问题可得到半正定矩阵 K 。对K进行特征值分解,得到 K 的最大的d个特征值对应的特征向量 v1,v2,,vd ,则 [y1,y2,,yn]=[v1,v2,,vd]T
这里说一下SDP的标准形式:
C,X n×n 对称矩阵,定义它们的内积 CX=ni=1nj=1CijXij=tr(CTX)
Ai n×n 对称矩阵, bi 为一个实数, i=1,2,...,m
下面的最优化问题即为SDP问题

minimizes.t.CXAiX=bii=1,2,...,mX0

在上述MVU问题中,令 C=I X=K m 为近邻点对数,设i为第 i 对对应点,表示对应点对xjxk Ai 为0,1矩阵,只有 Ajji=1,Akki=1,Ajki=1,Akji=1 其它元素都为0, bi 表示第 i 对对应点在原空间的距离,即bi=||xjxk||2.则MVU问题可用解决SDP问题的方法得到最优解 K .

MVU算法步骤

1.计算原样本空间中每个点到其它点的距离构造距离矩阵,根据k近邻法或ϵ邻域法选出每个点的近邻。
2.构造约束矩阵 Ai ,根据距离矩阵设定 bi
3.用SDPA或CSDP或SDPT3或SeDuMi或DSDP或SDPLR解决算法中的SDP问题,求出 K
4.对K进行特征值分解

有区别方差嵌入DVE

DVE算法首先构造数据集的近邻图和非近邻图以表征它的局部和全局结构信息,利用近邻点间的距离和保持不变的约束以保证数据集的局部结构不变,通过最大化非近邻点在低维空间中的距离从而在全局上展开嵌入流形。
对于给定的原样本空间 X=[x1,x2,,xn]RD×n ,首先构造它的近邻图 G 和非近邻图G.
对于近邻图 G ,当xi xj 是近邻时, xi xj 之间建立一条边,并赋予权重 Wij .
Wij={1,0,if xixjotherwise
对于非近邻图 G ,当 xi xj 不是近邻时, xi xj 之间建立一条边,并赋予权重 Wij .
Wij={1,0,if xixjotherwise
重写MVU的目标函数 maxni=1nj=1||yiyj||2 = ni=1nj=1||yiyj||2Wij + ni=1nj=1||yiyj||2Wij
将原来的每对近邻点间的距离相等约束松弛为距离和相等约束,即 ni=1nj=1||yiyj||2Wij = ni=1nj=1||xixj||2Wij
这里由于对近邻点间距离和相等的约束实际是保持流形的局部结构。 Wij 反映的是近邻点间的相似度,这里 Wij 常用热核函数计算, Wij={exp(||xixj||2σ2),0,if xixjotherwise .
由于距离和 ni=1nj=1||xixj||2Wij 是一定的,设为 c ,则ni=1nj=1||yiyj||2Wij=c,故目标函数即为 maxni=1nj=1||yiyj||2Wij
原问题转化为

maxs.t.i=1nj=1n||yiyj||2Wij=2tr(YLYT)i=1nj=1n||yiyj||2Wij=c2tr(YLYT)=c

利用拉格朗日乘数法解决上述问题:
L(Y,λ)=tr(YLYT)λ((tr(YLYT)c)
LY=YLT+YLλ(YLT+YL) =0即 YL=λYL 两边取转置得 LYT=λLYT .(注意到 L L都是对称阵)
DVE的优化问题可转化为广义特征值分解问题 LYT=λLYT
选取其前 d 个最大特征值对应的特征向量v1,v2,...,vd,则 YT=[v1,v2,...,vd]

LDVE

DVE相比于MVU减小了计算量但非邻域图 G 的拉普拉斯矩阵 L 是稠密矩阵,对齐进行特征值分解,所需的计算量和存储空间都比较大,只能处理小样本,对于海量数据无能为力。基于基准点的有区别方差嵌入(LDVE)致力于提高对海量高维数据的处理能力。
对于给定的原样本空间 X=[x1,x2,,xn]RD×n ,随机选取 p 个基准点,设这p个基准点组成的集合为 X1 ,剩下的样本点组成的集合为 X2 .将随机选取的 p 个基准点排在数据集X的前面,剩下的排在后面,记 X=[X1,X2] .
构造邻域图G,当 xi xj 是近邻时, xi xj 之间建立一条边,并赋予权重 Wij . Wij={exp(||xixj||2σ2),0,if xixjotherwise .
构造非邻域图 G ,当 xi xj 不是近邻且 xi xj 在所选的基准点点集中时, xi xj 之间建立一条边,并赋予权重 Wij . Wij=1
优化问题可转化为广义特征值分解问题 LYT=λLYT
其中 L 相对之前的 L ,有较少的非0元。
选取其前 d 个最大特征值对应的特征向量v1,v2,...,vd,则 YT=[v1,v2,...,vd]

LMVU

在给定的样本空间 X=[x1,x2,,xn]RD×n 中随机选取 p 个基准点,d<p<D,设这 p 个基准点组成的集合为X1,剩下的样本点组成的集合为 X2 .将随机选取的 p 个基准点排在数据集X的前面,剩下的排在后面,记 X=[X1,X2] . X1 的低维表示为 Y1 X2 的低维表示为 Y2 ,设数据集 X1 到数据集 X 的投影矩阵为Q Q n×p矩阵,则可通过 Y=Y1QT 计算 Y .则核矩阵K=YTY=QYT1Y1QT.

线性变换矩阵 Q 的计算

QT=[Q1,Q2],则 Y=[Y1,Y2]=Y1QT=Y1[Q1,Q2]=[Y1Q1,Y1Q2] ,所以 Q1=E ,其中 E p×p的单位矩阵,下面主要计算 Q2 Q2 需要借助 X2 计算。
对任意 xiX2 ,设 xi 的近邻点组成的集合为 N(xi) ,则 xi 可用其近邻点近似表示为 xi=xjN(xi)xjwij=nj=1xjwij ,其中当 xjN(xi) wij=0 .
则近邻点间的权值矩阵 W=(wij)(np)×n 可通过类似于LLE的方式获得

W=argmini=p+1n||xij=1nxjwij||2s.t.j=1nwij=1

由于 xi=nj=1xjwij=pj=1xjwij+nj=p+1xjwij

W=[W(np)×P,W(np)×(np)]=[W1,W2]

X2=X1WT1+X2WT2

Y2=Y1WT1+Y2WT2

Y2(EWT2)=Y1WT1 ,其中 E (np)×(np)矩阵

Y2=Y1WT1(EWT2)1

注意到 Y2=Y1Q2

Q2=WT1(EWT2)1

其中 (EWT2)1 可通过 (EWT2)1=(EWT2)T((EWT2)(EWT2)T)1 计算

计算 Y1

在基准点集上借助SDP求解 Y1

K=YTY=QYT1Y1QT=QLQT ,其中 L=YT1Y1

maxs.t.trace(K)L0i=1nj=1nKij=0Kkk2Kkj+Kjj=||xkxj||2xi,xjN(xi),1ip

L 进行特征值分解,选取前d个最大特征值对应的特征向量即可得 Y1 ,
Y=Y1QT

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值