.gitignore
CITATION.cff
LICENSE.md
MANIFEST.in
README.md
README_FOR_TESTS.md
convergence_plot.png
mkdocs.yml
nbmf_convergence_validation.png
nbmf_convergence_validation_both_orientations.png
pixi.toml
pyproject.toml
pytest.ini
.github/workflows/ci.yml
.github/workflows/release.yml
data/animals.rda
data/lastfm.rda
data/paleo.rda
data/magron2022/animals_split.npz
data/magron2022/lastfm_split.npz
data/magron2022/paleo_split.npz
examples/display_reproduced_results.py
examples/reproduce_magron2022.py
examples/validate_implementation.py
examples/validate_magron_implementation.py
nbmf_mm/__init__.py
nbmf_mm/_base.py
nbmf_mm/_solver.py
nbmf_mm/_utils.py
nbmf_mm/_version.py
nbmf_mm.egg-info/PKG-INFO
nbmf_mm.egg-info/SOURCES.txt
nbmf_mm.egg-info/dependency_links.txt
nbmf_mm.egg-info/requires.txt
nbmf_mm.egg-info/top_level.txt
outputs/chauhan2025/all_experiments_summary.pkl
outputs/chauhan2025/figure1_animals_results.csv
outputs/chauhan2025/figure1_animals_results.pkl
outputs/chauhan2025/figure1_lastfm_results.csv
outputs/chauhan2025/figure1_lastfm_results.pkl
outputs/chauhan2025/figure1_paleo_results.csv
outputs/chauhan2025/figure1_paleo_results.pkl
outputs/chauhan2025/figure2_animals_results.pkl
outputs/chauhan2025/figure2_lastfm_results.pkl
outputs/chauhan2025/figure2_paleo_results.pkl
outputs/chauhan2025/figure3_animals_results.csv
outputs/chauhan2025/figure3_animals_results.pkl
outputs/chauhan2025/figure3_lastfm_results.csv
outputs/chauhan2025/figure3_lastfm_results.pkl
outputs/chauhan2025/figure3_paleo_results.csv
outputs/chauhan2025/figure3_paleo_results.pkl
outputs/chauhan2025/lastfm/nbmf-mm_model.npz
outputs/chauhan2025/lastfm/nbmf-mm_test_init.npz
outputs/chauhan2025/lastfm/nbmf-mm_val.npz
outputs/magron2022/animals/NBMF-EM_model.npz
outputs/magron2022/animals/NBMF-EM_test_init.npz
outputs/magron2022/animals/NBMF-EM_val.npz
outputs/magron2022/animals/NBMF-MM_model.npz
outputs/magron2022/animals/NBMF-MM_test_init.npz
outputs/magron2022/animals/NBMF-MM_val.npz
outputs/magron2022/animals/logPCA_model.npz
outputs/magron2022/animals/logPCA_test_init.npz
outputs/magron2022/animals/logPCA_val.npz
outputs/magron2022/figures/Figure_1_magron2022.png
outputs/magron2022/figures/Figure_2_magron2022.png
outputs/magron2022/figures/Figure_3_magron2022.png
outputs/magron2022/lastfm/NBMF-EM_model.npz
outputs/magron2022/lastfm/NBMF-EM_test_init.npz
outputs/magron2022/lastfm/NBMF-EM_val.npz
outputs/magron2022/lastfm/NBMF-MM_model.npz
outputs/magron2022/lastfm/NBMF-MM_test_init.npz
outputs/magron2022/lastfm/NBMF-MM_val.npz
outputs/magron2022/lastfm/logPCA_model.npz
outputs/magron2022/lastfm/logPCA_test_init.npz
outputs/magron2022/lastfm/logPCA_val.npz
outputs/magron2022/paleo/NBMF-EM_model.npz
outputs/magron2022/paleo/NBMF-EM_test_init.npz
outputs/magron2022/paleo/NBMF-EM_val.npz
outputs/magron2022/paleo/NBMF-MM_model.npz
outputs/magron2022/paleo/NBMF-MM_test_init.npz
outputs/magron2022/paleo/NBMF-MM_val.npz
outputs/magron2022/paleo/logPCA_model.npz
outputs/magron2022/paleo/logPCA_test_init.npz
outputs/magron2022/paleo/logPCA_val.npz
recipe/meta.yml
tests/conftest.py
tests/test_algorithm_correctness.py
tests/test_animals_optional.py
tests/test_api.py
tests/test_api_basic.py
tests/test_convergence.py
tests/test_mm_equivalence.py
tests/test_monotonic_objective.py
tests/test_nbmf_mm.py
tests/test_one_step_and_masking.py
tests/test_paper_default_orientation.py
tests/test_public_api.py
tests/test_reproducibility.py
tests/test_strict_parity_optional.py
tests/test_symmetry.py