衡量子空间相似度和距离的主角 principal angles

一 描述principal angles的两篇好文献

1 Principal Angles Between Subspaces andTheir Tangents
2 PRINCIPAL ANGLES BETWEEN SUBSPACES IN AN A-BASED SCALAR PRODUCT: ALGORITHMS AND PERTURBATION ESTIMATES

二 对于principal angles的一种形象化理解

   假设 X X X是一个 n ∗ p n*p np矩阵,并且列于列之间是单位正交的,可以将其理解为具有 p p p n n n维向量的矩阵;假设 Y Y Y是一个 n ∗ q n*q nq矩阵,并且列于列之间是单位正交的,可以将其理解为具有 q q q n n n维向量的矩阵,衡量 X X X Y Y Y之间的主角(principal angles),被定义为:
Θ ( X , Y ) = [ θ 1 , . . . , θ m ] \Theta(X,Y)=[\theta_{1},...,\theta_{m}] Θ(X,Y)=[θ1,...,θm]
其中 m = m i n ( p , q ) m=min(p,q) m=min(p,q), [ θ 1 , . . . , θ m ] [\theta_{1},...,\theta_{m}] [θ1,...,θm]有如下定义:
s k = c o s ( θ k ) = max ⁡ x ∈ X max ⁡ y ∈ Y ∣ x H y ∣ = ∣ x k H y k ∣ s_{k}=cos(\theta_{k})=\max_{x\in X}\max_{y\in Y}\left|x^Hy\right|=\left|x_{k}^Hy_{k}\right| sk=cos(θk)=xXmaxyYmaxxHy=xkHyk
   上述公式中的 x k x_{k} xk y k y_{k} yk分别是 X X X Y Y Y中的列向量。
   上面是对主角的定义,要注意的是principal angles定义的不是一个角,而是一系列的角,角的数量是由两个域中含有向量较少的那个域的向量数量确定的。通常是将角按照余弦值的递减序列进行排序的。其中余弦最大的角的定义可以理解为:将两个域中的列向量分别进行余弦值计算,使得值取到最大值的 x k x_{k} xk y k y_{k} yk是最大的主角对应的principal vector。其他的principal angles以此类推。
   这一系列的principal angles可以形象地想象成两个域间的列向量在彼此进行一种匹配,距离最小的向量之间达成一个组合。就像找对象一样,最有夫妻相的两个人组成一个家庭。然后按照相似的程度进行排序,形成一个有序的向量。如果两个域中的相匹配的向量之间都能构成极具夫妻相的模范夫妻,那么我们可以称这两个域之间的差异很小,或者角度小,或者距离小。如果这个principal angles向量中的各个角都很大,说明两个域中的列向量之间的距离或者相似度都很低。

三计算两个域之间的principal angles的方法

1 根据定义计算两个域之间的principal angles

    对于列向量是单位正交向量的两个域,或者说两个矩阵,就像定义的那样,进行一一匹配,然后分别找到principal angles和与之相对应的principal vector。

2 利用奇异值分解

    对于列向量是单位正交向量的两个域 X X X Y Y Y,这两 个矩阵分别是 n ∗ p n*p np n ∗ q n*q nq的,这里的 n n n是指向量的维度, p p p q q q代表的是样本的数量。
我们首先计算出矩阵 T T T:
T = X H Y T=X^HY T=XHY
然后对矩阵 T T T进行奇异值分解(SVD)
T = U Σ V H T=U\Sigma V^H T=UΣVH
Σ \Sigma Σ是一个 p ∗ q p*q pq的对角矩阵,每个值代表两个域之间的principal angles的余弦值,与之对应的principal vector分别是 X U XU XU Y V YV YV的前 m m m个列向量,其中 m = min ⁡ ( p , q ) m=\min(p,q) m=min(p,q)

3 其他的求解principal angles方法

上述提到的两个论文中还有其他求解方法,用到了正交补等概念,想要进一步了解的可以到上面的两个论文中查找对应的方法。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值