{ "info": { "author": "Valentin Lievin", "author_email": "valentin.lievin@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# BIVA (PyTorch)\n\nOfficial PyTorch BIVA implementation (BIVA: A Very Deep Hierarchy of Latent Variables forGenerative Modeling) for binarized MNIST and CIFAR. The original Tensorflow implementation can be found [here](https://github.com/larsmaaloee/BIVA).\n\n## run the experiments\n\n```bash\nconda create --name biva python=3.7\nconda activate biva\npip install -r requirements.txt\nCUDA_VISIBLE_DEVICES=0 python run_deepvae.py --dataset binmnist --q_dropout 0.5 --p_dropout 0.5 --device cuda\nCUDA_VISIBLE_DEVICES=0 python run_deepvae.py --dataset cifar10 --q_dropout 0.2 --p_dropout 0 --device cuda\n```\n\n## Citation\n\n```\n@article{maale2019biva,\n title={BIVA: A Very Deep Hierarchy of Latent Variables for Generative Modeling},\n author={Lars Maal\u00f8e and Marco Fraccaro and Valentin Li\u00e9vin and Ole Winther},\n year={2019},\n eprint={1902.02102},\n archivePrefix={arXiv},\n primaryClass={stat.ML}\n}\n```\n\n## Pip package\n\n### install requirements\n\n* `pytorch 1.3.0`\n* `torchvision`\n* `matplotlib`\n* `tensorboard`\n* `booster-pytorch==0.0.2`\n\n### install package\n\n```bash\npip install git+https://github.com/vlievin/biva-pytorch.git\n```\n\n### build deep VAEs\n\n```python\nimport torch\nfrom torch.distributions import Bernoulli\n\nfrom biva import DenseNormal, ConvNormal\nfrom biva import VAE, LVAE, BIVA\n\n# build a 2 layers VAE for binary images\n\n# define the stochastic layers\nz = [\n {'N': 8, 'kernel': 5, 'block': ConvNormal}, # z1\n {'N': 16, 'block': DenseNormal} # z2\n]\n\n# define the intermediate layers\n# each stage defines the configuration of the blocks for q_(z_{l} | z_{l-1}) and p_(z_{l-1} | z_{l})\n# each stage is defined by a sequence of 3 resnet blocks\n# each block is degined by a tuple [filters, kernel, stride]\nstages = [\n [[64, 3, 1], [64, 3, 1], [64, 3, 2]],\n [[64, 3, 1], [64, 3, 1], [64, 3, 2]]\n]\n\n# build the model\nmodel = VAE(tensor_shp=(-1, 1, 28, 28), stages=stages, latents=z, dropout=0.5)\n\n# forward pass and data-dependent initialization\nx = torch.empty((8, 1, 28, 28)).uniform_().bernoulli()\ndata = model(x) # data = {'x_' : p(x|z), z \\sim q(z|x), 'kl': [kl_z1, kl_z2]}\n\n# sample from prior\ndata = model.sample_from_prior(N=16) # data = {'x_' : p(x|z), z \\sim p(z)}\nsamples = Bernoulli(logits=data['x_']).sample()\n\n```", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/vlievin/biva-pytorch", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "biva-pytorch", "package_url": "https://pypi.org/project/biva-pytorch/", "platform": "", "project_url": "https://pypi.org/project/biva-pytorch/", "project_urls": { "Homepage": "https://github.com/vlievin/biva-pytorch" }, "release_url": "https://pypi.org/project/biva-pytorch/0.1.4/", "requires_dist": null, "requires_python": "", "summary": "Official PyTorch BIVA implementation (BIVA: A Very Deep Hierarchy of Latent Variables for Generative Modeling)", "version": "0.1.4", "yanked": false, "yanked_reason": null }, "last_serial": 7535647, "releases": { "0.1.2": [ { "comment_text": "", "digests": { "md5": "8bd188f3b40f46d675ab74a2fb223cbd", "sha256": "dcb3c75be4259f59ec79106fe5947a880baca6ff3d611aadc94ddaa083bc44f8" }, "downloads": -1, "filename": "biva-pytorch-0.1.2.tar.gz", "has_sig": false, "md5_digest": "8bd188f3b40f46d675ab74a2fb223cbd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20504, "upload_time": "2019-10-27T11:40:05", "upload_time_iso_8601": "2019-10-27T11:40:05.815686Z", "url": "https://files.pythonhosted.org/packages/f1/c7/b3e5817b429efdc52c10a7d80edd703d51f43204cf9bb4935e11d32ad74a/biva-pytorch-0.1.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "8ffd13e0f410ff967309b99f02656271", "sha256": "9c7891e7a8cfb9a2ecbf2b90855431c2d1f76ae5d273c11d0a565ad5ffa437ad" }, "downloads": -1, "filename": "biva-pytorch-0.1.3.tar.gz", "has_sig": false, "md5_digest": "8ffd13e0f410ff967309b99f02656271", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20903, "upload_time": "2019-10-27T19:55:21", "upload_time_iso_8601": "2019-10-27T19:55:21.075339Z", "url": "https://files.pythonhosted.org/packages/d4/bb/54a5df73d642141a7be6f984863dc04ba85c88c731f69b5556843efbe95b/biva-pytorch-0.1.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "8e3638ea0e6c63a31d3876b51c5325e0", "sha256": "1c9e12b49146c50d2c8c2f9ae3a8e5aa518f70bbb2023e2d3c3e93798646ada8" }, "downloads": -1, "filename": "biva-pytorch-0.1.4.tar.gz", "has_sig": false, "md5_digest": "8e3638ea0e6c63a31d3876b51c5325e0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26092, "upload_time": "2020-06-22T16:55:32", "upload_time_iso_8601": "2020-06-22T16:55:32.431989Z", "url": "https://files.pythonhosted.org/packages/77/4e/d0511f08908d7fe717a96feee637f5bae5dde3cde26b00f0b14dba5b6b35/biva-pytorch-0.1.4.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8e3638ea0e6c63a31d3876b51c5325e0", "sha256": "1c9e12b49146c50d2c8c2f9ae3a8e5aa518f70bbb2023e2d3c3e93798646ada8" }, "downloads": -1, "filename": "biva-pytorch-0.1.4.tar.gz", "has_sig": false, "md5_digest": "8e3638ea0e6c63a31d3876b51c5325e0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26092, "upload_time": "2020-06-22T16:55:32", "upload_time_iso_8601": "2020-06-22T16:55:32.431989Z", "url": "https://files.pythonhosted.org/packages/77/4e/d0511f08908d7fe717a96feee637f5bae5dde3cde26b00f0b14dba5b6b35/biva-pytorch-0.1.4.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }