Flow-based model
文章1: NICE: NON-LINEAR INDEPENDENT COMPONENTS ESTIMATION
文章2:Real-valued Non-Volume Preserving (RealNVP)
文章3:Glow: Generative Flow with Invertible 1x1 Convolutions
NICE
学习目标:找一个变换h=f(x),使得变换后的分布的每个分量是独立的
我们假设h和x的维度是一样的,f是可逆的,则我们有
并且,我们希望f的Jacobian矩阵和f−1比较容易计算。如果这是可以操作的,那么我们可以直接采样pX(x),
这个f的设计的主要核心思想是,将x分裂成两部分(x1,x2),然后变换成(y1,y2),
m可以是任意的函数(i.e., a ReLU MLP). 注意到,Jacobian矩阵的行列式是单位阵,并且非常容易算逆函数,
当然我们可以定义更一般性的架构,,加性交错coupling的架构。并且可以有一层一层的变换,有种flow的感觉。
我们可以定义最大似然函数:
pH(h):先验分布,可以事先定义好的,比如各向同性的高斯分布.如果h的每个分量都是独立的,我们可以写成,
RealNVP
分裂的办法:
s 和 t 是 scale 和 translation, 函数,Rd ——>RD−d,
对应的Jacobia矩阵,
PS: 由于我们算逆函数和Jacobia矩阵的过程中,都没有涉及到s和t的逆函数,所以s和t是可以任意复杂的,i.e.,神经网络。
Glow
核心引入了1x1可逆卷积操作: C个1*1的卷积核,即对每个(共W*H个)粉色棍子,用C个橙色的棍子,变成红色的棍子(图中只显示了红色棍子的其中一个方块)。 为了保证卷积核A的可逆性,需要加一些约束, i.e., 将−log|det A|加入到loss中.
1*1可逆卷积
三种不同方案的loss曲线比较
Flow-based model的更多相关文章
- Risk Adaptive Information Flow Based Access Control
Systems and methods are provided to manage risk associated with access to information within a given ...
- 10X genomics|cell base|in-vivo based|model organisms|SBI|
生命组学-药物基因组学 精准医学的内容有个人全基因组测序,移动可穿戴设备,它可以实时监测,深度学习模型预测疾病,对疾病预测做到有效.安全和可控. 药物基因组学就是研究疾病.化合物和靶点之间的关系,关键 ...
- [Functional Programming ADT] Create a Redux Store for Use with a State ADT Based Reducer
With a well defined demarcation point between Redux and our State ADT based model, hooking up to a R ...
- Physically Based Shader Development for Unity 2017 Develop Custom Lighting Systems (Claudia Doppioslash 著)
http://www.doppioslash.com/ https://github.com/Apress/physically-based-shader-dev-for-unity-2017 Par ...
- A Complete Tutorial on Tree Based Modeling from Scratch (in R & Python)
A Complete Tutorial on Tree Based Modeling from Scratch (in R & Python) MACHINE LEARNING PYTHON ...
- A Neural Influence Diffusion Model for Social Recommendation 笔记
目录 一.摘言 二.杂记 三.问题定义和一些准备工作 四.模型真思想 五.实验部分 六.参考文献 一.摘言 之前协同过滤利用user-item交互历史很好的表示了user和item.但是由于用户行为的 ...
- 比特币_Bitcoin 简介
2008-11 Satoshi Nakamoto Bitcoin: A Peer-to-Peer Electronic Cash System http://p2pbucks.com/?p=99 ...
- (转) Awesome Deep Learning
Awesome Deep Learning Table of Contents Free Online Books Courses Videos and Lectures Papers Tutori ...
- {ICIP2014}{收录论文列表}
This article come from HEREARS-L1: Learning Tuesday 10:30–12:30; Oral Session; Room: Leonard de Vinc ...
- CV界的明星人物们
CV界的明星人物们 来自:http://blog.csdn.net/necrazy/article/details/9380151,另外根据自己关注的地方,加了点东西. 今天在cvchina论坛上看到 ...
随机推荐
- golang struct结构体初始化的几种方式
type User struct { Id int `json:"id" orm:"auto"` // 用户名 Username string `json:&q ...
- RazorSQL for Mac如何编辑数据?
RazorSQL 是一个非开源的功能非常强大数据库查询工具.SQL的编辑.数据库管理工具.支持通过 JDBC 和 ODBC 连接超过 29 种的数据库.允许您从一个数据库工具查询,更新,导航和管理所有 ...
- Linux基础命令---间歇执行命令---watch
[watch] watch指令可以间歇性的执行程序,将输出结果以全屏的方式显示,默认是2s执行一次. watch指令下发后,将会一直被执行,直到被中断. [语法] watch \ [-d h v t] ...
- JAVA第四周总结
Java实验报告二 第一题 写一个名为Rectangle的类表示矩形.其属性包括宽width.高height和颜色color,width和height都是double型的,而color则是String ...
- 小菜鸟之java JDBC编程
JDBC技术 百度简介 : JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一 ...
- 【DP 好题】Kick Start 2019 Round C Catch Some
题目链接 题目大意 在一条数轴上住着 $N$ 条狗和一个动物研究者 Bundle.Bundle 的坐标是 0,狗的坐标都是正整数,可能有多条狗住在同一个位置.每条狗都有一个颜色.Bundle 需要观测 ...
- C++学习 之 控制程序流程 (笔记)
1.使用if...else有条件的执行 在一些时候语句需要进行有条件的执行.比如如果输入"Y"就执行赋值语句N=1:否则N=0: #include<iostream> ...
- 02:linux常用命令
1.1 linux查看系统基本参数常用命令 1.查看磁盘 [root@linux-node1 ~]# df -hl Filesystem Size Used Avail Use% Mounted on ...
- GoAccess操作手册
名字 GoAccess - 可视化 Web 日志分析工具. 语法 goaccess [filename] [ options ... ] [-c][-M][-H][-q][-d][...] 描述 Go ...
- python中format所有用法
平时只用参数匹配,偶尔看到别人的format用法楞住没反应过来,遂记下 #通过位置 print '{0},{1}'.format('hehe',20) print '{},{}'.format('he ...