自学内容网 自学内容网

衡量神经网络表征相似度

1.中心核对齐技术(CKA)

    CKA通过计算两个表征的Gram矩阵(即计算向量两两之间的内积组成的矩阵)来实现。这种方法可以捕捉到特征在多个神经元中的分布情况,并且考虑到了特征的顺序和scaling问题。

实现步骤:

  1. 选定两个要对比的表征层,例如一个模型的第2层和另一个模型的第10层。
  2. 取一些样本,输入两个模型,从对应层获取两份表征。
  3. 分别对这两份表征计算Gram矩阵
  4. 计算两个Gram矩阵的HSIC,这是一种用于计算两个分布统计学独立性的指标。
  5. 最后对HSIC结果进行归一化处理,得到CKA值。

CKA的优点在于:

  • 它对矩阵的正交变换结果不变,这意味着即使模型因为随机种子不同导致表征顺序不同,CKA也能正确比较表征的相似度。
  • 归一化后的CKA对不同Scaling也能进行对比,这使得CKA在比较不同模型或不同层的表征时更为鲁棒。

CKA在多个领域都有应用,包括但不限于模型压缩、知识蒸馏和神经网络的解释性分析。通过CKA,研究人员可以定量理解不同神经网络之间的表示相似性,这对于模型优化和理解神经网络的工作原理都具有重要意义。

2.Hilbert-Schmidt independence criterion(HSIC)

HSIC是一种统计量,用于衡量两个随机变量之间的独立性。它是核方法在独立性测试中的应用,特别是在高维空间中。HSIC的核心思想是利用核函数将原始数据映射到高维特征空间,然后在这个特征空间中计算随机变量之间的相关性。

HSIC的计算步骤:

  1. 核函数选择
    HSIC首先需要选择一个核函数 ( k(x, y) ),这个核函数将原始数据映射到一个高维特征空间。常见的核函数包括高斯核(RBF核)、线性核、多项式核等。

  2. Gram矩阵
    对于两个随机变量 ( X ) 和 ( Y ),我们分别计算它们的Gram矩阵 ( K ) 和 ( L )。Gra


原文地址:https://blog.csdn.net/qq_54855933/article/details/143788872

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!