zoukankan      html  css  js  c++  java
  • 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的讨论, 这里不多赘述.

  • 相关阅读:
    Leetcode 16.25 LRU缓存 哈希表与双向链表的组合
    Leetcode437 路径总和 III 双递归与前缀和
    leetcode 0404 二叉树检查平衡性 DFS
    Leetcode 1219 黄金矿工 暴力回溯
    Leetcode1218 最长定差子序列 哈希表优化DP
    Leetcode 91 解码方法
    Leetcode 129 求根到叶子节点数字之和 DFS优化
    Leetcode 125 验证回文串 双指针
    Docker安装Mysql记录
    vmware虚拟机---Liunx配置静态IP
  • 原文地址:https://www.cnblogs.com/MTandHJ/p/14856287.html
Copyright © 2011-2022 走看看