查看原文
其他

【强基固本】深入探究MMD距离

“强基固本,行稳致远”,科学研究离不开理论基础,人工智能学科更是需要数学、物理、神经科学等基础学科提供有力支撑,为了紧扣时代脉搏,我们推出“强基固本”专栏,讲解AI领域的基础知识,为你的科研学习提供助力,夯实理论基础,提升原始创新能力,敬请关注。

作者:知乎—侠肝义胆陈浩天

地址:https://www.zhihu.com/people/xia-gan-yi-dan-chen-hao-tian


背景知识

scatter matrix:https://en.wikipedia.org/wiki/Scatter_matrix 就是简单的 
A scatter plot matrix is a grid (or matrix) of scatter plots used to visualize bivariate relationships between combinations of variables. Each scatter plot in the matrix visualizes the relationship between a pair of variables, allowing many relationships to be explored in one chart.
看起来就是covariance matrix啊,它们有什么区别呢?看了一下没有发现太大的区别,留个链接不知道以后是否需要用到:https://www.quora.com/What-is-the-difference-between-Scatter-matrix-and-covariance-matrix
目标希望利用common features,减少source domain和target domain的差别(mean deviations). 两个步骤:
  1. 从小圈移动到大圈:maximizing their specific intra-class distances. 最大化specific features,就是往common features的位置去靠拢。
  2. 通过第一步,那么上下两个小圈就开始靠拢了: minimizing theri joint variance.
如何保证移动的方向?移动的程度是多少?会不会丢失掉一些信息?。。。。。。


为什么MMD可以这样做?它又是如何工作的呢?下面给出详细证明。

主要是两个essential questions:
  1. How exactly does the MMD minimize the mean deviations between the two different domains?
  2. Why does the MMD usually produce an unexpected deteriotation of the feature discriminability?
定义样本总数  ,类别总数  ,均值  (带下标的就是某一个类别的均值,不带就是所有数据的均值),样本  [nums, feature_dim]
  • (所有点的方差矩阵) variance matrix 
  • (类内)intra-class scatter matrix  还不明白为什么要把所有类都算上,跟在模式识别上学习的不一样(想了一下应该是多个类:有共同common features的算在一起了)。
  • (类间)inter-class scatter matrix 
复习一下MMD,这里比较简单就不写出来了,换成迹的计算就是记得有两个“小技巧”:  . 换成迹的一个重要原因就是可以把问题看成是矩阵分解问题。
论文中的图,当然这里没有用到kerenl,可以在参考笔记找到kernel的形式
事实上这个形式不是很完美,因为这里就把Ds,Dt分成了两个域一起考虑,其实是很不科学的,毕竟1个dataset能有多种label. 所以作者提出(不知道是不是作者提出的没有查阅过)了class-wise MMD ,加上了label constraint(也就是常说的conditional distribution,类似于CDAN那个做法).那么定义如下:
当然  跟  是一样的  ,毕竟就是多了个label constraint. 原始MMD就是class-wise MMD的一个特例。给出MMD learning framework:
其中  又是centering matrix,这东西没什么特别的,比如计算协方差矩阵就能把它给提取出来。这里有个结论我一直把它忽略了:整个MMD距离收敛于一个固定值!同样表明保留了一部分子空间的信息。


定理

Lemma 1:类间距离
其中 
Lemma 2: 类间距离等于所有样本的方差矩阵减去类内距离。
Proof:
注意为什么  少了个  就是用  代替了,并且注意到  (均值加起来就是全部了,但别忘记乘法是不相等的)就是:
Maximize intra-class distance but jointly minimize their variance with different weights.
根据lemma 2,把  替换一下就有:
Lemma 3: 上面的class-wise MMD可以利用上面的定理写成这样
Proof(注意矩阵  就是左上角都是  右下角是  ,右上角是  ,左下角就是  . 利用平均值进行等价替换就能得出结果):
那么结合lemma1和lemma2就能写成最终的形式了。同时也说明:在优化inter-class distance的时候,其实就是maximum intra-calss distance 和minimize variance(其实就是mean deviations)!而这都是符合我们的需求的。但是这也说明原始MMD距离会导致不同类别的特征会重叠在一起,使得判别特征(feature discriminability)被大大削弱了。

The First Strategy

一般取  ,直接调整类内距离  ,这样就可以通过调整  来观察到底类内距离的结果的影响了(feature discriminability)!


参考资料

Rethink Maximum Mean Discrepancy for Domain Adaptation

侠肝义胆陈浩天:Maximum Mean Discrepancy详解,含代码实现

https://zhuanlan.zhihu.com/p/150675648

侠肝义胆陈浩天:Centering Matrix

https://zhuanlan.zhihu.com/p/150671706

本文目的在于学术交流,并不代表本公众号赞同其观点或对其内容真实性负责,版权归原作者所有,如有侵权请告知删除。


“强基固本”历史文章


更多强基固本专栏文章,

请点击文章底部“阅读原文”查看


分享、点赞、在看,给个三连击呗!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存