跳转至

Multiway generalized canonical correlation analysis

作者: Arnaud Gloaguen, Cathy Philippe, Vincent Frouin, Giulia Gennari, Ghislaine Dehaene-Lambertz et al.
来源: Biostatistics
主题: 统计计算 / 算法
相关性: 5/10
机构绿灯: Université Paris-Saclay(US News 前 50,免分进入精读)
链接: https://doi.org/10.1093/biostatistics/kxaa010


一、领域脉络与小综述

这个方向是什么

本文所涉方向为多块数据分析(multiblock data analysis),其根本问题是:当研究者收集到来自同一组观测对象的多个数据块(blocks,如不同模态的影像、基因组学、临床指标等),如何联合分析这些数据块以揭示它们之间的共享结构或关联模式?该方向的核心统计工具是广义典型相关分析(Generalized Canonical Correlation Analysis, GCCA)及其正则化版本(RGCCA),它们将经典的典型相关分析(CCA,处理两个数据块)推广到任意多个数据块。当前该方向已较为成熟,有大量方法、算法和应用,但主要处理的是每个数据块为矩阵(样本×变量)的情形。本文的贡献是将RGCCA扩展到至少一个数据块具有张量结构(tensor structure)(即样本×变量1×变量2×…)的情形,提出了多路广义典型相关分析(MGCCA)。

发展脉络(history)

根据论文引言和参考文献,该方向的发展脉络如下:

  1. 奠基工作:从两块的CCA到多块的GCCA

    • Hotelling (1936):提出经典CCA,用于分析两组变量之间的线性相关性。这是所有后续工作的基石。
    • Kettenring (1971):提出了GCCA的几种不同准则(如SUMCOR、SSQCOR、SABSCOR等),将CCA从两个数据块推广到多个数据块。这些准则定义了如何从多个数据块中提取“典型变量”(canonical variates),使得它们之间的某种整体相关性最大化。这是多块CCA的早期形式化。
  2. 主要进展:正则化与统一框架

    • Tenenhaus & Tenenhaus (2011):提出了RGCCA,这是本文的直接前身。RGCCA通过引入一个正则化项(ridge penalty)来解决GCCA在高维数据(变量数>样本数)中的过拟合和奇异性问题。更重要的是,它提供了一个统一框架,将PCA、PLS回归和多种GCCA版本作为特例纳入其中。RGCCA的核心是求解一个带约束的优化问题,并通过一个交替最小二乘(ALS)算法迭代求解。
    • Tenenhaus et al. (2017):进一步扩展了RGCCA,引入了稀疏化(sparsity)和组稀疏化(group sparsity)惩罚,使其在高维生物医学数据(如基因表达数据)中更具可解释性。
  3. 当前Frontier:处理结构化数据块

    • 当前,多块数据分析面临的一个挑战是数据块本身可能具有复杂结构,例如张量结构(如EEG数据:时间×电极×频率)、图结构(如脑连接组)或函数型结构。现有的RGCCA框架无法直接处理这些结构化数据块,通常需要将其“向量化”(vectorize)或“矩阵化”(matricize),这会破坏其内在结构并丢失信息。
    • 本文的位置:本文直接针对这一缺口,将RGCCA扩展到处理张量结构的数据块。它并非提出一个全新的框架,而是对现有成熟框架(RGCCA)的一个算法和模型上的扩展,使其能够处理更复杂的数据形态。

子线索聚类

这些被引文献大致落在以下子线索上:

  • 线索一:多块CCA的准则与算法。这条线索关注如何定义和求解多块数据的典型变量。代表工作包括Kettenring (1971) 的GCCA准则,以及后续的Horst (1961)Carroll (1968) 等。这些工作奠定了多块CCA的理论基础,但主要适用于低维数据。
  • 线索二:正则化与高维多块分析。这条线索关注如何在高维(p >> n)场景下进行多块分析。代表工作包括Tenenhaus & Tenenhaus (2011) 的RGCCA,以及Witten et al. (2009) 的稀疏CCA。这些工作通过引入正则化(ridge, lasso)解决了过拟合和可解释性问题,是当前应用最广的方法。
  • 线索三:张量数据分析。这条线索关注如何分析具有张量结构的数据。代表工作包括Kolda & Bader (2009) 的张量分解综述,以及Cichocki et al. (2015) 的张量网络。这些工作提供了处理张量数据的基本工具(如CP分解、Tucker分解),但通常不涉及多块数据的联合分析。本文是线索二线索三的交叉点。

