{"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/arxiv-2601-21696","title":"Independent Component Discovery in Temporal Count Data","arxiv_id":"2601.21696","date":"2026-01-29","proceeding":"ICML","authors":["Alexandre Chaussard","Anna Bonnet","Sylvain Le Corff"],"abstract":"Advances in data collection are producing growing volumes of temporal count observations, making adapted modeling increasingly necessary. In this work, we introduce a generative framework for independent component analysis of temporal count data, combining regime-adaptive dynamics with Poisson log-normal emissions. The model identifies disentangled components with regime-dependent contributions, enabling representation learning and perturbations analysis. Notably, we establish the identifiability of the model, supporting principled interpretation. To learn the parameters, we propose an efficient amortized variational inference procedure. Experiments on simulated data evaluate recovery of the mixing function and latent sources across diverse settings, while real-world applications to gut microbiome and climate datasets reveal co-variation patterns and regime shifts consistent with domain-specific knowledge.","url_abs":"https://arxiv.org/abs/2601.21696","url_pdf":"https://arxiv.org/pdf/2601.21696","source":{"archive":null,"snapshot":"2025-07-28","note":"not in the Papers with Code archive (frozen at the snapshot)","row_kind":"graph","title_abstract_authors_date":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)"},"code_links":[],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2601.21696","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2601.21696"}},"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":[{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/lindermanlab/ssm","reach":null},{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/AlexandreChaussard/PLNICA","reach":null}],"summary":{"ran":8,"ran_fixture":2,"ran_violates":2,"ran_honours":1,"ran_draft_wrong":1,"unverified":9},"by_repo_kind":{"found_in_text":{"samples":23,"ran":14,"repositories":2}},"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":"3ff91398f359cd5c","entry":"Amortizer","repo":"AlexandreChaussard/PLNICA","repo_kind":"found_in_text","path":"plntime/models/plnica.py","file_url":"https://github.com/AlexandreChaussard/PLNICA/blob/HEAD/plntime/models/plnica.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3ff91398f359cd5c"}},{"code_sha256_prefix":"1e6010cdf5991ed9","entry":"BoundedVariance","repo":"AlexandreChaussard/PLNICA","repo_kind":"found_in_text","path":"plntime/models/plnica.py","file_url":"https://github.com/AlexandreChaussard/PLNICA/blob/HEAD/plntime/models/plnica.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"1e6010cdf5991ed9"}},{"code_sha256_prefix":"5e851d8b6581d907","entry":"CountsPreprocessing","repo":"AlexandreChaussard/PLNICA","repo_kind":"found_in_text","path":"plntime/models/plnica.py","file_url":"https://github.com/AlexandreChaussard/PLNICA/blob/HEAD/plntime/models/plnica.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5e851d8b6581d907"}},{"code_sha256_prefix":"9ee1f479314f202e","entry":"GammaICA","repo":"AlexandreChaussard/PLNICA","repo_kind":"found_in_text","path":"plntime/models/plnica.py","file_url":"https://github.com/AlexandreChaussard/PLNICA/blob/HEAD/plntime/models/plnica.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"9ee1f479314f202e"}},{"code_sha256_prefix":"b8654b91e191bd65","entry":"Scale","repo":"AlexandreChaussard/PLNICA","repo_kind":"found_in_text","path":"plntime/models/plnica.py","file_url":"https://github.com/AlexandreChaussard/PLNICA/blob/HEAD/plntime/models/plnica.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b8654b91e191bd65"}},{"code_sha256_prefix":"d4c42803a3f1bf1f","entry":"_generic_minimize","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"d4c42803a3f1bf1f"}},{"code_sha256_prefix":"a1a74d1bc72ad170","entry":"interpolate_data","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a1a74d1bc72ad170"}},{"code_sha256_prefix":"af569d910bc6c0e0","entry":"inv_softplus","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"af569d910bc6c0e0"}},{"code_sha256_prefix":"e236f0c0749c0118","entry":"logistic","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e236f0c0749c0118"}},{"code_sha256_prefix":"52a17dce281c6cdc","entry":"pca_with_imputation","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"52a17dce281c6cdc"}},{"code_sha256_prefix":"f09301051b93fe35","entry":"sgd_step","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.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":"f09301051b93fe35"}},{"code_sha256_prefix":"8a7769bf072e657d","entry":"softplus","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8a7769bf072e657d"}},{"code_sha256_prefix":"da3665169636f637","entry":"unflatten_optimizer_step","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"da3665169636f637"}},{"code_sha256_prefix":"1f4c6cad7d2dd727","entry":"viterbi_algorithm","repo":"AlexandreChaussard/PLNICA","repo_kind":"found_in_text","path":"plntime/models/plnica.py","file_url":"https://github.com/AlexandreChaussard/PLNICA/blob/HEAD/plntime/models/plnica.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"1f4c6cad7d2dd727"}},{"code_sha256_prefix":"502b20a38addc169","entry":"Emissions","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.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":"502b20a38addc169"}},{"code_sha256_prefix":"d5277747c201f50c","entry":"PLNICA","repo":"AlexandreChaussard/PLNICA","repo_kind":"found_in_text","path":"plntime/models/plnica.py","file_url":"https://github.com/AlexandreChaussard/PLNICA/blob/HEAD/plntime/models/plnica.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":"d5277747c201f50c"}},{"code_sha256_prefix":"15fca8d2d730e150","entry":"PoissonEmissions","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.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":"15fca8d2d730e150"}},{"code_sha256_prefix":"7eef9078256e830f","entry":"_LinearEmissions","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.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":"7eef9078256e830f"}},{"code_sha256_prefix":"0eb13b5256265669","entry":"_PoissonEmissionsMixin","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.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":"0eb13b5256265669"}},{"code_sha256_prefix":"cc0b8da3026faa75","entry":"_generic_sgd","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.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":"cc0b8da3026faa75"}},{"code_sha256_prefix":"0ab1c1ebfda21a13","entry":"adam_step","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.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":"0ab1c1ebfda21a13"}},{"code_sha256_prefix":"f9a03e6dd6ed1c4c","entry":"ensure_args_are_lists","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.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":"f9a03e6dd6ed1c4c"}},{"code_sha256_prefix":"4d9b99f52bc53847","entry":"rmsprop_step","repo":"lindermanlab/ssm","repo_kind":"found_in_text","path":"ssm/emissions.py","file_url":"https://github.com/lindermanlab/ssm/blob/HEAD/ssm/emissions.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":"4d9b99f52bc53847"}}]},"arxiv_metadata":{"licence":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)","fields":["title","abstract","authors","date"],"primary_category":"stat.ML","source":"arxiv_2026.jsonl"},"syntology_extracted_results":null}