目录
MMD最大均值差异
求两堆数据在 RKHS 中的均值的距离
参考
https://zhuanlan.zhihu.com/p/163839117
随机变量的矩
描述随机变量
高维的随机变量,无法给出分布函数. 则用随机变量的矩来描述一个随机变量,比如一阶中心矩是均值,二阶中心矩是方差等.
MMD的基本思想
如果两个随机变量的任意阶矩都相同,则分布一致。
两个分布不相同的话,那么使得两个分布之间差距最大的那个矩被用来作为度量两个分布的标准.
衡量两个分布(随机变量)的差异
MMD常被用来度量两个分布之间的距离,是迁移学习中常用的损失函数
MMD定义
$$ M M D[F, p, q]=\sup _{\|\varphi\|_{\mathcal{H}} \leq 1} E_{p}[\varphi(x)]-E_{q}[\varphi(y)] $$
其中符号含义:
$$ p $$ | x的分布 |
$$ q $$ | y的分布 |
$$ \sup $$ | 求上界(最大值) |
$$ E_{p} $$ | 求期望 |
$$ \varphi() $$ | 映射函数 |
$$ \|\varphi\|_{\mathcal{H}} \leq 1 $$ | 函数φ在再生希尔伯特空间中的范数应该小于等于1。 |
φ将x映射到高阶(如x^n) ,那么对应的E(x^n) 就相当于在求n阶矩. 然后将他们的最大值作为MMD的值.
表示分布(变量)的任意阶矩
获得随机变量高阶矩方法: 核函数kernel embedding of distributions
高斯核函数(支持向量机提到),其映射函数可以映射到无穷维上,映射到无穷维上再求期望,正好可以得到随机变量的高阶矩. 将一个分布映射到再生希尔伯特空间(每个核函数都对应一个RKHS)上的一个点,这样两个分布之间的距离就可以用两个点的内积进行表示:
再生希尔伯特空间可参考:
https://zhuanlan.zhihu.com/p/29527729
随机变量的经过映射φ(x)之后,期望表示为:
$$ \mathbb E_{p}[\varphi(x)] =\int_{\mathcal{X}} \mathrm{p}(\mathrm{d} x) \varphi(x)\\=\int_{\mathcal{X}} \mathrm{p}(\mathrm{d} x)\langle k(x, \cdot), \varphi\rangle_{\mathcal{H}_{k}} \\ =\left\langle\int_{\mathcal{X}} \mathrm{p}(\mathrm{d} x) k(x, \cdot), \varphi\right\rangle_{\mathcal{H}_{k}}\\ =\left\langle\mu_{\mathrm{p}}, \varphi\right\rangle_{\mathcal{H}_{k}} $$
第一个等号就是利用期望展开;第二个等号利用的是RKHS的再生性,即RKHS中的φ(x)都可以写成一个无穷维的向量k(x, ·)与基底向量φ的内积;第三个等号利用的是内积的性质;最后一个等号μ表示的就是kernel mean embedding:
$$ \mu_{p}=\int_{\mathcal{X}} p(\mathrm{dx}) k(x, \cdot) $$
即将x利用k(x, ·)映射到无穷维上,然后在每一个维度上都求期望.
MMD的数学化简
用更直观的形式表达
$$ \begin{aligned} \operatorname{MMD}(\mathrm{p}, \mathrm{q}, \mathcal{H}): =\sup _{\varphi \in \mathcal{H},\|\varphi\|_{\mathcal{H}} \leq 1}(\underset{p}{\mathbb{E}}[\varphi(\boldsymbol{x})]-\underset{\mathrm{q}(\boldsymbol{y})}{\mathbb{E}}[\varphi(\boldsymbol{y})]) \\ =\sup _{\varphi \in \mathcal{H},\|\varphi\|_{\mathcal{H}} \leq 1}\left(\left\langle\mu_{\mathrm{p}}-\mu_{\mathrm{q}}, \varphi\right\rangle_{\mathcal{H}}\right) \end{aligned} $$
其中第一个式子就是MMD的直接定义,第二个等号利用kernel embedding中最后的结果.
根据内积的性质: $$ \left\langle\mu_{\mathrm{p}}-\mu_{\mathrm{q}}, \varphi\right\rangle_{\mathcal{H}} \leq\left\|\mu_{\mathrm{p}}-\mu_{\mathrm{q}}\right\|_{\mathcal{H}}\|\varphi\|_{\mathcal{H}} $$ |
代入得:
$$ M M D(p, q, \mathcal{H})=\left\|\mu_{\mathrm{p}}-\mu_{\mathrm{q}}\right\|_{\mathcal{H}} $$
其中μ无法直接得到,但是可以用均值(均值是期望的无偏估计)替代计算(假设X样本n个, Y样本m个):
$$ M M D[F, X, Y]:=\left\|\frac{1}{n} \sum_{i=1}^{n} \varphi\left(x_{i}\right)-\frac{1}{m} \sum_{j=1}^{m} \varphi\left(y_{j}\right)\right\|_{\mathcal{H}} $$
φ(x)无穷维, 需要用核函数表达. 对MMD平方后化简得到内积, 并代入核函数:
$$ \begin{aligned} M M D^2[F, X, Y]=&\left\| \frac{1}{n_s} \sum_{i=1}^{n_s} \phi(\mathbf{x}_i) - \frac{1}{n_t} \sum_{j=1}^{n_t} \phi(\mathbf{x}_j) \right\|^2_{\mathcal{H}}\\ &=\operatorname{tr} \left( \begin{bmatrix}\phi(\mathbf{x}_s) & \phi(\mathbf{x}_t)\end{bmatrix} \begin{bmatrix}\frac{1}{n^2_s} \mathbf{1}\mathbf{1}^{\mathrm{T}} & \frac{-1}{n_s n_t} \mathbf{1}\mathbf{1}^{\mathrm{T}} \\ \frac{-1}{n_s n_t} \mathbf{1}\mathbf{1}^{\mathrm{T}} & \frac{1}{n^2_t} \mathbf{1}\mathbf{1}^{\mathrm{T}}\end{bmatrix} \begin{bmatrix}\phi(\mathbf{x}_s)^\mathrm{T} \\ \phi(\mathbf{x}_t)^\mathrm{T}\end{bmatrix} \right)\\&=\operatorname{tr} \left( \begin{bmatrix}\phi(\mathbf{x}_s)^\mathrm{T} \\ \phi(\mathbf{x}_t)^\mathrm{T}\end{bmatrix} \begin{bmatrix}\phi(\mathbf{x}_s) & \phi(\mathbf{x}_t)\end{bmatrix} \begin{bmatrix}\frac{1}{n^2_s} \mathbf{1}\mathbf{1}^{\mathrm{T}} & \frac{-1}{n_s n_t} \mathbf{1}\mathbf{1}^{\mathrm{T}} \\ \frac{-1}{n_s n_t} \mathbf{1}\mathbf{1}^{\mathrm{T}} & \frac{1}{n^2_t} \mathbf{1}\mathbf{1}^{\mathrm{T}}\end{bmatrix} \right)\\&=\operatorname{tr} \left( \begin{bmatrix}<\phi(\mathbf{x}_s),\phi(\mathbf{x}_s)> & <\phi(\mathbf{x}_s),\phi(\mathbf{x}_t)> \\ <\phi(\mathbf{x}_t),\phi(\mathbf{x}_s)> & <\phi(\mathbf{x}_t),\phi(\mathbf{x}_t)>\end{bmatrix} \mathbf{M} \right)\\&=\operatorname{tr} \left( \begin{bmatrix} K_{s,s} & K_{s,t}\\ K_{t,s} & K_{t,t} \end{bmatrix} \mathbf{M} \right)\end{aligned} $$
$$ \begin{aligned} \left(M\right)_{i j}=\left\{\begin{array}{ll}{\frac{1}{n_{s} n_{s}},} & {\mathbf{x}_{i}, \mathbf{x}_{j} \in \mathcal{D}_{s}} \\ {\frac{1}{n_{t} n_{t}},} & {\mathbf{x}_{i}, \mathbf{x}_{j} \in \mathcal{D}_{t}} \\ {\frac{-1}{n_{s} n_{t}},} & {\text { otherwise }}\end{array}\right. \end{aligned} $$
K_{s,s}就是核(Gram)矩阵.