{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/normalizing-flows-for-probabilistic-modeling","title":"Normalizing Flows for Probabilistic Modeling and Inference","arxiv_id":"1912.02762","date":"2019-12-05","proceeding":null,"authors":["George Papamakarios","Eric Nalisnick","Danilo Jimenez Rezende","Shakir Mohamed","Balaji Lakshminarayanan"],"abstract":"Normalizing flows provide a general mechanism for defining expressive probability distributions, only requiring the specification of a (usually simple) base distribution and a series of bijective transformations. There has been much recent work on normalizing flows, ranging from improving their expressive power to expanding their application. We believe the field has now matured and is in need of a unified perspective. In this review, we attempt to provide such a perspective by describing flows through the lens of probabilistic modeling and inference. We place special emphasis on the fundamental principles of flow design, and discuss foundational topics such as expressive power and computational trade-offs. We also broaden the conceptual framing of flows by relating them to more general probability transformations. Lastly, we summarize the use of flows for tasks such as generative modeling, approximate inference, and supervised learning.","url_abs":"https://arxiv.org/abs/1912.02762v2","url_pdf":"https://arxiv.org/pdf/1912.02762v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"normalizing-flows-for-probabilistic-modeling","repo_url":"https://github.com/StanleyN1/normalizing-flows","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"normalizing-flows-for-probabilistic-modeling","repo_url":"https://github.com/VishakhG/normalizing-flows","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"normalizing-flows-for-probabilistic-modeling","repo_url":"https://github.com/fdesanti/hyperion","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"normalizing-flows-for-probabilistic-modeling","repo_url":"https://github.com/friedmanroy/hi-generation","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"normalizing-flows-for-probabilistic-modeling","repo_url":"https://github.com/ispamm/realnvp-demo-pytorch","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"normalizing-flows-for-probabilistic-modeling","repo_url":"https://github.com/mackelab/nflows-nofork","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"normalizing-flows-for-probabilistic-modeling","repo_url":"https://gitlab.com/i-flow/i-flow","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":null}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1912.02762","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1912.02762"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/VishakhG/normalizing-flows","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/mackelab/nflows-nofork","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ispamm/realnvp-demo-pytorch","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/fdesanti/hyperion","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://gitlab.com/i-flow/i-flow","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/StanleyN1/normalizing-flows","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/friedmanroy/hi-generation","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":3},"by_repo_kind":{"listed":{"samples":3,"ran":0,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"2f1507c460b87cfc","entry":"get_window","repo":"fdesanti/hyperion","repo_kind":"listed","path":"hyperion/core/fft/windows.py","file_url":"https://github.com/fdesanti/hyperion/blob/HEAD/hyperion/core/fft/windows.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2f1507c460b87cfc"}},{"code_sha256_prefix":"8d83af094c8f5400","entry":"planck","repo":"fdesanti/hyperion","repo_kind":"listed","path":"hyperion/core/fft/windows.py","file_url":"https://github.com/fdesanti/hyperion/blob/HEAD/hyperion/core/fft/windows.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8d83af094c8f5400"}},{"code_sha256_prefix":"e3baf92c9558b727","entry":"tukey","repo":"fdesanti/hyperion","repo_kind":"listed","path":"hyperion/core/fft/windows.py","file_url":"https://github.com/fdesanti/hyperion/blob/HEAD/hyperion/core/fft/windows.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e3baf92c9558b727"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}