{"id":20832394,"url":"https://github.com/ermongroup/sliced_score_matching","last_synced_at":"2025-05-08T01:21:23.656Z","repository":{"id":84088431,"uuid":"193785899","full_name":"ermongroup/sliced_score_matching","owner":"ermongroup","description":"Code for reproducing results in the sliced score matching paper (UAI 2019)","archived":false,"fork":false,"pushed_at":"2020-01-07T01:39:32.000Z","size":9152,"stargazers_count":145,"open_issues_count":1,"forks_count":23,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-31T16:09:48.433Z","etag":null,"topics":["density-estimation","energy-based-model","score-estimation","score-matching","uai2019"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ermongroup.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}},"created_at":"2019-06-25T21:29:50.000Z","updated_at":"2025-03-27T02:45:54.000Z","dependencies_parsed_at":null,"dependency_job_id":"709224d6-5312-4265-b317-03aae54461eb","html_url":"https://github.com/ermongroup/sliced_score_matching","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ermongroup%2Fsliced_score_matching","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ermongroup%2Fsliced_score_matching/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ermongroup%2Fsliced_score_matching/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ermongroup%2Fsliced_score_matching/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ermongroup","download_url":"https://codeload.github.com/ermongroup/sliced_score_matching/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252979475,"owners_count":21835059,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["density-estimation","energy-based-model","score-estimation","score-matching","uai2019"],"created_at":"2024-11-18T00:11:42.108Z","updated_at":"2025-05-08T01:21:23.640Z","avatar_url":"https://github.com/ermongroup.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Sliced Score Matching: A Scalable Approach to Density and Score Estimation\n\nThis repo contains a PyTorch implementation for the paper [Sliced Score Matching: A Scalable Approach to Density and Score Estimation](https://arxiv.org/abs/1905.07088), UAI 2019. Sliced score matching is a scalable variant of score matching that can be used to train unnormalized statistical models or estimating the score (derivatives of the log-density function) of data.\n\n\n\n## Dependencies\n\nThe following are packages needed for running this repo.\n\n- PyTorch==1.0.1\n- TensorFlow==1.12.0\n- tqdm\n- tensorboardX\n- Scipy\n- PyYAML\n\n\n\n## Running the experiments\n```bash\npython main.py --runner [runner name] --config [config file]\n```\n\nHere `runner name` is one of the following:\n\n- `DKEFRunner`. This corresponds to experiments on deep kernel exponential families.\n- `NICERunner`. This corresponds to the sanity check experiment of training a NICE model.\n- `VAERunner`. Experiments on VAEs.\n- `WAERunner`. Experiments on Wasserstein Auto-Encoders (WAEs).\n\nand `config file` is the directory of some YAML file in `configs/`.\n\n\n\nFor example, if you want to train an implicit VAE of latent size 8 on MNIST with Sliced Score Matching, just run\n\n```bash\npython main.py --runner VAERunner --config vae/mnist_ssm_8.yml\n```\n\n\n\n## References\n\nIf you find the idea or code useful for your research, please consider citing our paper:\n\n```\n@inproceedings{song2019sliced,\n  author    = {Yang Song and\n               Sahaj Garg and\n               Jiaxin Shi and\n               Stefano Ermon},\n  title     = {Sliced Score Matching: {A} Scalable Approach to Density and Score\n               Estimation},\n  booktitle = {Proceedings of the Thirty-Fifth Conference on Uncertainty in Artificial\n               Intelligence, {UAI} 2019, Tel Aviv, Israel, July 22-25, 2019},\n  pages     = {204},\n  year      = {2019},\n  url       = {http://auai.org/uai2019/proceedings/papers/204.pdf},\n}\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fermongroup%2Fsliced_score_matching","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fermongroup%2Fsliced_score_matching","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fermongroup%2Fsliced_score_matching/lists"}