这个方向在追问的核心问题

  1. 如何定义多块数据之间的“关联”? 不同的GCCA准则(如SUMCOR vs. SSQCOR)对应不同的关联度量,选择哪个准则取决于具体应用背景。
  2. 如何处理高维(p >> n)数据块? 正则化是主流方法,但正则化参数的选择(如ridge penalty的强度)对结果影响很大,且缺乏统一的理论指导。
  3. 如何整合具有不同结构的数据块? 这是当前最活跃的前沿问题。除了张量结构,还有图结构、函数型结构、流形结构等。本文只解决了张量结构这一种情况。
  4. 如何保证算法的收敛性和统计性质? 对于复杂的迭代算法(如ALS),证明其收敛到全局最优解通常是困难的。RGCCA和MGCCA的算法收敛性证明是重要的理论贡献,但其统计性质(如估计量的相合性、渐近分布)仍不明确。

⚠️ 作者的 framing

  • 作者的缺口frame:作者将缺口明确frame为“现有RGCCA无法处理张量结构的数据块”。他们指出,将张量数据向量化会“破坏其内在的多路结构并导致信息丢失”(原文:“vectorizing a tensor block destroys its inherent multiway structure and leads to loss of information”)。因此,本文的MGCCA是“显然的下一步”——在RGCCA框架内,为张量块设计一个专门的分解和估计算法。
  • 被淡化或回避的竞争路线:作者淡化了直接对向量化后的张量块应用RGCCA这一简单基线。他们仅在模拟实验中将其作为对比方法,并声称MGCCA优于它。但作者没有深入讨论,在哪些条件下向量化方法会严重失效,以及MGCCA的优势是否在所有场景下都显著。此外,作者回避了与其他多块张量分解方法(如多路PLS,multiway PLS)的直接比较,这些方法在化学计量学等领域已有应用。
  • 值得研究者去查的问题:引言中没有引用任何关于多路PLS(N-PLS)张量CCA(tensor CCA)的文献。例如,Bro (1996) 的N-PLS是处理多块张量数据的经典方法,但本文未提及。这可能是作者认为这些方法与RGCCA框架不兼容,或者是一个明显的遗漏。研究者应去核实:是否存在与MGCCA目标相似但方法不同的工作?它们的优缺点是什么?

张力

未见明显对立引用。该领域的工作多为渐进式改进,不同方法(如不同GCCA准则)之间是互补而非对立关系。

二、最核心、最简单的例子 / 数学问题

第一步:把符号、模型、可观测数据交代清楚

  • 符号

    • \(J\): 数据块的总数。\(j = 1, \dots, J\)
    • \(n\): 样本量(观测对象的数量)。
    • \(\mathbf{X}_j\): 第\(j\)个数据块。它是一个矩阵(大小为\(n \times p_j\))或一个张量(大小为\(n \times p_{j1} \times p_{j2} \times \dots\))。这是可观测数据
    • \(p_j\): 如果\(\mathbf{X}_j\)是矩阵,\(p_j\)是变量数。如果\(\mathbf{X}_j\)是张量,\(p_{j1}, p_{j2}, \dots\)是各模态的变量数。
    • \(\mathbf{a}_j\): 第\(j\)个数据块的权重向量(weight vector),大小为\(p_j \times 1\)(对于矩阵块)。这是要估计的参数
    • \(\mathbf{y}_j = \mathbf{X}_j \mathbf{a}_j\): 第\(j\)个数据块的典型变量(canonical variate),大小为\(n \times 1\)。它是原始数据块在线性组合下的投影。
    • \(\mathbf{c}\): 全局典型变量(global canonical variate),大小为\(n \times 1\)。它是所有\(\mathbf{y}_j\)的“共识”或“平均”表示。这是另一个要估计的参数
    • \(\tau_j\): 第\(j\)个数据块的正则化参数(ridge penalty),一个非负标量。这是超参数
    • \(g(\cdot)\): 一个链接函数(link function),用于定义不同数据块之间的关联。常见的选项包括恒等函数(用于SUMCOR准则)和绝对值函数(用于SABSCOR准则)。
    • \(L\): 张量块的(rank),即低秩分解中成分的数量。这是超参数
    • \(\mathbf{U}^{(1)}, \mathbf{U}^{(2)}, \dots\): 张量块的低秩分解中的因子矩阵(factor matrices)。例如,对于一个3阶张量块(\(n \times p_1 \times p_2\)),其低秩分解为\(\sum_{l=1}^L \mathbf{y}_l \circ \mathbf{u}_l^{(1)} \circ \mathbf{u}_l^{(2)}\),其中\(\mathbf{y}_l\)是第\(l\)个典型变量(大小为\(n\)),\(\mathbf{u}_l^{(1)}\)\(\mathbf{u}_l^{(2)}\)是因子向量(大小分别为\(p_1\)\(p_2\))。这些是要估计的参数
  • 模型:MGCCA不是一个概率生成模型,而是一个优化问题。它假设存在一组权重\(\mathbf{a}_j\)(或张量块的因子矩阵)和一个全局典型变量\(\mathbf{c}\),使得所有数据块的典型变量\(\mathbf{y}_j\)都与\(\mathbf{c}\)高度相关。具体来说,它最大化一个目标函数,该函数衡量了\(\mathbf{y}_j\)\(\mathbf{c}\)之间的相关性,并受到\(\mathbf{a}_j\)的范数约束(由\(\tau_j\)控制)。

  • 可观测数据:研究者能观测到的是\(J\)个数据块\(\mathbf{X}_1, \dots, \mathbf{X}_J\)。其中一些是矩阵,一些是张量。想要但观测不到的是:数据块之间的潜在共享结构(由\(\mathbf{c}\)表示),以及每个数据块中与该共享结构最相关的线性组合(由\(\mathbf{a}_j\)或因子矩阵表示)。这些是潜在变量,需要通过优化算法从观测数据中估计出来。

第二步:讲最小内核

本文的核心思路可以用一个最简特例来理解:\(J=2\)个数据块,其中一个是矩阵,另一个是3阶张量

  • 设定

    • 数据块1:\(\mathbf{X}_1\),大小为\(n \times p_1\)(矩阵)。
    • 数据块2:\(\boldsymbol{\mathcal{X}}_2\),大小为\(n \times p_{21} \times p_{22}\)(3阶张量)。例如,在EEG研究中,\(n\)是受试者,\(p_{21}\)是时间点,\(p_{22}\)是电极通道。
    • 目标:找到\(\mathbf{X}_1\)的一个线性组合\(\mathbf{y}_1 = \mathbf{X}_1 \mathbf{a}_1\),以及\(\boldsymbol{\mathcal{X}}_2\)的一个“张量线性组合”\(\mathbf{y}_2\),使得\(\mathbf{y}_1\)\(\mathbf{y}_2\)之间的相关性最大。
  • 核心思路

    1. 张量块的“矩阵化”:对于矩阵块,我们直接找权重向量\(\mathbf{a}_1\)。对于张量块,我们不能直接找一个权重向量,因为它是3维的。MGCCA的核心想法是:将张量块\(\boldsymbol{\mathcal{X}}_2\)分解为\(L\)个秩1张量的和(CP分解的截断形式):

      \[\boldsymbol{\mathcal{X}}_2 \approx \sum_{l=1}^L \mathbf{y}_{2,l} \circ \mathbf{u}_{2,l}^{(1)} \circ \mathbf{u}_{2,l}^{(2)}\]
      其中\(\mathbf{y}_{2,l}\)是第\(l\)个“典型变量”(大小为\(n\)),\(\mathbf{u}_{2,l}^{(1)}\)\(\mathbf{u}_{2,l}^{(2)}\)是因子向量(大小分别为\(p_{21}\)\(p_{22}\))。这个分解意味着,张量块的信息被压缩成了\(L\)个“成分”(components),每个成分由一个样本模式(\(\mathbf{y}_{2,l}\))和两个变量模式(\(\mathbf{u}_{2,l}^{(1)}, \mathbf{u}_{2,l}^{(2)}\))的乘积构成。

    2. 目标函数:MGCCA的目标是最大化所有数据块典型变量与一个全局典型变量\(\mathbf{c}\)的加权相关性之和。在这个特例中,目标函数简化为:

      \[\max_{\mathbf{a}_1, \mathbf{y}_{2,l}, \mathbf{u}_{2,l}^{(1)}, \mathbf{u}_{2,l}^{(2)}, \mathbf{c}} \quad g(\text{cov}(\mathbf{X}_1\mathbf{a}_1, \mathbf{c})) + \sum_{l=1}^L g(\text{cov}(\mathbf{y}_{2,l}, \mathbf{c}))\]
      受限于一些范数约束(由\(\tau_1, \tau_2\)控制)。

    3. 算法(交替最小二乘,ALS):这个优化问题没有闭式解,但可以通过ALS迭代求解:

      • 步骤1(固定\(\mathbf{c}\),更新数据块参数):固定全局典型变量\(\mathbf{c}\),对于矩阵块,求解一个带正则化的CCA问题,得到\(\mathbf{a}_1\)。对于张量块,固定\(\mathbf{c}\),求解一个带正则化的张量分解问题,得到\(\mathbf{y}_{2,l}, \mathbf{u}_{2,l}^{(1)}, \mathbf{u}_{2,l}^{(2)}\)。这一步可以分解为多个更简单的子问题(例如,固定\(\mathbf{u}_{2,l}^{(1)}\)\(\mathbf{u}_{2,l}^{(2)}\),更新\(\mathbf{y}_{2,l}\)是一个简单的回归问题)。
      • 步骤2(固定数据块参数,更新\(\mathbf{c}\):固定所有数据块的典型变量\(\mathbf{y}_j\)(对于张量块,就是\(\mathbf{y}_{2,l}\)),更新全局典型变量\(\mathbf{c}\)。这一步通常是一个简单的加权平均或SVD问题。
      • 迭代:重复步骤1和2,直到收敛。
  • 为什么这个特例抓住了核心

    • 张量块的分解:这是MGCCA区别于RGCCA的核心。它用CP分解来参数化张量块,而不是将其向量化。
    • ALS算法:这是RGCCA和MGCCA共用的核心算法框架。MGCCA的贡献在于,将RGCCA中针对矩阵块的ALS更新步骤,替换为针对张量块的ALS更新步骤。
    • 正则化:在每一步更新中,都引入了ridge正则化(由\(\tau_j\)控制),以处理高维问题。

因此,即使不读全文,读者也能抓住MGCCA的核心:它通过将张量块进行低秩CP分解,并将分解后的成分纳入RGCCA的交替最小二乘优化框架,从而实现了对多块数据中张量结构的直接处理

三、这篇论文做了什么

三句话

  1. 研究了什么问题:将正则化广义典型相关分析(RGCCA)扩展到至少一个数据块具有张量结构的情形,提出了多路广义典型相关分析(MGCCA)。
  2. 核心工具/方法:通过将张量块进行低秩CP分解(CANDECOMP/PARAFAC decomposition),并将分解后的成分(典型变量和因子向量)作为参数,纳入RGCCA的交替最小二乘(ALS)优化框架中进行迭代估计。
  3. 主要结论:提出了MGCCA的算法,证明了该算法的收敛性(目标函数单调递增且有上界),讨论了高阶成分的计算方法,并通过模拟和真实EEG数据实验展示了其有效性。

关键设定与假设

  • 设定:有\(J\)个数据块\(\mathbf{X}_1, \dots, \mathbf{X}_J\),其中至少有一个是张量。每个数据块都与一个链接函数\(g(\cdot)\)和一个正则化参数\(\tau_j\)相关联。目标是找到一个全局典型变量\(\mathbf{c}\)和每个数据块的权重(对于矩阵块是\(\mathbf{a}_j\),对于张量块是CP分解的因子),使得一个整体目标函数最大化。
  • 假设

    1. 数据块中心化:所有数据块在分析前都经过中心化处理(均值为0)。这是CCA类方法的常见假设。
    2. 张量块的低秩结构:假设张量块可以近似为一个秩为\(L\)的CP分解\(L\)是用户指定的超参数。这个假设是方法的核心,也是其局限性——如果张量块的真实结构不能用低秩CP分解很好地近似,MGCCA的效果可能会下降。
    3. 正则化:通过ridge惩罚(\(\tau_j\))来控制权重向量的范数,避免过拟合。这与RGCCA的假设一致。
    4. 算法收敛性假设:ALS算法的收敛性证明依赖于目标函数在每一步更新中都是单调递增的,这要求每个子问题(如更新\(\mathbf{a}_j\)或因子向量)都能找到全局最优解。对于带ridge惩罚的线性问题,这通常是成立的。
  • 与已有文献的对比:相比RGCCA,MGCCA的主要放宽是允许数据块具有张量结构。相比传统的张量分解方法(如CP分解),MGCCA的强化是将其嵌入到一个多块联合分析的框架中,使得不同数据块之间可以“相互借用信息”来指导分解。

主要结果

本文的主要结果是算法收敛性证明,而非统计推断定理。

  • 结果1:MGCCA算法。提出了一个完整的ALS算法,用于求解带张量块的RGCCA问题。算法细节在论文的Section 2.2和2.3中给出。核心步骤包括:

    1. 初始化:随机初始化全局典型变量\(\mathbf{c}\)和张量块的因子矩阵。
    2. 更新数据块参数:对于每个数据块\(j\),固定\(\mathbf{c}\),更新其权重。对于矩阵块,这是一个带ridge惩罚的CCA问题,有闭式解。对于张量块,这是一个带ridge惩罚的CP分解问题,通过交替更新每个因子矩阵(固定其他因子)来求解。
    3. 更新全局典型变量:固定所有数据块的典型变量,更新\(\mathbf{c}\)。这通常是一个SVD问题。
    4. 收敛检查:检查目标函数的变化是否小于一个阈值。如果未收敛,返回步骤2。
  • 结果2:收敛性证明。论文证明了MGCCA算法是收敛的。具体来说,它证明了目标函数在每一步更新中都是单调非递减的,并且由于目标函数有上界(由正则化项保证),因此算法必然收敛到一个驻点(stationary point)。这个证明是RGCCA收敛性证明的直接推广,关键在于验证张量块的ALS更新步骤也能保证目标函数不下降。

  • 结果3:高阶成分的计算。论文讨论了如何计算“高阶成分”(higher-level components)。在RGCCA中,提取第一组典型变量后,可以通过“缩减法”(deflation)来提取后续成分。MGCCA也采用了类似的策略,但需要针对张量块设计相应的缩减法。论文提出了两种方法:全局缩减法(在全局典型变量\(\mathbf{c}\)上做减法)和局部缩减法(在每个数据块的典型变量上做减法)。这是对RGCCA中缩减法的一个扩展。

证明路线与技术技巧

  • 整体路线:收敛性证明的路线是标准的ALS收敛性证明框架:

    1. 定义目标函数\(F(\mathbf{c}, \{\mathbf{a}_j\}, \{\text{因子}\})\)
    2. 证明更新\(\mathbf{c}\)\(F\)不下降:当固定所有数据块参数时,更新\(\mathbf{c}\)是一个凸优化问题,其全局最优解可以显式求得,因此\(F\)必然不下降。
    3. 证明更新每个数据块参数时\(F\)不下降:当固定\(\mathbf{c}\)和其他数据块参数时,更新第\(j\)个数据块的参数也是一个凸优化问题(对于矩阵块是带ridge的CCA,对于张量块是带ridge的CP分解的ALS步骤)。关键在于证明,对于张量块,其ALS更新步骤(交替更新每个因子矩阵)也能保证\(F\)不下降。这依赖于每个子问题(固定其他因子,更新一个因子)都是一个带ridge惩罚的线性最小二乘问题,其全局最优解可以显式求得。
    4. 结合:由于每一步都保证\(F\)不下降,且\(F\)有上界,因此算法收敛。
  • 关键跳跃点:证明中最关键的一步是证明张量块ALS更新步骤的单调性。对于CP分解,标准的ALS算法并不保证收敛到全局最优,甚至不保证目标函数单调递减(虽然实践中通常如此)。作者通过引入ridge正则化,使得每个子问题都变成了一个严格凸的优化问题,从而保证了每个子问题的全局最优解是唯一的,并且整个ALS过程是单调的。这是本文的一个技术亮点。

  • 技术技巧点名

    • 交替最小二乘(ALS):核心算法框架。
    • CP分解:用于参数化张量块。
    • Ridge正则化:用于保证子问题的凸性和算法的收敛性。
    • 缩减法(Deflation):用于计算高阶成分。

真实例子与应用

  • 数据/场景:论文使用了一个婴儿认知脑电图(EEG)研究的数据。该研究记录了婴儿在听到不同语音刺激时的脑电活动。数据被组织成三个数据块:

    • 块1(行为数据):一个\(n \times p_1\)的矩阵,包含婴儿的行为评分。
    • 块2(EEG数据):一个\(n \times T \times C\)3阶张量,其中\(T\)是时间点,\(C\)是电极通道。这是核心的张量块。
    • 块3(刺激特征):一个\(n \times p_3\)的矩阵,包含语音刺激的声学特征。
  • 如何应用:研究者将MGCCA应用于这三个数据块,目标是找出与婴儿行为反应和刺激特征相关的、在时间和电极上具有特定模式的EEG成分。他们设置了不同的\(L\)(张量块秩)和\(\tau_j\)(正则化参数),并比较了不同设置下的结果。

  • 结果

    • MGCCA成功提取了与行为数据和刺激特征相关的EEG成分。这些成分在时间上和电极分布上具有明确的生理学解释(例如,与语音处理相关的特定脑区激活模式)。
    • 与将EEG张量向量化后应用RGCCA的基线方法相比,MGCCA提取的成分更具可解释性,因为其因子矩阵(时间模式和电极模式)可以直接解释,而向量化方法得到的权重向量难以解释。
    • 论文通过可视化展示了MGCCA提取的EEG成分的时间过程和头皮拓扑图,直观地展示了其优势。
  • 这个例子想说明什么:这个例子旨在验证MGCCA的有效性,并展示其相对于向量化方法的优势。它说明,通过保留张量结构,MGCCA能够发现更符合生理学直觉的、可解释的潜在模式,这是向量化方法难以做到的。

🔎 结论是否比证明窄

  • 。论文的算法收敛性证明是严格给出的,但统计性质(如估计量的相合性、渐近分布、最优性)完全没有涉及。论文的结论仅限于“算法可行且收敛”,并没有声称MGCCA在统计上优于其他方法(除了在模拟和这个具体例子中)。作者在讨论部分也明确指出了这一点,称“MGCCA的统计性质(如相合性和渐近分布)是未来工作的重要方向”(原文:“The statistical properties of MGCCA, such as consistency and asymptotic distribution, are important directions for future work”)。
  • 此外,论文对高阶成分的计算方法(缩减法)的讨论较为初步,没有提供理论保证(如正交性、方差解释比例等)。作者只是提出了两种可行的方案,并通过模拟实验进行了简单比较,但没有深入分析其优劣。

四、开放问题

  1. 统计推断与渐近理论:MGCCA估计量的相合性、收敛速率和渐近分布是什么?能否构建假设检验或置信区间?这扎根于论文的“Discussion”部分,作者明确将其列为未来工作。
  2. \(L\)和正则化参数\(\tau_j\)的选择:如何从数据中自适应地选择张量块的秩\(L\)和每个数据块的正则化参数\(\tau_j\)?目前这些是用户指定的超参数,对结果影响很大。这扎根于论文的模拟实验部分,作者通过网格搜索来选择参数,但未提出数据驱动的方法。
  3. 其他张量分解模型:MGCCA目前只使用了CP分解。能否将其扩展到其他更灵活的张量分解模型,如Tucker分解张量列车分解(tensor train decomposition)?这扎根于论文的“Discussion”部分,作者提到了这一可能性。
  4. 与其他多块张量方法的比较:本文未与多路PLS(N-PLS)张量CCA等方法进行系统比较。这些方法的目标与MGCCA相似,但算法和假设不同。一个系统性的比较研究(包括模拟和真实数据)将有助于阐明MGCCA的独特优势和适用场景。这扎根于论文引言中未引用相关文献这一事实,是一个值得研究者去核实的潜在gap。

Maintained by 陈星宇 · Homepage · Source on GitHub

评论