zoukankan      html  css  js  c++  java
  • MMD

    Borgwardt K., Gretton A., Rasch M., Kriegel H., Schoikopf B., Smola A. Integrating structured biological data by Kernel Maximum Mean Discrepancy. 2006.

    本文介绍了一种衡量不同数据分布之间一致性的统计量.

    主要内容

    在统计中, 我们常常需要讨论两组数据是否采样自同一个分布. 一个最常见的问题或许就是, 训练数据和测试数据的偏移, 本文的重点是提出MMD作为一个衡量二者是否采样自同一个数据的指标, 后续的KMM则是其用于处理这种偏移的一种方法.

    定义

    假设(mathcal{F})是一类(f:mathcal{X} ightarrow mathbb{R})的函数, 而(p, q)分别是两个博雷尔概率分布,即概率空间为((mathbb{R}^d, mathscr{B}(mathbb{R})^d, p|q)) . 并令(X=(x_1, x_2,ldots, x_m), Y=(y_1, y_2,ldots, y_n))分别独立采样自(p, q). 则MMD与经验MMD按照如下方式定义:

    [mathrm{MMD}[mathcal{F},p,q] := sup_{f in mathcal{F}} (mathbb{E}_p [f(x)] - mathbb{E}_q[f(y)]) \ mathrm{MMD}[mathcal{F},p,q] := sup_{f in mathcal{F}} (frac{1}{m} sum_{x in X} f(x) - frac{1}{n} sum_{yin Y} f(y)). \ ]

    首先, 倘若(p=q), 那么显然(mathrm{MMD}[mathcal{F}, p, q]=0), 但是当(p ot= q)的时候, 我们总能找到一些(f)令MMD为正. 不过这一性质对于经验MMD就有所不同了, 由于采样个数有限, (X, Y)总会有一些不同, 所以这一指标往往永远不为0.

    若是要估计上面的式子, 这是非常困难的, 而且某种程度上是没有意义的, 因为一旦找到一个(f)使得MMD非零, 我们可以去(f':=alpha cdot f)使得MMD任意大. 所以第一步便是要限制(mathcal{F}), 很自然的方式是限制其在范数球上(|f| le 1), 但这并没有改变困难的本质. 要知道(p=q)的一个充分必要条件是

    [int f mathrm{d} p = int f mathrm{d} q , forall f in C. ]

    而所有的连续函数都能由 universal RKHS (reproducing kernel Hilbert space)中的函数来逼近, 故我们完全可以将(mathcal{F})限制在这样一个空间之上.

    MMD for kernel function classes

    接下来我们在 universal RKHS (mathcal{H})上讨论, 该空间通过给定核(k(cdot, cdot))来确定, 此时(phi_x=k(x, cdot)) . 当然你也可以说是先有的(phi), 然后(k(x, y)=langle phi_x, phi_y angle)也是可以的. 此时, 是假设对于任意的(x in mathcal{X})存在(phi_x: f ightarrow f(x)), 且(phi_x)是一个有界线性算子, 根据Riesz表示引理, (phi_x(f)=f(x) = langle f, phi_x' angle_{mathcal{H}}), 其中(phi'_x in mathcal{H}).

    回到由(k(cdot, cdot))定义的(mathcal{H})中来, 此时的MMD可以便成了

    [mathrm{MMD}[mathcal{H}, p, q] = sup_{|f|_{mathcal{H}} le 1} mathbb{E}_p [f(x)] - mathbb{E}_q [f(x)] = sup_{|f|_{mathcal{H}} le 1} mathbb{E}_p [langle phi_x, f angle_{mathcal{H}}] - mathbb{E}_q [langle phi_x, f angle_{mathcal{H}}] = |mu_p-mu_q|_{mathcal{H}}, ]

    其中(mu_p=mathbb{E}_p [phi_x], mu_q = mathbb{E}_q [phi_x]).

    (mathrm{MMD}^2) 一个无偏统计量

    定义

    [mathrm{MMD}^2 [mathcal{H}, p, q] = |mu_p - mu_q|_{mathcal{H}}^2, \ mathrm{MMD}^2 [mathcal{H}, X, Y] = frac{1}{m(m-1)}sum_{i ot = j}k(x_i, x_j) + frac{1}{n-1}sum_{i ot = j } k(y_i, y_j) - frac{2}{mn} sum_{i,j} k(x_i, x_j). ]

    容易证明(mathrm{MMD}^2[mathcal{H}, X, Y])(MMD^2[mathcal{H}, p, q])的一个无偏统计量.

    (m=n)的时候, 进一步有

    [mathrm{MMD}^2[mathcal{H}, X, Y]= frac{1}{m(m-1)} sum_{i ot =j} h(z_i, z_j), ]

    其中

    [h(z_i, z_j) := k(x_i, x_j)+ k(y_i, y_j) - k(x_i, y_j) - k(x_j, y_i). ]

    MMD test

    image-20201119174220085

    通过上述推论便可知我们应该如何检验, 并且具体算法如下.

    注: (mathrm{Pr}(z > z_{alpha}) = alpha Rightarrow mathrm{Pr}(-z_{alpha}<z <z_{alpha})=1-alpha), 又(mathrm{erf}(x) = Phi(sqrt{2}x) - Phi(-sqrt{2}x)), 所以(mathrm{erfinv}(1-2alpha) = frac{1}{sqrt{2}} z_{alpha}), 这是算法里那个式子的由来.

    image-20201119174206439

  • 相关阅读:
    传奇衣服、翅膀、武器、怪物、NPC等外观代码计算方法与公式
    传奇添加地图与配置参数
    传奇中如何加入衣服的翅膀效果
    传奇添加地图与配置参数详解
    NPC脚本界面自定义美化参数说明
    传奇物品叠加设置方法
    四级技能修炼NPC脚本参考
    传奇怎么设置沙巴克自动攻城
    HeroM2连击技能设置和DB完整数据
    python常用软件包
  • 原文地址:https://www.cnblogs.com/MTandHJ/p/14007063.html
Copyright © 2011-2022 走看看