什么是 中心核对齐(CKA)?

中心核对齐(CKA)是一种比较两个中心化 Gram Matrix 的归一化相似度指标,常用于衡量不同神经网络层或模型如何表示同一组配对样本。

快速了解

全称Centered Kernel Alignment
创建时间Kornblith 等人于 2019 年将其用于神经网络表征比较
规范文档官方规范

工作原理

比较配对样本的几何关系

对已中心化的 Activation X 与 Y,Linear CKA 可写为 ||Y^T X||_F^2 / (||X^T X||_F ||Y^T Y||_F)。等价 Gram 形式用 HSIC(K,L) 除以 HSIC(K,K) 与 HSIC(L,L) 的几何平均。

原始表征相似度研究利用这一结构比较宽度不同的网络层。矩阵行必须表示顺序一致的同一批样本;意外打乱、重复记录或预处理错配后的高分没有有效的 Pairwise Interpretation。

准确说明不变性

Linear CKA 对 Representation 的 Orthogonal Transformation 和 Isotropic Scaling 不变,但对任意 Invertible Linear Transformation 并不不变。这种更窄的不变性是有意设计,因为当 Feature Dimension 超过 Sample Count 时,完全线性可逆不变的指标会失去区分力。

Kernel CKA 能捕捉非线性相似关系,同时引入 Kernel 与 Bandwidth 依赖。Centering Convention、Activation Normalization、Token 或 Spatial Aggregation,以及行表示 Sample 还是 Feature,都必须在比较前固定。

把分数作为组合诊断之一

CKA 可揭示跨层块状结构、不同随机初始化之间的对应关系,或 Fine-tuning 期间的表示变化。它无法单独识别因果特征、保证预测一致,也不能判断哪个 Representation 更优。

CKA 可靠性研究展示了它对 Outlier 和某些保持线性可分性的 Transformation 仍可能敏感。应跨样本子集报告不确定性,检查高影响样本,并结合任务 Probe 与行为测试;Mini-batch 场景要使用专门 Estimator,而不是直接平均任意 Batch Score。

主要特点

  • 比较两个表征在配对样本上的中心化相似矩阵
  • 通过归一化 HSIC 去除整体等比例缩放影响
  • 同时支持 Linear 与 Kernel Variant
  • 允许不同 Feature Width,但要求样本身份和顺序一致
  • 对正交变换不变,却不对任意可逆线性变换不变
  • 可能受样本构成、Outlier、Kernel 与 Mini-batch Estimation 影响

常见用途

  1. 比较独立训练网络中的对应层
  2. 跟踪 Fine-tuning 或 Continual Learning 中的表示变化
  3. 诊断深层模型内部的冗余或阶段结构
  4. 在知识蒸馏中比较 Teacher 与 Student Representation
  5. 在保留任务级验证的前提下选择 Probe Layer

示例

loading...
Loading code...

常见问题

CKA 高分代表什么?

它表示在所选 Kernel 与 Estimator 下,两个 Representation 对评测样本诱导出相近的中心化 Pairwise Geometry。它不能证明神经元、预测、概念、因果机制或泛化能力相同。

CKA 能比较宽度不同的网络层吗?

可以。CKA 比较 Sample-by-sample Gram Matrix,因此 Feature Count 可以不同;样本数量、身份、顺序、预处理与权重必须一致,Layer Aggregation 也必须采用相同定义。

哪些 Transformation 不会改变 Linear CKA?

Linear CKA 对 Orthogonal Basis Change 与 Isotropic Scaling 不变;对任意 Invertible Linear Transform、Nonlinear Transform、Anisotropic Rescaling 或评测样本分布变化通常并不不变。

CKA 与 HSIC 有什么关系?

CKA 用两个 Centered Gram Matrix 的 Self-HSIC 对二者之间的 HSIC 进行归一化。HSIC 原本是依赖度量和检验统计量,CKA 则把归一化结果用作 Representation-similarity Index。

CKA 分数可以直接跨 Mini-batch 平均吗?

通常不能。Centering 与 Normalization 都是非线性操作,Batch CKA 的简单平均不等于完整数据集 CKA。应使用经过验证的 Streaming 或 Unbiased Mini-batch Estimator,并保持样本构成稳定和报告不确定性。

相关术语