← 开源
dpkingma

nips14-ssl

Code for reproducing results of NIPS 2014 paper "Semi-Supervised Learning with Deep Generative Models"

TutorialsML/AI fundamentalsPython
在 GitHub 打开
增长势头
+024 小时新增 Star0.0%
521
Star
147
Fork
+1
本周
1
贡献者
创建于 2014-11-06 · 更新于 2026-10-12 · 今日第 17835 名
主要开发者
dpkingma

dpkingma/nips14-ssl 排名第 17,835,有 521 个星标。

同类别比较

dpkingma/nips14-ssl 排名第 17,835,此处有 8 个同类条目;Callous-0923/agent-study 排名第 17,826。

同类别比较
名称排名指标
richmanbtc/mlbot_tutorial17,792
语言:
Jupyter Notebook
星标数:
523
分叉数:
187
简介:
A tutorial for algorithmic trading bot using machine learning.
youssefHosni/LLM-Open-University-From-Begineer-to-Advanced17,796
星标数:
523
分叉数:
135
简介:
A complete roadmap to master LLMs from absolute beginners to advanced
mgechev/guess-next17,818
语言:
JavaScript
星标数:
522
分叉数:
8
简介:
🔮 Demo application showing the integration of Guess.js with Next.js
Callous-0923/agent-study17,826
语言:
HTML
星标数:
521
分叉数:
57
Jack47/hack-SysML17,845
语言:
Emacs Lisp
星标数:
520
分叉数:
68
简介:
The road to hack SysML and become an system expert
aqibsaeed/Urban-Sound-Classification17,852
语言:
Jupyter Notebook
星标数:
520
分叉数:
239
简介:
Urban sound classification using Deep Learning
awjuliani/TF-Tutorials17,853
语言:
Jupyter Notebook
星标数:
520
分叉数:
182
简介:
A collection of deep learning tutorials using Tensorflow and Python
akshaybahadur21/Autopilot17,869
语言:
Python
星标数:
519
分叉数:
183
简介:
A simple self-driving car module for humans 🚘 🛣️
关键参数与规格
关键参数与规格
参数值
语言Python
类别Tutorials
子类别ML/AI fundamentals
星标数521
分叉数147
贡献者1
创建日期2014-11-06
更新日期2026-10-12
1 天星标数0
7 天星标数1
排名17,835
上次排名17,619
排名变化-216
7 天星标排名11,525
上次 7 天星标排名11,580
7 天星标排名变化55
总星标排名18,761
上次总星标排名18,734
总星标排名变化-27
国家Netherlands
README 摘录

NIPS'14-SSL ========== Code for reproducing some key results of our NIPS 2014 paper on semi-supervised learning (SSL) with deep generative models. Welling **Semi-Supervised Learning with Deep Generative Models** Advances in Neural Information Processing Systems 27 (**NIPS 2014**), Montreal Please cite this paper when using this code for your research. _Warning_: This code is far from fully commented. For questions and bug reports, please send me an e-mail at _dpkingma[at]gmail. 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. Set an environment variable that points to subdirectory . For example, if you checked out this repo to your home directory: Qualitative results Flying through latent space of M2 model To generate movies of flying through latent-space of the M2 model, run: where is 'mnist' or 'svhn', and is the filename to save the movie file to. NOTE: This script

requires ffmpeg to be installed. Analogies Run: Quantitative results Learning M1 model To train model M1 (a standard Variational Auto-Encoder / DLGM with sperical Gaussian latent space): The M1 model does not incorporate class label, but is used in the paper's experiments for feature extration. Learning M1+M2 model, partially observed labels To run the semi-supervised learning experiments with model M1+M2: where is the number of labels, and is the random seed for Numpy. To reproduce the experimental

results in the paper, the number of labels should be in (100,600,1000,3000). Each experiment will run for 3000 epochs; since this code is not GPU-optimized, running many epochs might take a few days to complete. However, it is often not necessary to run the the algorithm for so many epochs to produce good results. Learning M2 model with fully observed labels For training a generative model with all labels: where is 'mnist', 'svhn', 'norb' or 'norb

_reshuffled'. Evaluate test-set error of models trained with all labels For evaluating the test-set classification error using already trained generative models of MNIST and SVHN: This iteratively builds, for each test-set image, an importance-sampled estimate of the posterior probability distribution over the class labels. This is an expensive procedure, but may be speed up by using fitting an inference model to the posterior distribution of class labels (which wasn't done in this case).

常见问题

记录了多少星标和分叉?

dpkingma/nips14-ssl 有 521 个星标和 147 个分叉。

仓库排名是多少?

dpkingma/nips14-ssl 排名第 17,835。

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

dpkingma/nips14-ssl 有 521 个星标,语言为 Python,类别为 Tutorials。

哪个仓库排名最接近?

dpkingma/nips14-ssl 与 Callous-0923/agent-study 比较,后者排名第 17,826,有 521 个星标。

README

NIPS'14-SSL

Code for reproducing some key results of our NIPS 2014 paper on semi-supervised learning (SSL) with deep generative models.

D.P. Kingma, D.J. Rezende, S. Mohamed, M. Welling
Semi-Supervised Learning with Deep Generative Models
Advances in Neural Information Processing Systems 27 (NIPS 2014), Montreal
http://arxiv.org/abs/1406.5298

Please cite this paper when using this code for your research.

Warning: This code is far from fully commented.

For questions and bug reports, please send me an e-mail at dpkingma[at]gmail.com.

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/dpkingma/nips14-ssl.git
  1. Set an environment variable ML_DATA_PATH that points to subdirectory data/. For example, if you checked out this repo to your home directory:
export ML_DATA_PATH="$HOME/nips14-ssl/data"

Qualitative results

Flying through latent space of M2 model

To generate movies of flying through latent-space of the M2 model, run:

python run_flying.py [dataset] 1 output.mkv

where dataset is 'mnist' or 'svhn', and target_filename is the filename to save the movie file to. NOTE: This script requires ffmpeg to be installed.

Analogies

Run:

python run_analogies.py [dataset] 1

Quantitative results

Learning M1 model

To train model M1 (a standard Variational Auto-Encoder / DLGM with sperical Gaussian latent space):

python run_gpulearn_z_x.py [dataset]

The M1 model does not incorporate class label, but is used in the paper's experiments for feature extration.

Learning M1+M2 model, partially observed labels

To run the semi-supervised learning experiments with model M1+M2:

python run_2layer_ssl.py [n_labels] [seed]

where n_labels is the number of labels, and seed is the random seed for Numpy. To reproduce the experimental results in the paper, the number of labels should be in (100,600,1000,3000). The random seed can be any integer. Each experiment will run for 3000 epochs; since this code is not GPU-optimized, running many epochs might take a few days to complete. However, it is often not necessary to run the the algorithm for so many epochs to produce good results.

Learning M2 model with fully observed labels

For training a generative model with all labels:

python run_gpulearn_yz_x.py [dataset]

where dataset is 'mnist', 'svhn', 'norb' or 'norb_reshuffled'.

Evaluate test-set error of models trained with all labels

For evaluating the test-set classification error using already trained generative models of MNIST and SVHN:

python run_sl.py [dataset]

This iteratively builds, for each test-set image, an importance-sampled estimate of the posterior probability distribution over the class labels. This is an expensive procedure, but may be speed up by using fitting an inference model to the posterior distribution of class labels (which wasn't done in this case).

排名相邻
同类项目