Variational Autoencoders and Nonlinear ICA: A Unifying Framework
概
本文讨论identifiability的问题, 即
\]
在何种情况下能够成立, 或者近似成立.
主要内容
假设观测数据\(x\)和隐变量\(z\)满足联合分布:
\]
因为隐变量是未知的, 所以我们接触到的实际上只有边际分布
\]
在实际估计参数\(\theta\)的时候, 很有可能发生:
\]
即两个不同的联合分布\(p_{\theta}(x, z), p_{\tilde{\theta}}(x, z)\)但是却对应着同一个边际分布, 这就identifiability的问题.
在经典的VAE框架中, 已经有工作指出, 无监督下, 即仅凭观测数据\(x\), 是无法保证identifiability的.
本文的模型
本文需要用到一些额外的信息\(u\), 考虑如下分布:
\]
注: \(x \in \mathbb{R}^d, z \in \mathbb{R}^n, u \in \mathbb{R}^m\).
其中,
\]
\]
即假设先验\(z|\mu\)满足的是指数族的分布.
套用VAE的框架:
- encoder:
\]
- decoder:
\]
既估计的后验分布为\(q_{\phi}(z|x,\mu)\), 则ELBO:
\]
Identifiability
\(\sim\)定义: 定义\(\sim\)等价关系如下:
\exist A, c, \: \mathrm{s.t.} \: T(f^{-1}(x)) = A\tilde{T}(\tilde{f}^{-1}(x)) + c, \forall x \in \mathcal{X},
\]
其中\(A \in \mathbb{R}^{nk \times nk}\). 若\(A\)还是个可逆矩阵, 则
\]
显然, 如果
\]
那么可以说是在线性变换允许范围内是identifiable的.
接下来给出的定理说明了什么时候\(\theta, \tilde{\theta}\)是\(\sim_A\)-identifiable的.
定理: 在前述定义的模型下, 对于\(\theta = (f, T, \lambda)\), 以及任意\(\tilde{\theta} =(\tilde{f}, \tilde{T}, \tilde{\lambda})\)满足
\]
若一下条件成立, 则\(\theta \sim_A \tilde{\theta}\):
若\(\varphi_{\epsilon}\)为\(p_{\epsilon}\)的特征函数(这里即为对于的傅里叶变换), 且\(\varphi_{\epsilon} \not = 0, \: a.e.\).
\(f\)是一个单射.
\(T_{i, j}\)几乎处处可微, 且\((T_{ij})_j(x)\)线性独立, 即
\]
对于\(i=1,\ldots, n\)均成立.
- 存在不同的点\(u^0, \cdots, u^{nk}\), 使得
\]
可逆.
证明流程:
利用条件1, 2证明
=p_{\tilde{T},\tilde{\lambda}}(f^{-1}(x)|u) \mathrm{vol} J_{\tilde{f}^{-1}}(x).
\]
利用条件4证明
\]
利用条件3证明\(A\)可逆.
注: 显然条件四一定程度熵说明了为什么无监督不行(因为其相当于\(\lambda(u)\)为常数).
注: 关于引理2的证明我有疑问, 我认为应当这般证明:
令\(\mathcal{X}_i = \{x \in \mathbb{R}, T_i'(x) = 0\}\), 取\(\theta_i\not=0, \theta_j = 0, j\not=i\), 则
\]
由定义知\(\mathcal{X}_i\)的测度为0.
注: 本文还有一些别的identifiability的讨论, 这里不多赘述.
Variational Autoencoders and Nonlinear ICA: A Unifying Framework的更多相关文章
- Understanding Variational Autoencoders (VAEs)
Understanding Variational Autoencoders (VAEs) 2019-09-29 11:33:18 This blog is from: https://towards ...
- (译) Conditional Variational Autoencoders 条件式变换自编码机
Conditional Variational Autoencoders --- 条件式变换自编码机 Goal of a Variational Autoencoder: 一个 VAE(variati ...
- [Bayesian] “我是bayesian我怕谁”系列 - Variational Autoencoders
本是neural network的内容,但偏偏有个variational打头,那就聊聊.涉及的内容可能比较杂,但终归会 end with VAE. 各个概念的详细解释请点击推荐的链接,本文只是重在理清 ...
- 条件式变分自编码机(Conditional Variational Autoencoders)
Conditional Variational Autoencoders 条件式变换自编码机 摘要: Conditional Variational Autoencoders --- 条件式变换自编码 ...
- 基于图嵌入的高斯混合变分自编码器的深度聚类(Deep Clustering by Gaussian Mixture Variational Autoencoders with Graph Embedding, DGG)
基于图嵌入的高斯混合变分自编码器的深度聚类 Deep Clustering by Gaussian Mixture Variational Autoencoders with Graph Embedd ...
- Improving Variational Auto-Encoders using Householder Flow
目录 概 主要内容 代码 Tomczak J. and Welling M. Improving Variational Auto-Encoders using Householder Flow. N ...
- Variational Auto-Encoders原理
目录 AE v.s. VAE Generative model VAE v.s. GAN AE v.s. VAE Generative model VAE v.s. GAN
- PP: Time series anomaly detection with variational autoencoders
Problem: unsupervised anomaly detection Model: VAE-reEncoder VAE with two encoders and one decoder. ...
- (zhuan) Variational Autoencoder: Intuition and Implementation
Agustinus Kristiadi's Blog TECH BLOG TRAVEL BLOG PORTFOLIO CONTACT ABOUT Variational Autoencoder: In ...
随机推荐
- 日常Java 2021/10/14
Java数据结构 Java BitSet类 BitSet类创建一种特殊类型的数组来保存位值,数组大小随需要增加,BitSet(),BitSet(int size) 其中的方法 void and(Bit ...
- 日常Java 2021/9/20
Java随机数 运用Java的random函数实现猜数字游戏 随机产生一个1-50之间的数字,然后让玩家猜数,猜大猜小都给出提示,猜对后游戏停止 package pingchangceshi; imp ...
- 基于MQTT协议实现远程控制的"智能"车
智能,但不完全智能 虽然我不觉得这玩意儿有啥智能的,但都这么叫就跟着叫喽. 时隔好几天才写的 其实在写这篇博文的时候我已经在做升级了,并且已经到了中后期阶段了. 主要是业余时间做着玩,看时间了. 规格 ...
- SpringBoot Logback 日志配置
目录 前言 日志格式 日志输出 日志轮替 日志级别 日志分组 小结 前言 之前使用 SpringBoot 的时候,总是习惯于将日志框架切换为 Log4j2,可能是觉得比较靠谱,也可能年龄大了比较排斥新 ...
- HTML5 之 FileReader 的使用 (网页上图片拖拽并且预显示可在这里学到) [转载]
转载至 : http://www.360doc.com/content/14/0214/18/1457948_352511416.shtml FileReader 资料(英文) : https://d ...
- 【leetcode】378. Kth Smallest Element in a Sorted Matrix(TOP k 问题)
Given an n x n matrix where each of the rows and columns is sorted in ascending order, return the kt ...
- mybatis错误 Mapped Statements collection does not contain value for
java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for 在unit里测试 ...
- @RestController和@Controller的区别与作用
在springMvc中controller层类上的要使用@Controller来注明该类属于控制层,在controller层常返回的数据形式有以下几种: 页面:静态页面 ModelAndView:返回 ...
- XML名命空间
XML的名命空间就类似于java的包,命名空间定义:xmlns:***="URI",默认命名空间定义:xmlns="URI" 引号中的URl内容用来唯一标识命名 ...
- 【报错记录】Could not load dynamic library 'libnvinfer.so.6'; dlerror: libnvinfer.so.6
执行import tensorflow的时候有如下报错 (test1) a@10980:~$ python Python 3.6.13 |Anaconda, Inc.| (default, Jun 4 ...