{"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/learning-to-jump-thinning-and-thickening","title":"Learning to Jump: Thinning and Thickening Latent Counts for Generative Modeling","arxiv_id":"2305.18375","date":"2023-05-28","proceeding":null,"authors":["Tianqi Chen","Mingyuan Zhou"],"abstract":"Learning to denoise has emerged as a prominent paradigm to design state-of-the-art deep generative models for natural images. How to use it to model the distributions of both continuous real-valued data and categorical data has been well studied in recently proposed diffusion models. However, it is found in this paper to have limited ability in modeling some other types of data, such as count and non-negative continuous data, that are often highly sparse, skewed, heavy-tailed, and/or overdispersed. To this end, we propose learning to jump as a general recipe for generative modeling of various types of data. Using a forward count thinning process to construct learning objectives to train a deep neural network, it employs a reverse count thickening process to iteratively refine its generation through that network. We demonstrate when learning to jump is expected to perform comparably to learning to denoise, and when it is expected to perform better. For example, learning to jump is recommended when the training data is non-negative and exhibits strong sparsity, skewness, heavy-tailedness, and/or heterogeneity.","url_abs":"https://arxiv.org/abs/2305.18375v1","url_pdf":"https://arxiv.org/pdf/2305.18375v1.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":"learning-to-jump-thinning-and-thickening","repo_url":"https://github.com/tqch/poisson-jump","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[],"methods":[{"method_slug":"diffusion","method_name":"Diffusion"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2305.18375","atlas_url":"https://app.syntology.ai/?focus=2305.18375","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2305.18375"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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":"deterministic:regex_extraction","url":"https://github.com/tqch/poisson-jump","reach":null}],"summary":{"ran_draft_wrong":2,"unverified":2},"by_repo_kind":{"official":{"samples":4,"ran":2,"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":"837df808f838e4e5","entry":"register_diffusion","repo":"tqch/poisson-jump","repo_kind":"official","path":"poisson_jump/diffusions/jump.py","file_url":"https://github.com/tqch/poisson-jump/blob/HEAD/poisson_jump/diffusions/jump.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"837df808f838e4e5"}},{"code_sha256_prefix":"98efa09e33a269e9","entry":"register_diffusion","repo":"tqch/poisson-jump","repo_kind":"official","path":"poisson_jump/diffusions/jump.py","file_url":"https://github.com/tqch/poisson-jump/blob/HEAD/poisson_jump/diffusions/jump.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"98efa09e33a269e9"}},{"code_sha256_prefix":"c610d535c0362880","entry":"BaseDiffusion","repo":"tqch/poisson-jump","repo_kind":"official","path":"poisson_jump/diffusions/jump.py","file_url":"https://github.com/tqch/poisson-jump/blob/HEAD/poisson_jump/diffusions/jump.py","link_basis":"first_harvest_node","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":"c610d535c0362880"}},{"code_sha256_prefix":"5752b2674727a43a","entry":"OrdinalJumpDiffusion","repo":"tqch/poisson-jump","repo_kind":"official","path":"poisson_jump/diffusions/jump.py","file_url":"https://github.com/tqch/poisson-jump/blob/HEAD/poisson_jump/diffusions/jump.py","link_basis":"first_harvest_node","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":"5752b2674727a43a"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}