Variational Autoencoders and Nonlinear ICA: A Unifying Framework

Khemakhem I., Kingma D. P., Monti R. P. and Hyv"{a}rinen A. Variational autoencoders and nonlinear ICA: a unifying framework. In International Conference on Artificial Intelligence and Statistics (AISTATS), 2020.

本文讨论identifiability的问题, 即

[p_{ heta}(x) = p_{ ilde{ heta}}(x) Rightarrow heta = ilde{ heta} ]

在何种情况下能够成立, 或者近似成立.

主要内容

假设观测数据(x)和隐变量(z)满足联合分布:

[p_{ heta^*}(x, z) = p_{ heta^*}(x|z) p_{ heta^*}(z), ]

因为隐变量是未知的, 所以我们接触到的实际上只有边际分布

[p_{ heta^*}(x) = int_z p_{ heta^*}(x, z)mathrm{d}z. ]

在实际估计参数( heta)的时候, 很有可能发生:

[p_{ heta}(x) = p_{ ilde{ heta}}(x) approx p_{ heta^*}(x), : heta ot = ilde{ heta}. ]

即两个不同的联合分布(p_{ heta}(x, z), p_{ ilde{ heta}}(x, z))但是却对应着同一个边际分布, 这就identifiability的问题.
在经典的VAE框架中, 已经有工作指出, 无监督下, 即仅凭观测数据(x), 是无法保证identifiability的.

本文的模型

本文需要用到一些额外的信息(u), 考虑如下分布:

[p_{ heta}(x, z|u) = p_f(x|z) p_{T,lambda}(z|u), : heta = (f, T, lambda). ]

注: (x in mathbb{R}^d, z in mathbb{R}^n, u in mathbb{R}^m).

其中,

[x = f(z) + epsilon Rightarrow p_{f}(x|z) = p_{epsilon}(x - f(z)). ]

[p_{T, lambda}(z|u) = prod_{i}frac{Q_i(z_i)}{Z_i(u)}exp [sum_{j=1}^k T_{i,j}(z_i) lambda_{i,j}(u)], ]

即假设先验(z|mu)满足的是指数族的分布.

套用VAE的框架:

  1. encoder:

[hat{T}, hat{lambda} = h(x, u;phi), z sim p_{hat{T}, hat{lambda}}(z|u). ]

  1. decoder:

[hat{x} = f(z) + epsilon. ]

既估计的后验分布为(q_{phi}(z|x,mu)), 则ELBO:

[mathbb{E}_{q_{mathcal{D}(x,u)}}[mathbb{E}_{q_{phi}(z|x,u)}[log p_{ heta}(x, z|u) - log q_{phi}(z|x,u)]]. ]

Identifiability

(sim)定义: 定义(sim)等价关系如下:

[(f, T, lambda) sim ( ilde{f}, ilde{T}, ilde{lambda}) Leftrightarrow \ exist A, c, : mathrm{s.t.} : T(f^{-1}(x)) = A ilde{T}( ilde{f}^{-1}(x)) + c, forall x in mathcal{X}, ]

其中(A in mathbb{R}^{nk imes nk}). 若(A)还是个可逆矩阵, 则

[(f, T, lambda) sim_{A} ( ilde{f}, ilde{T}, ilde{lambda}). ]

显然, 如果

[p_{ heta}(x|u) = p_{ ilde{ heta}}(x|u) Rightarrow heta sim_A ilde{ heta}, ]

那么可以说是在线性变换允许范围内是identifiable的.

接下来给出的定理说明了什么时候( heta, ilde{ heta})(sim_A)-identifiable的.

定理: 在前述定义的模型下, 对于( heta = (f, T, lambda)), 以及任意( ilde{ heta} =( ilde{f}, ilde{T}, ilde{lambda}))满足

[p_{ heta}(x|u)= p_{ ilde{ heta}}(x|u), : a.e., ]

若一下条件成立, 则( heta sim_A ilde{ heta}):

  1. (varphi_{epsilon})(p_{epsilon})特征函数(这里即为对于的傅里叶变换), 且(varphi_{epsilon} ot = 0, : a.e.).

  2. (f)是一个单射.

  3. (T_{i, j})几乎处处可微, 且((T_{ij})_j(x))线性独立, 即

[sum_j^k alpha_{ij} T_{i, j}(x) = c_{i}, forall x, Rightarrow c_i = 0, alpha_{ij} = 0, forall j, ]

对于(i=1,ldots, n)均成立.

  1. 存在不同的点(u^0, cdots, u^{nk}), 使得

[L = (lambda(u_1) - lambda(u_0), cdots, lambda(u_{nk}) - lambda(u_0)) in mathbb{R}^{nk imes nk}. ]

可逆.

证明流程:
利用条件1, 2证明

[p_{T,lambda}(f^{-1}(x)|u) mathrm{vol} J_{f^{-1}}(x) =p_{ ilde{T}, ilde{lambda}}(f^{-1}(x)|u) mathrm{vol} J_{ ilde{f}^{-1}}(x). ]

利用条件4证明

[T(f^{-1}(x)) = A ilde{T}( ilde{f}^{-1}(x)) + c, : A = L^{-T} ilde{L}^T. ]

利用条件3证明(A)可逆.

注: 显然条件四一定程度熵说明了为什么无监督不行(因为其相当于(lambda(u))为常数).

注: 关于引理2的证明我有疑问, 我认为应当这般证明:

(mathcal{X}_i = {x in mathbb{R}, T_i'(x) = 0}), 取( heta_i ot=0, heta_j = 0, j ot=i), 则

[langle T'(x), heta angle = 0, forall x in mathcal{X_i} Rightarrow langle T(x), heta angle = mathrm{const}, ]

由定义知(mathcal{X}_i)的测度为0.

注: 本文还有一些别的identifiability的讨论, 这里不多赘述.

原文地址:https://www.cnblogs.com/MTandHJ/p/14856287.html