{"id":31368388,"url":"https://github.com/dirmeier/hierarchical-vqvae","last_synced_at":"2026-06-28T02:32:30.125Z","repository":{"id":311050246,"uuid":"844878856","full_name":"dirmeier/hierarchical-vqvae","owner":"dirmeier","description":"A hierarchical VQ-VAE implementation in Flax","archived":false,"fork":false,"pushed_at":"2025-08-21T19:14:26.000Z","size":344,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-04-17T00:27:13.021Z","etag":null,"topics":["flax","jax","python","vector-quantization","vq-vae"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dirmeier.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-08-20T06:30:41.000Z","updated_at":"2026-02-08T18:29:34.000Z","dependencies_parsed_at":"2025-08-21T21:52:56.633Z","dependency_job_id":"45519c46-43bb-4243-84a5-2a6a93894719","html_url":"https://github.com/dirmeier/hierarchical-vqvae","commit_stats":null,"previous_names":["dirmeier/hierarchical-vqvae"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/dirmeier/hierarchical-vqvae","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dirmeier%2Fhierarchical-vqvae","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dirmeier%2Fhierarchical-vqvae/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dirmeier%2Fhierarchical-vqvae/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dirmeier%2Fhierarchical-vqvae/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dirmeier","download_url":"https://codeload.github.com/dirmeier/hierarchical-vqvae/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dirmeier%2Fhierarchical-vqvae/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34875357,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-28T02:00:05.809Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["flax","jax","python","vector-quantization","vq-vae"],"created_at":"2025-09-27T16:09:48.758Z","updated_at":"2026-06-28T02:32:30.120Z","avatar_url":"https://github.com/dirmeier.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Hierarchical VQ-VAE\n\n[![ci](https://github.com/dirmeier/hierarchical-vqvae/actions/workflows/ci.yaml/badge.svg)](https://github.com/dirmeier/hierarchical-vqvae/actions/workflows/ci.yaml)\n\n## About\n\nThis repository implements a hierarchical three-level VQ-VAE which has been proposed in [Generating Diverse High-Fidelity Images with VQ-VAE](https://arxiv.org/abs/1906.00446) using JAX and Flax.\n\n\u003e [!WARNING]\n\u003e The implementation (or maybe the hierarchical VQ-VAE) seems fairly sensitive to initialization. With a random seed of 1 (i.e., `config.rng_key=1`) the training is stable and converges\n\u003e after ten epochs (at least on a Nvidia V100). With some other seeds the loss might diverge towards infinity. This behaviour is the same between a ResNetV1 block and a\n\u003e ConvNext block.\n\n## Example usage\n\nThe `experiments` folder contains a use case on CIFAR10. To run the experiments, first download the latest release\nand install all dependencies via:\n\n```bash\nwget -qO- https://github.com/dirmeier/hierarchical-vqvae/archive/refs/tags/\u003cTAG\u003e.tar.gz | tar zxvf -\nuv sync --all-groups\n```\n\nTo train a model, just execute:\n\n```bash\ncd experiments/cifar10\npython main.py\n  --config=config.py\n  --workdir=\u003cdir\u003e\n  (--usewand)\n```\n\nBelow are reconstructed images from the VQ-VAE using a ConvNext residual block.\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"experiments/cifar10/figures/reconstructed_images.png\" width=\"750\"\u003e\n\u003c/div\u003e\n\n## Installation\n\nTo install the latest GitHub \u003cTAG\u003e, just call the following on the command line:\n\n```bash\npip install git+https://github.com/dirmeier/hierarchical-vqvae@\u003cTAG\u003e\n```\n\n## Author\n\nSimon Dirmeier \u003ca href=\"mailto:simd23@pm.me\"\u003esimd23 @ pm dot me\u003c/a\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdirmeier%2Fhierarchical-vqvae","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdirmeier%2Fhierarchical-vqvae","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdirmeier%2Fhierarchical-vqvae/lists"}