← 开源
openai

iaf

Code for reproducing key results in the paper "Improving Variational Inference with Inverse Autoregressive Flow"

Model DevelopmentArchitecturePython
在 GitHub 打开
增长势头
+024 小时新增 Star0.0%
527
Star
139
Fork
+0
本周
5
贡献者
创建于 2016-06-15 · 更新于 2026-09-18 · 今日第 17708 名
主要开发者
dpkingmarafal-oaichristopherhesse

openai/iaf 排名第 17,708,有 527 个星标。

同类别比较

openai/iaf 排名第 17,708,此处有 8 个同类条目;white127/QA-deep-learning 排名第 17,710。

同类别比较
名称排名指标
JunnYu/RoFormer_pytorch17,693
语言:
Python
星标数:
527
分叉数:
43
简介:
RoFormer V1 & V2 pytorch
alibaba/gym-starcraft17,696
语言:
Python
星标数:
527
分叉数:
138
简介:
StarCraft environment for OpenAI Gym, based on Facebook's TorchCraft. (In progress)
anuragranj/cc17,697
语言:
Python
星标数:
527
分叉数:
62
简介:
Competitive Collaboration: Joint Unsupervised Learning of Depth, Camera Motion, Optical Flow and Motion Segmentation
castorini/honk17,699
语言:
Python
星标数:
527
分叉数:
120
简介:
PyTorch implementations of neural network models for keyword spotting
white127/QA-deep-learning17,710
语言:
Python
星标数:
527
分叉数:
274
简介:
tensorflow and theano cnn code for insurance QA(question Answer matching)
AminHP/gym-mtsim17,712
语言:
Python
星标数:
526
分叉数:
124
简介:
A general-purpose, flexible, and easy-to-use simulator alongside an OpenAI Gym trading environment for MetaTrader 5 trading platform (Approved by OpenAI Gym)
LPengYang/MotionClone17,715
语言:
Python
星标数:
526
分叉数:
40
简介:
[ICLR 2025] Official implementation of MotionClone: Training-Free Motion Cloning for Controllable Video Generation
ericjang/draw17,722
语言:
Python
星标数:
526
分叉数:
151
简介:
TensorFlow Implementation of "DRAW: A Recurrent Neural Network For Image Generation"
关键参数与规格
关键参数与规格
参数值
语言Python
类别Model Development
子类别Architecture
星标数527
分叉数139
贡献者5
创建日期2016-06-15
更新日期2026-09-18
1 天星标数0
7 天星标数0
排名17,708
上次排名17,487
排名变化-221
7 天星标排名16,249
上次 7 天星标排名16,258
7 天星标排名变化9
总星标排名18,593
上次总星标排名18,569
总星标排名变化-24
国家USA
README 摘录

**Status:** Archive (code is provided as-is, no updates expected) Improve Variational Inference with Inverse Autoregressive Flow Code for reproducing key results in the paper Improving Variational Inference with Inverse Autoregressive Flow by Diederik P. Kingma, Tim Salimans, Rafal Jozefowicz, Xi Chen, Ilya Sutskever, and Max Welling. Make sure that recent versions installed of: 2. Set in the section of Theano config (usually ). Alternatively you could prepend to the python commands below. Download the CIFAR-10 dataset (get the *Python

* version) and create an environment variable that points to the subdirectory with CIFAR-10 data. py Example: is the problem (dataset) to train on. is the number of stochastic featuremaps in each layer. is the number of deterministic featuremaps used throughout the model. is an array of integers that denotes the depths of the *levels* in the model. Each subsequent level operates over spatially smaller featuremaps. In case of CIFAR-10, the first level operates over 16x16 featuremaps, the second

over 8x8 featuremaps, etc. Some possible choices for are: : bottom-up factorized Gaussian : bottom-up IAF, mean-only perturbation : bottom-up IAF : top-down factorized Gaussian : top-down IAF, mean-only perturbation : top-down IAF is the number of hidden layers within IAF, and can be any non-negative integer. Should be a non-negative float (where 0 is no constraint). 28 bits/dim) More instructions will follow. Multi-GPU TensorFlow implementation Prerequisites Make sure that recent versions installed of

: Python (version 2. 7 or higher) TensorFlow tqdm environment variable should point to the dataset location. py Training script: It will run the training procedure on a given number of GPUs. Model checkpoints will be stored in directory along with TensorBoard summaries that are useful for monitoring and debugging issues. Evaluation script: It will run the evaluation on the test set using a single GPU and will produce TensorBoard summary with the results and generated samples. To start TensorBoard: For

the description of hyper-parameters, take a look at function in . Loading from the checkpoint The best IAF model trained on CIFAR-10 reached 3. 15 bits/dim when evaluated with a single sample. With 10,000 samples, the estimation of log likelihood is 3. Steps to use it: download the file create directory and copy the checkpoint there run the following command: The script will run the evaluation on the test set and generate samples stored in TensorFlow events

file that can be accessed using TensorBoard.

常见问题

记录了多少星标和分叉?

openai/iaf 有 527 个星标和 139 个分叉。

仓库排名是多少?

openai/iaf 排名第 17,708。

记录的语言和类别是什么?

openai/iaf 有 527 个星标,语言为 Python,类别为 Model Development。

哪个仓库排名最接近?

openai/iaf 与 white127/QA-deep-learning 比较,后者排名第 17,710,有 527 个星标。

README

Status: Archive (code is provided as-is, no updates expected)

Improve Variational Inference with Inverse Autoregressive Flow

Code for reproducing key results in the paper Improving Variational Inference with Inverse Autoregressive Flow by Diederik P. Kingma, Tim Salimans, Rafal Jozefowicz, Xi Chen, Ilya Sutskever, and Max Welling.

Prerequisites

  1. Make sure that recent versions installed of:

    • Python (version 2.7 or higher)
    • Numpy (e.g. pip install numpy)
    • Theano (e.g. pip install Theano)
  2. Set floatX = float32 in the [global] section of Theano config (usually ~/.theanorc). Alternatively you could prepend THEANO_FLAGS=floatX=float32 to the python commands below.

  3. Clone this repository, e.g.:

git clone https://github.com/openai/iaf.git
  1. Download the CIFAR-10 dataset (get the Python version) and create an environment variable CIFAR10_PATH that points to the subdirectory with CIFAR-10 data. For example:
export CIFAR10_PATH="$HOME/cifar-10"

Syntax of train.py

Example:

python train.py with problem=cifar10 n_z=32 n_h=64 depths=[2,2,2] margs.depth_ar=1 margs.posterior=down_iaf2_NL margs.kl_min=0.25

problem is the problem (dataset) to train on. I only tested cifar10 for this release.

n_z is the number of stochastic featuremaps in each layer.

n_h is the number of deterministic featuremaps used throughout the model.

depths is an array of integers that denotes the depths of the levels in the model. Each level is a sequence of layers. Each subsequent level operates over spatially smaller featuremaps. In case of CIFAR-10, the first level operates over 16x16 featuremaps, the second over 8x8 featuremaps, etc.

Some possible choices for margs.posterior are:

  • up_diag: bottom-up factorized Gaussian
  • up_iaf1_nl: bottom-up IAF, mean-only perturbation
  • up_iaf2_nl: bottom-up IAF
  • down_diag: top-down factorized Gaussian
  • down_iaf1_nl: top-down IAF, mean-only perturbation
  • down_iaf2_nl: top-down IAF

margs.depth_ar is the number of hidden layers within IAF, and can be any non-negative integer.

margs.kl_min: the minimum information constraint. Should be a non-negative float (where 0 is no constraint).

Results of Table 3

(3.28 bits/dim)

python train.py with problem=cifar10 n_h=160 depths=[10,10] margs.depth_ar=2 margs.posterior=down_iaf2_nl margs.prior=diag margs.kl_min=0.25

More instructions will follow.

Multi-GPU TensorFlow implementation

Prerequisites

Make sure that recent versions installed of:

  • Python (version 2.7 or higher)
  • TensorFlow
  • tqdm

CIFAR10_PATH environment variable should point to the dataset location.

Syntax of tf_train.py

Training script:

python tf_train.py --logdir  --hpconfig depth=1,num_blocks=20,kl_min=0.1,learning_rate=0.002,batch_size=32 --num_gpus 8 --mode train

It will run the training procedure on a given number of GPUs. Model checkpoints will be stored in /train directory along with TensorBoard summaries that are useful for monitoring and debugging issues.

Evaluation script:

python tf_train.py --logdir  --hpconfig depth=1,num_blocks=20,kl_min=0.1,learning_rate=0.002,batch_size=32 --num_gpus 1 --mode eval_test

It will run the evaluation on the test set using a single GPU and will produce TensorBoard summary with the results and generated samples.

To start TensorBoard:

tensorboard --logdir 

For the description of hyper-parameters, take a look at get_default_hparams function in tf_train.py.

Loading from the checkpoint

The best IAF model trained on CIFAR-10 reached 3.15 bits/dim when evaluated with a single sample. With 10,000 samples, the estimation of log likelihood is 3.111 bits/dim. The checkpoint is available at link. Steps to use it:

  • download the file
  • create directory /train/ and copy the checkpoint there
  • run the following command:
python tf_train.py --logdir  --hpconfig depth=1,num_blocks=20,kl_min=0.1,learning_rate=0.002,batch_size=32 --num_gpus 1 --mode eval_test

The script will run the evaluation on the test set and generate samples stored in TensorFlow events file that can be accessed using TensorBoard.

排名相邻
同类项目