典型相关性分析(Canonical Correlation Analysis, CCA)是经典的挖掘视图相关 性的多视图子空间学习方法[38],主要是计算两视图
特征的最大线性投影,使得在投影空间中,两视图特征的相关性最大
。
但 CCA 存在两个局限:
- 第一,只适用于两视图学习;
- 第二,只能进行线性运算,无法满足两视图特征的非线性关系运算。
基本概念
典型相关性分析(Canonical Correlation Analysis, CCA)是一种统计方法,用于量化和理解两组变量之间的线性关系
。
CCA旨在找到两组
变量内的线性组合,使得这些组合之间的相关性最大化
。这种方法特别适用于探索不同数据源或测量方式之间的潜在联系。
CCA的基本目标是在两组随机变量
X
\mathbf{X}
X 和
Y
\mathbf{Y}
Y 之间寻找一对线性组合
,使得它们之间的相关性最大化
。这里,
X
\mathbf{X}
X 和
Y
\mathbf{Y}
Y 可以是任意两个数据集
,例如,一个人的身高和体重数据集和这个人跑步和跳远的能力数据集。
CCA的主要公式和解释如下:
-
给定
两组随机变量向量
X \mathbf{X} X 和 Y \mathbf{Y} Y,其中 X ∈ R p \mathbf{X}\in\mathbb{R}^{p} X∈Rp 和 Y ∈ R q \mathbf{Y}\in\mathbb{R}^{q} Y∈Rq -
CCA试图找到向量 a ∈ R p \mathbf{a}\in\mathbb{R}^{p} a∈Rp 和 b ∈ R q \mathbf{b}\in\mathbb{R}^{q} b∈Rq,
使得新的变量
U = a ′ X U=\mathbf{a}'\mathbf{X} U=a′X 和 V = b ′ Y V=\mathbf{b}'\mathbf{Y} V=b′Y 之间的相关性最大
。 -
这里的 a ′ \mathbf{a}' a′ 和 b ′ \mathbf{b}' b′ 分别表示向量 a \mathbf{a} a 和 b \mathbf{b} b 的
转置。
CCA的优化目标是:
ρ = corr ( U , V ) = Cov ( U , V ) Var ( U ) Var ( V ) \rho = \text{corr}(U, V) = \frac{\text{Cov}(U, V)}{\sqrt{\text{Var}(U)\text{Var}(V)}} ρ=corr(U,V)=Var(U)Var(V)Cov(U,V)
其中,
-
ρ
\rho
ρ 是
典型相关系数
,表示 U U U 和 V V V 之间的相关性。
-
Cov
(
U
,
V
)
\text{Cov}(U, V)
Cov(U,V) 是
U
U
U 和
V
V
V 的
协方差。
-
Var
(
U
)
\text{Var}(U)
Var(U) 和
Var
(
V
)
\text{Var}(V)
Var(V) 分别是
U
U
U 和
V
V
V的
方差。
为了简化这个目标,CCA通过求解广义特征值
问题来实现。具体来说,CCA试图最大化如下表达式:
max a , b a ′ Σ X Y b a ′ Σ X X a ⋅ b ′ Σ Y Y b \max_{\mathbf{a}, \mathbf{b}} \frac{\mathbf{a}'\Sigma_{XY}\mathbf{b}}{\sqrt{\mathbf{a}'\Sigma_{XX}\mathbf{a} \cdot \mathbf{b}'\Sigma_{YY}\mathbf{b}}} a,bmaxa′ΣXXa⋅b′ΣYYba′ΣXYb
其中,
-
Σ
X
X
\Sigma_{XX}
ΣXX 是
X
\mathbf{X}
X 的
协方差矩阵。
-
Σ
Y
Y
\Sigma_{YY}
ΣYY 是
Y
\mathbf{Y}
Y 的
协方差矩阵。
-
Σ
X
Y
\Sigma_{XY}
ΣXY 和
Σ
Y
X
\Sigma_{YX}
ΣYX 分别是
X
\mathbf{X}
X 和
Y
\mathbf{Y}
Y 之间的
交叉协方差矩阵。
然而,为了简化计算,通常CCA通过求解以下广义特征值问题来实现:
Σ
X
Y
b
=
λ
Σ
Y
Y
b
\Sigma_{XY}\mathbf{b} = \lambda\Sigma_{YY}\mathbf{b}
ΣXYb=λΣYYb
Σ
Y
X
a
=
λ
Σ
X
X
a
\Sigma_{YX}\mathbf{a} = \lambda\Sigma_{XX}\mathbf{a}
ΣYXa=λΣXXa
其中,
- λ \lambda λ 是特征值。
-
a
\mathbf{a}
a 和
b
\mathbf{b}
b 分别是与
最大特征值对应的特征向量
,这些向量给出最优的线性组合 U U U 和 V V V。
CCA的一个关键假设是协方差矩阵
Σ
Y
Y
\Sigma_{YY}
ΣYY 和
Σ
X
X
\Sigma_{XX}
ΣXX 是非奇异的
。如果矩阵奇异,需要额外的技术来处理这个问题。
在多视图学习中,CCA被用来寻找多个视图之间的线性投影,使得投影后的数据在新的低维空间中保留了视图间的相关性。这种技术在跨模态检索、多视图特征融合等领域有广泛的应用。