├── .gitignore ├── .travis.yml ├── AUTHORS.md ├── COPYING.txt ├── JMLR.txt ├── MANIFEST.in ├── README.md ├── docs └── source │ ├── README.rst │ ├── code │ ├── snippet_bd.py │ ├── snippet_bmf.py │ ├── snippet_icm.py │ ├── snippet_lfnmf.py │ ├── snippet_lsnmf.py │ ├── snippet_nmf_conn.py │ ├── snippet_nmf_div.py │ ├── snippet_nmf_fro.py │ ├── snippet_nsnmf.py │ ├── snippet_pmf.py │ ├── snippet_pmfcc.py │ ├── snippet_psmf.py │ ├── snippet_snmf_l.py │ ├── snippet_snmf_r.py │ ├── snippet_snmnmf.py │ ├── usage.py │ ├── usage1.py │ ├── usage2.py │ ├── usage3.py │ ├── usage4.py │ ├── usage5.py │ ├── usage6.py │ └── usage7.py │ ├── conf.py │ ├── content-factorization.rst │ ├── content-initialization.rst │ ├── content-quality-performance.rst │ ├── content-utils.rst │ ├── images │ ├── all_aml_consensus2.png │ ├── all_aml_consensus3.png │ ├── base │ │ ├── google-logo.png │ │ └── orange-logo.png │ ├── cbcl_faces_10_iters_SNMF_L.png │ ├── cbcl_faces_10_iters_SNMF_R.png │ ├── cbcl_faces_50_iters_LSNMF.png │ ├── cbcl_faces_50_iters_NMF.png │ ├── documents_basisW1.png │ ├── documents_basisW13.png │ ├── documents_basisW15.png │ ├── documents_basisW4.png │ ├── documents_basisW5.png │ ├── medulloblastoma_consensus2.png │ ├── medulloblastoma_consensus3.png │ ├── orl_faces_200_iters_small_LSNMF.png │ ├── orl_faces_200_iters_small_NMF.png │ ├── orl_faces_500_iters_large_LSNMF.png │ └── orl_faces_5_iters_small_PSMF_prior5.png │ ├── index.rst │ ├── nimfa.datasets.rst │ ├── nimfa.examples.all_aml.rst │ ├── nimfa.examples.cbcl_images.rst │ ├── nimfa.examples.documents.rst │ ├── nimfa.examples.gene_func_prediction.rst │ ├── nimfa.examples.medulloblastoma.rst │ ├── nimfa.examples.orl_images.rst │ ├── nimfa.examples.recommendations.rst │ ├── nimfa.examples.rst │ ├── nimfa.examples.synthetic.rst │ ├── nimfa.methods.factorization.bd.rst │ ├── nimfa.methods.factorization.bmf.rst │ ├── nimfa.methods.factorization.icm.rst │ ├── nimfa.methods.factorization.lfnmf.rst │ ├── nimfa.methods.factorization.lsnmf.rst │ ├── nimfa.methods.factorization.nmf.rst │ ├── nimfa.methods.factorization.nsnmf.rst │ ├── nimfa.methods.factorization.pmf.rst │ ├── nimfa.methods.factorization.pmfcc.rst │ ├── nimfa.methods.factorization.psmf.rst │ ├── nimfa.methods.factorization.rst │ ├── nimfa.methods.factorization.sepnmf.rst │ ├── nimfa.methods.factorization.snmf.rst │ ├── nimfa.methods.factorization.snmnmf.rst │ ├── nimfa.methods.rst │ ├── nimfa.methods.seeding.fixed.rst │ ├── nimfa.methods.seeding.nndsvd.rst │ ├── nimfa.methods.seeding.random.rst │ ├── nimfa.methods.seeding.random_c.rst │ ├── nimfa.methods.seeding.random_vcol.rst │ ├── nimfa.methods.seeding.rst │ ├── nimfa.models.mf_fit.rst │ ├── nimfa.models.mf_track.rst │ ├── nimfa.models.nmf.rst │ ├── nimfa.models.nmf_mm.rst │ ├── nimfa.models.nmf_ns.rst │ ├── nimfa.models.nmf_std.rst │ ├── nimfa.models.rst │ ├── nimfa.models.smf.rst │ ├── nimfa.utils.linalg.rst │ ├── nimfa.utils.rst │ └── nimfa.utils.utils.rst ├── nimfa ├── __init__.py ├── datasets │ ├── ALL_AML │ │ ├── ALL_AML_data.txt │ │ ├── ALL_AML_genes.txt │ │ └── ALL_AML_samples.txt │ ├── CBCL_faces │ │ └── README.md │ ├── Medlars │ │ └── README.md │ ├── Medulloblastoma │ │ ├── Medulloblastoma_data.txt │ │ ├── Medulloblastoma_genes.txt │ │ └── Medulloblastomas_samples.txt │ ├── MovieLens │ │ └── README.md │ ├── ORL_faces │ │ ├── README │ │ ├── s1 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s10 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ ├── 9.pgm │ │ │ └── target.jpg │ │ ├── s11 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s12 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s13 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s14 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s15 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s16 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s17 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s18 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s19 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s2 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s20 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s21 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s22 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s23 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s24 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s25 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s26 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s27 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s28 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s29 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s3 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s30 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s31 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s32 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s33 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s34 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s35 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s36 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s37 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s38 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s39 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s4 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s40 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s5 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s6 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s7 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ ├── s8 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ │ └── s9 │ │ │ ├── 1.pgm │ │ │ ├── 10.pgm │ │ │ ├── 2.pgm │ │ │ ├── 3.pgm │ │ │ ├── 4.pgm │ │ │ ├── 5.pgm │ │ │ ├── 6.pgm │ │ │ ├── 7.pgm │ │ │ ├── 8.pgm │ │ │ └── 9.pgm │ ├── S_cerevisiae_FC │ │ └── README.md │ └── __init__.py ├── examples │ ├── __init__.py │ ├── all_aml.py │ ├── cbcl_images.py │ ├── documents.py │ ├── gene_func_prediction.py │ ├── medulloblastoma.py │ ├── orl_images.py │ ├── recommendations.py │ └── synthetic.py ├── methods │ ├── __init__.py │ ├── factorization │ │ ├── __init__.py │ │ ├── bd.py │ │ ├── bmf.py │ │ ├── icm.py │ │ ├── lfnmf.py │ │ ├── lsnmf.py │ │ ├── nmf.py │ │ ├── nsnmf.py │ │ ├── pmf.py │ │ ├── pmfcc.py │ │ ├── psmf.py │ │ ├── sepnmf.py │ │ ├── snmf.py │ │ └── snmnmf.py │ └── seeding │ │ ├── __init__.py │ │ ├── fixed.py │ │ ├── nndsvd.py │ │ ├── random.py │ │ ├── random_c.py │ │ └── random_vcol.py ├── models │ ├── __init__.py │ ├── mf_fit.py │ ├── mf_track.py │ ├── nmf.py │ ├── nmf_mm.py │ ├── nmf_ns.py │ ├── nmf_std.py │ └── smf.py ├── tests │ ├── __init__.py │ └── test_examples.py └── utils │ ├── __init__.py │ ├── linalg.py │ └── utils.py ├── requirements-tests.txt ├── requirements.txt ├── sc-RNAseq_data ├── Cortex_hippocampus_input_.zip ├── lungEpithelium_full_input_.zip ├── lungEpithelium_reduced_input_.zip └── mouseBlastocyst_input_.zip ├── sc-RNAseq_scripts ├── NMF_scRNAseq.py └── nmfHeatmap.R ├── setup.cfg ├── setup.py └── tox.ini /.gitignore: -------------------------------------------------------------------------------- 1 | # Ignore temporary editor files. 2 | *.swp 3 | *~ 4 | 5 | # Ignore project files 6 | *.pyproj 7 | 8 | # Ignore dot files. 9 | .* 10 | 11 | # Ignore backup files. 12 | *.orig 13 | *.bak 14 | 15 | # Ignore temporary editor files. 16 | *.swp 17 | *~ 18 | 19 | # Ignore binaries. 20 | *.py[cod] 21 | *.so 22 | *.dll 23 | 24 | # Ignore built documentation 25 | html 26 | 27 | # Ignore files created by setup.py. 28 | build 29 | dist 30 | MANIFEST 31 | *.egg-info 32 | *.egg 33 | distribute*.tar.gz 34 | 35 | # Ignore virtualenv folder 36 | venv 37 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | # vim ft=yaml 2 | # travis-ci.org definition for Nimfa tests 3 | language: python 4 | 5 | sudo: false 6 | 7 | cache: 8 | apt: true 9 | 10 | addons: 11 | apt: 12 | packages: 13 | - libatlas-dev 14 | - libatlas-base-dev 15 | - liblapack-dev 16 | python: 17 | - "2.7" 18 | # - "3.4" 19 | 20 | before_install: 21 | - wget http://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh -O miniconda.sh 22 | - bash miniconda.sh -b -p $HOME/miniconda 23 | - export PATH="$HOME/miniconda/bin:$PATH" 24 | - conda update --yes conda 25 | 26 | install: 27 | - conda install --yes python=$TRAVIS_PYTHON_VERSION pip numpy scipy pytest matplotlib Pillow 28 | - pip install pep8 python-coveralls pytest-cov 29 | - pip install -e . 30 | 31 | before_script: 32 | - "export DISPLAY=:99.0" 33 | - "sh -e /etc/init.d/xvfb start" 34 | # - sleep 3 # give xvfb some time to start 35 | - wget http://files.grouplens.org/datasets/movielens/ml-100k.zip -P nimfa/datasets/MovieLens/ 36 | - unzip -j nimfa/datasets/MovieLens/ml-100k.zip -d nimfa/datasets/MovieLens/ 37 | - wget http://cbcl.mit.edu/projects/cbcl/software-datasets/faces.tar.gz -P nimfa/datasets/CBCL_faces/ 38 | - tar zxvf nimfa/datasets/CBCL_faces/faces.tar.gz -C nimfa/datasets/CBCL_faces/ 39 | - tar zxvf nimfa/datasets/CBCL_faces/face.train.tar.gz -C nimfa/datasets/CBCL_faces/ 40 | - mv nimfa/datasets/CBCL_faces/train/face/ nimfa/datasets/CBCL_faces/ 41 | 42 | script: 43 | - py.test --cov=nimfa 44 | 45 | after_success: 46 | - coveralls 47 | 48 | # TODO Later if you decide to upload tagged releases to pypi automagically 49 | # see https://docs.travis-ci.com/user/deployment/pypi/ for details 50 | #deploy: 51 | # provider: pypi 52 | # distributions: sdist 53 | # user: YOURUSERNAME 54 | # password: 55 | # secure: YOUR_ENCRYPTED_WITH_TRAVISTOOLS_PASSWORD_FOR_PYPI 56 | # on: 57 | # tags: true 58 | # branch: master 59 | # repo: YOURGITHUBLOGIN/nimfa 60 | # condition: "$TRAVIS_PYTHON_VERSION == 2.7 && $TRAVIS_TAG =~ ^v[0-9]*[.][.0-9]*" 61 | -------------------------------------------------------------------------------- /AUTHORS.md: -------------------------------------------------------------------------------- 1 | .. -*- mode: rst -*- 2 | 3 | 4 | This is a community effort, and as such many people have contributed 5 | to it over the years. 6 | 7 | History 8 | ------- 9 | 10 | This project was started in 2011 as a Google Summer of Code project by 11 | Marinka Zitnik. 12 | 13 | People 14 | ------ 15 | 16 | The following people have been core contributors to Nimfa's development and maintenance: 17 | 18 | * Yaroslav Halchenko 19 | * Vamsi Krishna 20 | * Mariano Tepper 21 | * Marko Toplak 22 | * Marinka Zitnik 23 | * Blaz Zupan 24 | -------------------------------------------------------------------------------- /COPYING.txt: -------------------------------------------------------------------------------- 1 | New BSD License 2 | 3 | Copyright (c) 2016 The Nimfa developers. 4 | All rights reserved. 5 | 6 | 7 | Redistribution and use in source and binary forms, with or without 8 | modification, are permitted provided that the following conditions are met: 9 | 10 | a. Redistributions of source code must retain the above copyright notice, 11 | this list of conditions and the following disclaimer. 12 | b. Redistributions in binary form must reproduce the above copyright 13 | notice, this list of conditions and the following disclaimer in the 14 | documentation and/or other materials provided with the distribution. 15 | c. Neither the name of the Nimfa Developers nor the names of 16 | its contributors may be used to endorse or promote products 17 | derived from this software without specific prior written 18 | permission. 19 | 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 22 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 23 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 24 | ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR 25 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 26 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 27 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 28 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 | LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30 | OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH 31 | DAMAGE. 32 | -------------------------------------------------------------------------------- /JMLR.txt: -------------------------------------------------------------------------------- 1 | JMLR Warranty 2 | ------------- 3 | 4 | THIS SOURCE CODE IS SUPPLIED "AS IS" WITHOUT WARRANTY OF ANY KIND, AND ITS AUTHOR AND THE JOURNAL OF MACHINE LEARNING RESEARCH (JMLR) 5 | AND JMLR'S PUBLISHERS AND DISTRIBUTORS, DISCLAIM ANY AND ALL WARRANTIES, INCLUDING BUT NOT LIMITED TO ANY IMPLIED WARRANTIES OF 6 | MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, AND ANY WARRANTIES OR NON INFRINGEMENT. THE USER ASSUMES ALL LIABILITY 7 | AND RESPONSIBILITY FOR USE OF THIS SOURCE CODE, AND NEITHER THE AUTHOR NOR JMLR, NOR JMLR'S PUBLISHERS AND DISTRIBUTORS, WILL BE 8 | LIABLE FOR DAMAGES OF ANY KIND RESULTING FROM ITS USE. 9 | 10 | Without limiting the generality of the foregoing, neither the author, nor JMLR, nor JMLR's publishers and distributors, warrant that 11 | the Source Code will be error-free, will operate without interruption, or will meet the needs of the user. 12 | -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | recursive-include docs * 2 | recursive-include nimfa/datasets/ALL_AML * 3 | recursive-include nimfa/datasets/CBCL_faces/README.md 4 | recursive-include nimfa/datasets/Medlars/README.md 5 | recursive-include nimfa/datasets/Medulloblastoma * 6 | recursive-include nimfa/datasets/MovieLens/README.md 7 | recursive-include nimfa/datasets/ORL_faces * 8 | recursive-include nimfa/datasets/S_cerevisiae_FC/README.md 9 | include *.py *.txt *.rst *.md 10 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | **Note** 3 | - The module is based on nimfa 1.3.2 now. 4 | - The scripts to run on single-cell RNAseq data are put under the folder: **sc-RNAseq_scripts** 5 | - The data used in the paper are in the folder: **sc-RNAseq_data** 6 | - The input files (e.g., "lungEpithelium_full_input_.csv") should be put in the same folder with NMF_scRNAseq.py 7 | - The NMF_scRNAseq.py could run iteratively on subgroups, controlled by max_depth 8 | - The NMF_scRNAseq.py run in the desired rank ranges, specificed by --min_rank and --max_rank 9 | 10 | 11 | **install all necessary dependencies before hand** 12 | - python: pandas, docopt, nimfa 13 | - R: pheatmap (ccshao/pheatmap), vegan, RColorBrewer 14 | 15 | Example useages: 16 | ``` 17 | python NMF_scRNAseq.py -h 18 | python NMF_scRNAseq.py --min_rank=4 --max_rank=5 --max_depth=2 --RHeatmap=/fullpath/nmfHeatmap.R 19 | ``` 20 | 21 | --------------- 22 | 23 | 24 | Nimfa 25 | ----- 26 | 27 | [![build: passing](https://img.shields.io/travis/marinkaz/nimfa.svg)](https://travis-ci.org/marinkaz/nimfa) 28 | [![build: passing](https://coveralls.io/repos/marinkaz/nimfa/badge.svg)](https://coveralls.io/github/marinkaz/nimfa?branch=master) 29 | 30 | Nimfa is a Python module that implements many algorithms for nonnegative matrix factorization. Nimfa is distributed under the BSD license. 31 | 32 | The project was started in 2011 by Marinka Zitnik as a Google Summer of Code project, and since 33 | then many volunteers have contributed. See AUTHORS file for a complete list of contributors. 34 | 35 | It is currently maintained by a team of volunteers. 36 | 37 | Important links 38 | --------------- 39 | 40 | - Official source code repo: https://github.com/marinkaz/nimfa 41 | - HTML documentation (stable release): http://nimfa.biolab.si 42 | - Download releases: http://github.com/marinkaz/nimfa/releases 43 | - Issue tracker: http://github.com/marinkaz/nimfa/issues 44 | 45 | Dependencies 46 | ------------ 47 | 48 | Nimfa is tested to work under Python 2.7 and Python 3.4. 49 | 50 | The required dependencies to build the software are NumPy >= 1.7.0, 51 | SciPy >= 0.12.0. 52 | 53 | For running the examples Matplotlib >= 1.1.1 is required. 54 | 55 | Install 56 | ------- 57 | 58 | This package uses setuptools, which is a common way of installing 59 | python modules. To install in your home directory, use: 60 | 61 | python setup.py install --user 62 | 63 | To install for all users on Unix/Linux: 64 | 65 | sudo python setup.py install 66 | 67 | For more detailed installation instructions, 68 | see the web page http://nimfa.biolab.si 69 | 70 | Use 71 | --- 72 | 73 | Run alternating least squares nonnegative matrix factorization with projected gradients and Random Vcol initialization algorithm on medulloblastoma gene expression data:: 74 | 75 | >>> import nimfa 76 | >>> V = nimfa.examples.medulloblastoma.read(normalize=True) 77 | >>> lsnmf = nimfa.Lsnmf(V, seed='random_vcol', rank=50, max_iter=100) 78 | >>> lsnmf_fit = lsnmf() 79 | >>> print('Rss: %5.4f' % lsnmf_fit.fit.rss()) 80 | Rss: 0.2668 81 | >>> print('Evar: %5.4f' % lsnmf_fit.fit.evar()) 82 | Evar: 0.9997 83 | >>> print('K-L divergence: %5.4f' % lsnmf_fit.distance(metric='kl')) 84 | K-L divergence: 38.8744 85 | >>> print('Sparseness, W: %5.4f, H: %5.4f' % lsnmf_fit.fit.sparseness()) 86 | Sparseness, W: 0.7297, H: 0.8796 87 | 88 | 89 | Cite 90 | ---- 91 | 92 | @article{Zitnik2012, 93 | title = {Nimfa: A Python Library for Nonnegative Matrix Factorization}, 94 | author = {Zitnik, Marinka and Zupan, Blaz}, 95 | journal = {Journal of Machine Learning Research}, 96 | volume = {13}, 97 | pages = {849-853}, 98 | year = {2012} 99 | } 100 | -------------------------------------------------------------------------------- /docs/source/README.rst: -------------------------------------------------------------------------------- 1 | Building 2 | ======== 3 | 4 | For building the documentation use Sphinx 1.0 or newer. Sphinx is available at `Sphinx home page`_ and 5 | nimfa library documentation sources are available at `Github repository`_. Before building documentation, 6 | please install nimfa library. 7 | 8 | Documentation can be built by issuing:: 9 | 10 | make html 11 | 12 | Resulting documentation is saved to `html` directory. Without make 13 | utility, execute:: 14 | 15 | cd docs/source 16 | 17 | sphinx-build -b html 18 | 19 | from the nimfa root directory. 20 | 21 | .. note:: The nimfa library documentation is contained in ``docs`` source directory and scripts are in ``nimfa`` directory. 22 | 23 | .. _Sphinx home page: http://sphinx.pocoo.org 24 | .. _Github repository: http://github.com/marinkaz/mf 25 | -------------------------------------------------------------------------------- /docs/source/code/snippet_bd.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(40, 100) 6 | bd = nimfa.Bd(V, seed="random_c", rank=10, max_iter=12, alpha=np.zeros((V.shape[0], 10)), 7 | beta=np.zeros((10, V.shape[1])), theta=.0, k=.0, sigma=1., skip=100, stride=1, 8 | n_w=np.zeros((10, 1)), n_h=np.zeros((10, 1)), n_sigma=False) 9 | bd_fit = bd() 10 | -------------------------------------------------------------------------------- /docs/source/code/snippet_bmf.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(40, 100) 6 | bmf = nimfa.Bmf(V, seed="nndsvd", rank=10, max_iter=12, lambda_w=1.1, lambda_h=1.1) 7 | bmf_fit = bmf() 8 | -------------------------------------------------------------------------------- /docs/source/code/snippet_icm.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(40, 100) 6 | icm = nimfa.Icm(V, seed="nndsvd", rank=10, max_iter=12, iiter=20, 7 | alpha=np.random.randn(V.shape[0], 10), beta=np.random.randn(10, V.shape[1]), 8 | theta=0., k=0., sigma=1.) 9 | icm_fit = icm() 10 | -------------------------------------------------------------------------------- /docs/source/code/snippet_lfnmf.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(40, 100) 6 | lfnmf = nimfa.Lfnmf(V, seed=None, W=np.random.rand(V.shape[0], 10), 7 | H=np.random.rand(10, V.shape[1]), rank=10, max_iter=12, 8 | alpha=0.01) 9 | lfnmf_fit = lfnmf() 10 | -------------------------------------------------------------------------------- /docs/source/code/snippet_lsnmf.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(40, 100) 6 | lsnmf = nimfa.Lsnmf(V, seed="random_vcol", rank=10, max_iter=12, sub_iter=10, 7 | inner_sub_iter=10, beta=0.1) 8 | lsnmf_fit = lsnmf() 9 | -------------------------------------------------------------------------------- /docs/source/code/snippet_nmf_conn.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(40, 100) 6 | nmf = nimfa.Nmf(V, rank=10, seed="random_vcol", max_iter=200, update='euclidean', 7 | objective='conn', conn_change=40) 8 | nmf_fit = nmf() 9 | -------------------------------------------------------------------------------- /docs/source/code/snippet_nmf_div.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(40, 100) 6 | nmf = nimfa.Nmf(V, seed="random_c", rank=10, max_iter=12, update='divergence', 7 | objective='div') 8 | nmf_fit = nmf() 9 | -------------------------------------------------------------------------------- /docs/source/code/snippet_nmf_fro.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(40, 100) 6 | nmf = nimfa.Nmf(V, seed="nndsvd", rank=10, max_iter=12, update='euclidean', 7 | objective='fro') 8 | nmf_fit = nmf() 9 | -------------------------------------------------------------------------------- /docs/source/code/snippet_nsnmf.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(40, 100) 6 | nsnmf = nimfa.Nsnmf(V, seed="random", rank=10, max_iter=12, theta=0.5) 7 | nsnmf_fit = nsnmf() 8 | -------------------------------------------------------------------------------- /docs/source/code/snippet_pmf.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(40, 100) 6 | pmf = nimfa.Pmf(V, seed="random_vcol", rank=10, max_iter=12, rel_error=1e-5) 7 | pmf_fit = pmf() 8 | -------------------------------------------------------------------------------- /docs/source/code/snippet_pmfcc.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(40, 100) 6 | pmfcc = nimfa.Pmfcc(V, seed="random_vcol", rank=10, max_iter=30, 7 | theta=np.random.rand(V.shape[1], V.shape[1])) 8 | pmfcc_fit = pmfcc() 9 | -------------------------------------------------------------------------------- /docs/source/code/snippet_psmf.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(40, 100) 6 | psmf = nimfa.Psmf(V, seed=None, rank=10, max_iter=12, prior=np.random.rand(10)) 7 | psmf_fit = psmf() 8 | -------------------------------------------------------------------------------- /docs/source/code/snippet_snmf_l.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(40, 100) 6 | snmf = nimfa.Snmf(V, seed="random_vcol", rank=10, max_iter=12, version='l', 7 | eta=1., beta=1e-4, i_conv=10, w_min_change=0) 8 | snmf_fit = snmf() 9 | -------------------------------------------------------------------------------- /docs/source/code/snippet_snmf_r.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(40, 100) 6 | snmf = nimfa.Snmf(V, seed="random_c", rank=10, max_iter=12, version='r', eta=1., 7 | beta=1e-4, i_conv=10, w_min_change=0) 8 | snmf_fit = snmf() 9 | -------------------------------------------------------------------------------- /docs/source/code/snippet_snmnmf.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | import scipy.sparse as sp 3 | 4 | import nimfa 5 | 6 | V = np.random.rand(40, 100) 7 | V1 = np.random.rand(40, 200) 8 | snmnmf = nimfa.Snmnmf(V=V, V1=V1, seed="random_c", rank=10, max_iter=12, 9 | A=sp.csr_matrix((V1.shape[1], V1.shape[1])), 10 | B=sp.csr_matrix((V.shape[1], V1.shape[1])), gamma=0.01, 11 | gamma_1=0.01, lamb=0.01, lamb_1=0.01) 12 | snmnmf_fit = snmnmf() 13 | -------------------------------------------------------------------------------- /docs/source/code/usage.py: -------------------------------------------------------------------------------- 1 | import nimfa 2 | 3 | V = nimfa.examples.medulloblastoma.read(normalize=True) 4 | 5 | lsnmf = nimfa.Lsnmf(V, seed='random_vcol', rank=50, max_iter=100) 6 | lsnmf_fit = lsnmf() 7 | 8 | print('Rss: %5.4f' % lsnmf_fit.fit.rss()) 9 | print('Evar: %5.4f' % lsnmf_fit.fit.evar()) 10 | print('K-L divergence: %5.4f' % lsnmf_fit.distance(metric='kl')) 11 | print('Sparseness, W: %5.4f, H: %5.4f' % lsnmf_fit.fit.sparseness()) 12 | -------------------------------------------------------------------------------- /docs/source/code/usage1.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | import scipy.sparse as spr 3 | 4 | import nimfa 5 | 6 | V = spr.csr_matrix([[1, 0, 2, 4], [0, 0, 6, 3], [4, 0, 5, 6]]) 7 | print('Target:\n%s' % V.todense()) 8 | 9 | nmf = nimfa.Nmf(V, max_iter=200, rank=2, update='euclidean', objective='fro') 10 | nmf_fit = nmf() 11 | 12 | W = nmf_fit.basis() 13 | print('Basis matrix:\n%s' % W.todense()) 14 | 15 | H = nmf_fit.coef() 16 | print('Mixture matrix:\n%s' % H.todense()) 17 | 18 | print('Euclidean distance: %5.3f' % nmf_fit.distance(metric='euclidean')) 19 | 20 | sm = nmf_fit.summary() 21 | print('Sparseness Basis: %5.3f Mixture: %5.3f' % (sm['sparseness'][0], sm['sparseness'][1])) 22 | print('Iterations: %d' % sm['n_iter']) 23 | print('Target estimate:\n%s' % np.dot(W.todense(), H.todense())) 24 | -------------------------------------------------------------------------------- /docs/source/code/usage2.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.array([[1, 2, 3], [4, 5, 6], [6, 7, 8]]) 6 | print('Target:\n%s' % V) 7 | 8 | lsnmf = nimfa.Lsnmf(V, max_iter=10, rank=3) 9 | lsnmf_fit = lsnmf() 10 | 11 | W = lsnmf_fit.basis() 12 | print('Basis matrix:\n%s' % W) 13 | 14 | H = lsnmf_fit.coef() 15 | print('Mixture matrix:\n%s' % H) 16 | 17 | print('K-L divergence: %5.3f' % lsnmf_fit.distance(metric='kl')) 18 | 19 | print('Rss: %5.3f' % lsnmf_fit.fit.rss()) 20 | print('Evar: %5.3f' % lsnmf_fit.fit.evar()) 21 | print('Iterations: %d' % lsnmf_fit.n_iter) 22 | print('Target estimate:\n%s' % np.dot(W, H)) 23 | -------------------------------------------------------------------------------- /docs/source/code/usage3.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.array([[1, 2, 3], [4, 5, 6], [6, 7, 8]]) 6 | print('Target:\n%s' % V) 7 | 8 | lsnmf = nimfa.Lsnmf(V, seed='random_vcol', max_iter=10, rank=3, track_error=True) 9 | lsnmf_fit = lsnmf() 10 | 11 | W = lsnmf_fit.basis() 12 | print('Basis matrix:\n%s' % W) 13 | 14 | H = lsnmf_fit.coef() 15 | print('Mixture matrix:\n%s' % H) 16 | 17 | # Objective function value for each iteration 18 | print('Error tracking:\n%s' % lsnmf_fit.fit.tracker.get_error()) 19 | 20 | sm = lsnmf_fit.summary() 21 | print('Rss: %5.3f' % sm['rss']) 22 | print('Evar: %5.3f' % sm['evar']) 23 | print('Iterations: %d' % sm['n_iter']) 24 | -------------------------------------------------------------------------------- /docs/source/code/usage4.py: -------------------------------------------------------------------------------- 1 | import nimfa 2 | 3 | import numpy as np 4 | 5 | V = np.array([[1, 2, 3], [4, 5, 6], [6, 7, 8]]) 6 | print('Target:\n%s' % V) 7 | 8 | # Initialization callback function 9 | def init_info(model): 10 | print('Initialized basis matrix:\n%s' % model.basis()) 11 | print('Initialized mixture matrix:\n%s' % model.coef()) 12 | 13 | # Callback is called after initialization and prior to factorization in each run 14 | icm = nimfa.Icm(V, seed='random_c', max_iter=10, rank=3, callback_init=init_info) 15 | icm_fit = icm() 16 | 17 | W = icm_fit.basis() 18 | print('Basis matrix:\n%s' % W) 19 | print(W) 20 | 21 | H = icm_fit.coef() 22 | print('Mixture matrix:\n%s' % H) 23 | 24 | sm = icm_fit.summary() 25 | print('Rss: %5.3f' % sm['rss']) 26 | print('Evar: %5.3f' % sm['evar']) 27 | print('Iterations: %d' % sm['n_iter']) 28 | print('KL divergence: %5.3f' % sm['kl']) 29 | print('Euclidean distance: %5.3f' % sm['euclidean']) 30 | -------------------------------------------------------------------------------- /docs/source/code/usage5.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(23, 200) 6 | 7 | # Factorization will be run 3 times (n_run) and factors will be tracked for computing 8 | # cophenetic correlation. Note increased time and space complexity 9 | bmf = nimfa.Bmf(V, max_iter=10, rank=30, n_run=3, track_factor=True) 10 | bmf_fit = bmf() 11 | 12 | print('K-L divergence: %5.3f' % bmf_fit.distance(metric='kl')) 13 | 14 | sm = bmf_fit.summary() 15 | print('Rss: %5.3f' % sm['rss']) 16 | print('Evar: %5.3f' % sm['evar']) 17 | print('Iterations: %d' % sm['n_iter']) 18 | print('Cophenetic correlation: %5.3f' % sm['cophenetic']) 19 | -------------------------------------------------------------------------------- /docs/source/code/usage6.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.random.rand(30, 20) 6 | 7 | init_W = np.random.rand(30, 4) 8 | init_H = np.random.rand(4, 20) 9 | 10 | # Fixed initialization of latent matrices 11 | nmf = nimfa.Nmf(V, seed="fixed", W=init_W, H=init_H, rank=4) 12 | nmf_fit = nmf() 13 | 14 | print("Euclidean distance: %5.3f" % nmf_fit.distance(metric="euclidean")) 15 | print('Initialization type: %s' % nmf_fit.seeding) 16 | print('Iterations: %d' % nmf_fit.n_iter) 17 | -------------------------------------------------------------------------------- /docs/source/code/usage7.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | import nimfa 4 | 5 | V = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]]) 6 | print('Target:\n%s' % V) 7 | 8 | lsnmf = nimfa.Lsnmf(V, seed='random_vcol', max_iter=10, rank=3, track_error=True) 9 | lsnmf_fit = lsnmf() 10 | 11 | W = lsnmf_fit.basis() 12 | print('Basis matrix:\n%s' % W) 13 | 14 | H = lsnmf_fit.coef() 15 | print('Mixture matrix:\n%s' % H) 16 | 17 | r = lsnmf.estimate_rank(rank_range=[2,3,4], what=['rss']) 18 | pp_r = '\n'.join('%d: %5.3f' % (rank, vals['rss']) for rank, vals in r.items()) 19 | print('Rank estimate:\n%s' % pp_r) 20 | -------------------------------------------------------------------------------- /docs/source/content-factorization.rst: -------------------------------------------------------------------------------- 1 | 2 | * **BD** - Bayesian nonnegative matrix factorization Gibbs sampler [Schmidt2009]_ 3 | 4 | * **BMF** - Binary matrix factorization [Zhang2007]_ 5 | 6 | * **ICM** - Iterated conditional modes nonnegative matrix factorization [Schmidt2009]_ 7 | 8 | * **LFNMF** - Fisher nonnegative matrix factorization for learning local features [Wang2004]_, [Li2001]_ 9 | 10 | * **LSNMF** - Alternating nonnegative least squares matrix factorization using projected gradient method for subproblems [Lin2007]_ 11 | 12 | * **NMF** - Standard nonnegative matrix factorization with Euclidean / Kullback-Leibler update equations and Frobenius / divergence / connectivity cost functions [Lee2001]_, [Brunet2004]_ 13 | 14 | * **NSNMF** - Nonsmooth nonnegative matrix factorization [Montano2006]_ 15 | 16 | * **PMF** - Probabilistic nonnegative matrix factorization [Laurberg2008]_, [Hansen2008]_ 17 | 18 | * **PSMF** - Probabilistic sparse matrix factorization [Dueck2005]_, [Dueck2004]_, [Srebro2001]_, [Li2007]_ 19 | 20 | * **SNMF** - Sparse nonnegative matrix factorization based on alternating nonnegativity constrained least squares [Park2007]_ 21 | 22 | * **SNMNMF** - Sparse network-regularized multiple nonnegative matrix factorization [Zhang2011]_ 23 | 24 | * **PMFCC** - Penalized matrix factorization for constrained clustering [FWang2008]_ 25 | 26 | * **SepNMF** - Separable nonnegative matrix factorization [Gillis2014]_, [Kumar2013]_, [Tepper2015]_, [Kapralov2016]_ 27 | -------------------------------------------------------------------------------- /docs/source/content-initialization.rst: -------------------------------------------------------------------------------- 1 | 2 | * **Random** 3 | 4 | * **Fixed** 5 | 6 | * **NNDSVD** [Boutsidis2007]_ 7 | 8 | * **Random C** [Albright2006]_ 9 | 10 | * **Random VCol** [Albright2006]_ 11 | -------------------------------------------------------------------------------- /docs/source/content-quality-performance.rst: -------------------------------------------------------------------------------- 1 | 2 | * Distance 3 | 4 | * Residuals 5 | 6 | * Connectivity matrix 7 | 8 | * Consensus matrix 9 | 10 | * Entropy of the fitted NMF model [Park2007]_ 11 | 12 | * Dominant basis components computation 13 | 14 | * Explained variance 15 | 16 | * Feature score computation representing its specificity to basis vectors [Park2007]_ 17 | 18 | * Computation of most basis specific features for basis vectors [Park2007]_ 19 | 20 | * Purity [Park2007]_ 21 | 22 | * Residual sum of squares (rank estimation) [Hutchins2008]_, [Frigyesi2008]_ 23 | 24 | * Sparseness [Hoyer2004]_ 25 | 26 | * Cophenetic correlation coefficient of consensus matrix (rank estimation) [Brunet2004]_ 27 | 28 | * Dispersion [Park2007]_ 29 | 30 | * Factorization rank estimation 31 | 32 | * Selected matrix factorization method specific 33 | -------------------------------------------------------------------------------- /docs/source/content-utils.rst: -------------------------------------------------------------------------------- 1 | 2 | * Fitted factorization model tracker across multiple runs 3 | 4 | * Residuals tracker across multiple factorizations / runs -------------------------------------------------------------------------------- /docs/source/images/all_aml_consensus2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/all_aml_consensus2.png -------------------------------------------------------------------------------- /docs/source/images/all_aml_consensus3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/all_aml_consensus3.png -------------------------------------------------------------------------------- /docs/source/images/base/google-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/base/google-logo.png -------------------------------------------------------------------------------- /docs/source/images/base/orange-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/base/orange-logo.png -------------------------------------------------------------------------------- /docs/source/images/cbcl_faces_10_iters_SNMF_L.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/cbcl_faces_10_iters_SNMF_L.png -------------------------------------------------------------------------------- /docs/source/images/cbcl_faces_10_iters_SNMF_R.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/cbcl_faces_10_iters_SNMF_R.png -------------------------------------------------------------------------------- /docs/source/images/cbcl_faces_50_iters_LSNMF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/cbcl_faces_50_iters_LSNMF.png -------------------------------------------------------------------------------- /docs/source/images/cbcl_faces_50_iters_NMF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/cbcl_faces_50_iters_NMF.png -------------------------------------------------------------------------------- /docs/source/images/documents_basisW1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/documents_basisW1.png -------------------------------------------------------------------------------- /docs/source/images/documents_basisW13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/documents_basisW13.png -------------------------------------------------------------------------------- /docs/source/images/documents_basisW15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/documents_basisW15.png -------------------------------------------------------------------------------- /docs/source/images/documents_basisW4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/documents_basisW4.png -------------------------------------------------------------------------------- /docs/source/images/documents_basisW5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/documents_basisW5.png -------------------------------------------------------------------------------- /docs/source/images/medulloblastoma_consensus2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/medulloblastoma_consensus2.png -------------------------------------------------------------------------------- /docs/source/images/medulloblastoma_consensus3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/medulloblastoma_consensus3.png -------------------------------------------------------------------------------- /docs/source/images/orl_faces_200_iters_small_LSNMF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/orl_faces_200_iters_small_LSNMF.png -------------------------------------------------------------------------------- /docs/source/images/orl_faces_200_iters_small_NMF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/orl_faces_200_iters_small_NMF.png -------------------------------------------------------------------------------- /docs/source/images/orl_faces_500_iters_large_LSNMF.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/orl_faces_500_iters_large_LSNMF.png -------------------------------------------------------------------------------- /docs/source/images/orl_faces_5_iters_small_PSMF_prior5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/docs/source/images/orl_faces_5_iters_small_PSMF_prior5.png -------------------------------------------------------------------------------- /docs/source/nimfa.datasets.rst: -------------------------------------------------------------------------------- 1 | ####################### 2 | Datasets (``datasets``) 3 | ####################### 4 | 5 | .. automodule:: nimfa.datasets 6 | :members: 7 | :undoc-members: 8 | :inherited-members: 9 | :show-inheritance: 10 | 11 | 12 | -------------------------------------------------------------------------------- /docs/source/nimfa.examples.all_aml.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.examples.all_aml 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: 6 | 7 | .. comment literalinclude:: ../../nimfa/examples/all_aml.py 8 | :lines: 106-209 9 | :linenos: 10 | -------------------------------------------------------------------------------- /docs/source/nimfa.examples.cbcl_images.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.examples.cbcl_images 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: 6 | 7 | .. comment literalinclude:: ../../nimfa/examples/cbcl_images.py 8 | :lines: 82-198 9 | :linenos: 10 | -------------------------------------------------------------------------------- /docs/source/nimfa.examples.documents.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.examples.documents 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: 6 | 7 | .. comment literalinclude:: ../../nimfa/examples/documents.py 8 | :lines: 99-262 9 | :linenos: 10 | -------------------------------------------------------------------------------- /docs/source/nimfa.examples.gene_func_prediction.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.examples.gene_func_prediction 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: 6 | 7 | .. comment literalinclude:: ../../nimfa/examples/gene_func_prediction.py 8 | :lines: 57-461 9 | :linenos: 10 | -------------------------------------------------------------------------------- /docs/source/nimfa.examples.medulloblastoma.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.examples.medulloblastoma 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: 6 | 7 | .. comment literalinclude:: ../../nimfa/examples/medulloblastoma.py 8 | :lines: 96-199 9 | :linenos: 10 | -------------------------------------------------------------------------------- /docs/source/nimfa.examples.orl_images.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.examples.orl_images 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: 6 | 7 | .. comment literalinclude:: ../../nimfa/examples/orl_images.py 8 | :lines: 93-209 9 | :linenos: 10 | -------------------------------------------------------------------------------- /docs/source/nimfa.examples.recommendations.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.examples.recommendations 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: 6 | 7 | .. comment literalinclude:: ../../nimfa/examples/recommendations.py 8 | :lines: 43-173 9 | :linenos: 10 | -------------------------------------------------------------------------------- /docs/source/nimfa.examples.rst: -------------------------------------------------------------------------------- 1 | ####################### 2 | Examples (``examples``) 3 | ####################### 4 | 5 | .. automodule:: nimfa.examples 6 | :members: 7 | :undoc-members: 8 | :inherited-members: 9 | :show-inheritance: 10 | 11 | 12 | .. toctree:: 13 | :maxdepth: 2 14 | 15 | nimfa.examples.synthetic 16 | 17 | nimfa.examples.all_aml 18 | 19 | nimfa.examples.medulloblastoma 20 | 21 | nimfa.examples.cbcl_images 22 | 23 | nimfa.examples.documents 24 | 25 | nimfa.examples.orl_images 26 | 27 | nimfa.examples.recommendations 28 | 29 | nimfa.examples.gene_func_prediction 30 | -------------------------------------------------------------------------------- /docs/source/nimfa.examples.synthetic.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.examples.synthetic 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: 6 | 7 | .. comment literalinclude:: ../../nimfa/examples/synthetic.py 8 | :lines: 35-378 9 | :linenos: 10 | -------------------------------------------------------------------------------- /docs/source/nimfa.methods.factorization.bd.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.factorization.bd 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.factorization.bmf.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.factorization.bmf 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.factorization.icm.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.factorization.icm 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.factorization.lfnmf.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.factorization.lfnmf 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.factorization.lsnmf.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.factorization.lsnmf 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.factorization.nmf.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.factorization.nmf 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.factorization.nsnmf.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.factorization.nsnmf 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.factorization.pmf.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.factorization.pmf 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.factorization.pmfcc.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.factorization.pmfcc 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.factorization.psmf.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.factorization.psmf 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.factorization.rst: -------------------------------------------------------------------------------- 1 | ######################################### 2 | Factorization (``methods.factorization``) 3 | ######################################### 4 | 5 | .. automodule:: nimfa.methods.factorization 6 | :members: 7 | :undoc-members: 8 | :inherited-members: 9 | :show-inheritance: 10 | 11 | 12 | .. toctree:: 13 | :maxdepth: 2 14 | 15 | nimfa.methods.factorization.bd 16 | 17 | nimfa.methods.factorization.bmf 18 | 19 | nimfa.methods.factorization.icm 20 | 21 | nimfa.methods.factorization.lfnmf 22 | 23 | nimfa.methods.factorization.lsnmf 24 | 25 | nimfa.methods.factorization.nmf 26 | 27 | nimfa.methods.factorization.nsnmf 28 | 29 | nimfa.methods.factorization.pmf 30 | 31 | nimfa.methods.factorization.psmf 32 | 33 | nimfa.methods.factorization.snmf 34 | 35 | nimfa.methods.factorization.snmnmf 36 | 37 | nimfa.methods.factorization.pmfcc 38 | 39 | nimfa.methods.factorization.sepnmf 40 | -------------------------------------------------------------------------------- /docs/source/nimfa.methods.factorization.sepnmf.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.factorization.sepnmf 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: 6 | -------------------------------------------------------------------------------- /docs/source/nimfa.methods.factorization.snmf.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.factorization.snmf 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.factorization.snmnmf.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.factorization.snmnmf 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.rst: -------------------------------------------------------------------------------- 1 | ##################### 2 | Methods (``methods``) 3 | ##################### 4 | 5 | .. automodule:: nimfa.methods 6 | :members: 7 | :undoc-members: 8 | :inherited-members: 9 | :show-inheritance: 10 | 11 | 12 | .. toctree:: 13 | :maxdepth: 3 14 | 15 | nimfa.methods.factorization 16 | 17 | nimfa.methods.seeding 18 | 19 | -------------------------------------------------------------------------------- /docs/source/nimfa.methods.seeding.fixed.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.seeding.fixed 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.seeding.nndsvd.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.seeding.nndsvd 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.seeding.random.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.seeding.random 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.seeding.random_c.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.seeding.random_c 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.seeding.random_vcol.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.methods.seeding.random_vcol 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.methods.seeding.rst: -------------------------------------------------------------------------------- 1 | ############################# 2 | Seeding (``methods.seeding``) 3 | ############################# 4 | 5 | .. automodule:: nimfa.methods.seeding 6 | :members: 7 | :undoc-members: 8 | :inherited-members: 9 | :show-inheritance: 10 | 11 | 12 | .. toctree:: 13 | :maxdepth: 2 14 | 15 | nimfa.methods.seeding.nndsvd 16 | 17 | nimfa.methods.seeding.random_c 18 | 19 | nimfa.methods.seeding.random_vcol 20 | 21 | nimfa.methods.seeding.random 22 | 23 | nimfa.methods.seeding.fixed 24 | 25 | 26 | -------------------------------------------------------------------------------- /docs/source/nimfa.models.mf_fit.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.models.mf_fit 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.models.mf_track.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.models.mf_track 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.models.nmf.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.models.nmf 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.models.nmf_mm.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.models.nmf_mm 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.models.nmf_ns.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.models.nmf_ns 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.models.nmf_std.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.models.nmf_std 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.models.rst: -------------------------------------------------------------------------------- 1 | #################### 2 | Models (``models``) 3 | #################### 4 | 5 | .. automodule:: nimfa.models 6 | :members: 7 | :undoc-members: 8 | :inherited-members: 9 | :show-inheritance: 10 | 11 | 12 | .. toctree:: 13 | :maxdepth: 2 14 | 15 | nimfa.models.nmf 16 | 17 | nimfa.models.nmf_std 18 | 19 | nimfa.models.nmf_ns 20 | 21 | nimfa.models.nmf_mm 22 | 23 | nimfa.models.smf 24 | 25 | nimfa.models.mf_fit 26 | 27 | nimfa.models.mf_track 28 | 29 | 30 | -------------------------------------------------------------------------------- /docs/source/nimfa.models.smf.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.models.smf 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.utils.linalg.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.utils.linalg 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /docs/source/nimfa.utils.rst: -------------------------------------------------------------------------------- 1 | ################# 2 | Utils (``utils``) 3 | ################# 4 | 5 | .. automodule:: nimfa.utils 6 | :members: 7 | :undoc-members: 8 | :inherited-members: 9 | :show-inheritance: 10 | 11 | 12 | .. toctree:: 13 | :maxdepth: 2 14 | 15 | nimfa.utils.utils 16 | 17 | nimfa.utils.linalg 18 | 19 | 20 | -------------------------------------------------------------------------------- /docs/source/nimfa.utils.utils.rst: -------------------------------------------------------------------------------- 1 | .. automodule:: nimfa.utils.utils 2 | :members: 3 | :undoc-members: 4 | :inherited-members: 5 | :show-inheritance: -------------------------------------------------------------------------------- /nimfa/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | ################# 4 | Nimfa (``nimfa``) 5 | ################# 6 | 7 | Nimfa is a Python module which includes a number of published matrix 8 | factorization algorithms, initialization methods, quality and performance 9 | measures and facilitates the combination of these to produce new strategies. 10 | The library represents a unified and efficient interface to matrix 11 | factorization algorithms and methods. 12 | """ 13 | 14 | __license__ = 'BSD' 15 | __version__ = '1.3.2' 16 | __maintainer__ = 'Marinka Zitnik' 17 | __email__ = 'marinka@cs.stanford.edu' 18 | 19 | 20 | from nimfa import examples 21 | from nimfa.methods.factorization import * 22 | from .version import \ 23 | short_version as __version__, git_revision as __git_version__ 24 | -------------------------------------------------------------------------------- /nimfa/datasets/ALL_AML/ALL_AML_samples.txt: -------------------------------------------------------------------------------- 1 | ALL_19769_B-cell 2 | ALL_23953_B-cell 3 | ALL_28373_B-cell 4 | ALL_9335_B-cell 5 | ALL_9692_B-cell 6 | ALL_14749_B-cell 7 | ALL_17281_B-cell 8 | ALL_19183_B-cell 9 | ALL_20414_B-cell 10 | ALL_21302_B-cell 11 | ALL_549_B-cell 12 | ALL_17929_B-cell 13 | ALL_20185_B-cell 14 | ALL_11103_B-cell 15 | ALL_18239_B-cell 16 | ALL_5982_B-cell 17 | ALL_7092_B-cell 18 | ALL_R11_B-cell 19 | ALL_R23_B-cell 20 | ALL_16415_T-cell 21 | ALL_19881_T-cell 22 | ALL_9186_T-cell 23 | ALL_9723_T-cell 24 | ALL_17269_T-cell 25 | ALL_14402_T-cell 26 | ALL_17638_T-cell 27 | ALL_22474_T-cell 28 | AML_12 29 | AML_13 30 | AML_14 31 | AML_16 32 | AML_20 33 | AML_1 34 | AML_2 35 | AML_3 36 | AML_5 37 | AML_6 38 | AML_7 39 | -------------------------------------------------------------------------------- /nimfa/datasets/CBCL_faces/README.md: -------------------------------------------------------------------------------- 1 | # CBCL face images 2 | 3 | CBCL face images data set: 4 | * 19 x 19 Grayscale PGM format images, 5 | * Training set: 2429 faces, 4548 nonfaces, 6 | * Test set: 472 faces, 23573 nonfaces. 7 | 8 | Dataset is at: http://cbcl.mit.edu/cbcl/software-datasets/FaceData2.html. 9 | 10 | Directory structure should look like: 11 | 12 | datasets/ 13 | CBCL_faces/ 14 | README 15 | face/ 16 | face00001.pgm 17 | [...] 18 | face02429.pgm 19 | non-face/ 20 | [...] 21 | [...] 22 | -------------------------------------------------------------------------------- /nimfa/datasets/Medlars/README.md: -------------------------------------------------------------------------------- 1 | # Medlars 2 | 3 | Dataset is at: http://web.eecs.utk.edu/research/lsi. This is a collection of 1033 medical abstracts. 4 | 5 | Directory structure should look like: 6 | 7 | datasets/ 8 | Medlars/ 9 | med.all 10 | [...] 11 | -------------------------------------------------------------------------------- /nimfa/datasets/Medulloblastoma/Medulloblastomas_samples.txt: -------------------------------------------------------------------------------- 1 | Brain_MD_7 C 2 | Brain_MD_59 C 3 | Brain_MD_20 C 4 | Brain_MD_21 C 5 | Brain_MD_50 C 6 | Brain_MD_49 C 7 | Brain_MD_45 C 8 | Brain_MD_43 C 9 | Brain_MD_8 C 10 | Brain_MD_42 C 11 | Brain_MD_1 C 12 | Brain_MD_4 C 13 | Brain_MD_55 C 14 | Brain_MD_41 C 15 | Brain_MD_37 C 16 | Brain_MD_3 C 17 | Brain_MD_34 C 18 | Brain_MD_29 C 19 | Brain_MD_13 C 20 | Brain_MD_24 C 21 | Brain_MD_65 C 22 | Brain_MD_5 C 23 | Brain_MD_66 C 24 | Brain_MD_67 C 25 | Brain_MD_58 C 26 | Brain_MD_53 D 27 | Brain_MD_56 D 28 | Brain_MD_16 D 29 | Brain_MD_40 D 30 | Brain_MD_35 D 31 | Brain_MD_30 D 32 | Brain_MD_23 D 33 | Brain_MD_28 D 34 | Brain_MD_60 D 35 | -------------------------------------------------------------------------------- /nimfa/datasets/MovieLens/README.md: -------------------------------------------------------------------------------- 1 | # Movielens 2 | 3 | Dataset is at: http://www.grouplens.org/node/12. Select the stable benchmark dataset with 100000 4 | ratings from 1000 users on 1700 movies. 5 | 6 | Directory structure should look like: 7 | 8 | datasets/ 9 | MovieLens/ 10 | ua.base 11 | ua.test 12 | ub.base 13 | ub.test 14 | [...] 15 | [...] 16 | -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/README: -------------------------------------------------------------------------------- 1 | 2 | ------------------------------------- 3 | README file for directory 'orl-faces' 4 | ------------------------------------- 5 | 6 | This directory contains the files of the 'ORL face database', provided 7 | courtesy of AT&T Laboratories Cambridge. 8 | 9 | -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s1/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s1/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s1/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s1/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s1/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s1/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s1/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s1/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s1/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s1/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s1/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s1/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s1/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s1/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s1/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s1/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s1/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s1/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s1/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s1/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s10/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s10/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s10/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s10/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s10/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s10/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s10/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s10/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s10/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s10/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s10/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s10/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s10/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s10/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s10/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s10/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s10/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s10/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s10/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s10/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s10/target.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s10/target.jpg -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s11/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s11/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s11/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s11/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s11/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s11/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s11/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s11/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s11/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s11/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s11/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s11/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s11/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s11/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s11/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s11/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s11/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s11/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s11/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s11/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s12/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s12/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s12/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s12/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s12/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s12/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s12/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s12/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s12/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s12/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s12/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s12/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s12/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s12/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s12/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s12/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s12/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s12/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s12/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s12/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s13/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s13/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s13/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s13/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s13/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s13/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s13/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s13/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s13/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s13/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s13/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s13/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s13/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s13/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s13/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s13/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s13/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s13/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s13/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s13/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s14/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s14/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s14/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s14/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s14/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s14/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s14/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s14/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s14/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s14/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s14/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s14/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s14/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s14/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s14/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s14/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s14/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s14/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s14/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s14/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s15/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s15/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s15/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s15/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s15/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s15/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s15/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s15/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s15/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s15/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s15/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s15/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s15/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s15/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s15/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s15/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s15/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s15/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s15/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s15/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s16/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s16/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s16/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s16/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s16/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s16/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s16/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s16/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s16/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s16/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s16/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s16/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s16/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s16/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s16/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s16/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s16/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s16/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s16/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s16/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s17/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s17/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s17/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s17/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s17/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s17/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s17/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s17/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s17/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s17/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s17/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s17/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s17/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s17/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s17/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s17/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s17/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s17/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s17/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s17/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s18/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s18/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s18/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s18/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s18/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s18/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s18/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s18/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s18/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s18/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s18/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s18/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s18/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s18/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s18/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s18/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s18/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s18/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s18/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s18/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s19/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s19/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s19/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s19/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s19/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s19/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s19/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s19/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s19/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s19/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s19/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s19/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s19/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s19/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s19/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s19/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s19/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s19/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s19/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s19/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s2/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s2/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s2/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s2/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s2/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s2/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s2/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s2/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s2/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s2/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s2/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s2/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s2/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s2/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s2/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s2/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s2/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s2/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s2/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s2/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s20/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s20/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s20/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s20/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s20/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s20/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s20/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s20/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s20/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s20/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s20/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s20/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s20/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s20/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s20/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s20/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s20/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s20/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s20/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s20/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s21/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s21/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s21/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s21/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s21/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s21/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s21/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s21/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s21/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s21/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s21/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s21/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s21/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s21/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s21/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s21/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s21/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s21/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s21/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s21/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s22/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s22/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s22/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s22/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s22/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s22/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s22/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s22/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s22/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s22/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s22/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s22/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s22/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s22/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s22/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s22/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s22/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s22/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s22/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s22/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s23/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s23/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s23/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s23/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s23/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s23/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s23/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s23/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s23/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s23/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s23/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s23/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s23/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s23/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s23/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s23/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s23/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s23/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s23/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s23/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s24/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s24/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s24/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s24/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s24/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s24/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s24/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s24/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s24/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s24/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s24/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s24/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s24/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s24/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s24/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s24/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s24/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s24/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s24/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s24/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s25/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s25/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s25/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s25/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s25/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s25/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s25/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s25/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s25/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s25/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s25/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s25/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s25/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s25/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s25/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s25/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s25/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s25/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s25/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s25/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s26/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s26/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s26/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s26/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s26/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s26/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s26/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s26/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s26/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s26/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s26/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s26/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s26/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s26/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s26/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s26/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s26/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s26/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s26/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s26/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s27/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s27/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s27/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s27/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s27/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s27/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s27/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s27/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s27/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s27/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s27/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s27/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s27/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s27/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s27/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s27/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s27/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s27/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s27/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s27/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s28/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s28/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s28/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s28/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s28/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s28/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s28/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s28/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s28/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s28/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s28/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s28/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s28/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s28/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s28/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s28/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s28/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s28/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s28/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s28/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s29/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s29/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s29/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s29/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s29/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s29/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s29/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s29/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s29/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s29/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s29/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s29/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s29/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s29/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s29/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s29/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s29/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s29/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s29/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s29/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s3/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s3/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s3/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s3/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s3/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s3/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s3/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s3/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s3/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s3/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s3/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s3/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s3/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s3/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s3/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s3/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s3/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s3/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s3/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s3/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s30/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s30/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s30/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s30/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s30/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s30/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s30/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s30/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s30/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s30/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s30/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s30/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s30/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s30/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s30/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s30/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s30/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s30/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s30/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s30/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s31/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s31/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s31/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s31/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s31/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s31/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s31/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s31/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s31/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s31/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s31/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s31/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s31/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s31/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s31/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s31/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s31/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s31/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s31/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s31/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s32/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s32/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s32/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s32/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s32/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s32/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s32/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s32/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s32/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s32/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s32/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s32/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s32/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s32/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s32/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s32/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s32/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s32/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s32/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s32/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s33/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s33/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s33/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s33/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s33/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s33/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s33/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s33/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s33/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s33/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s33/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s33/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s33/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s33/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s33/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s33/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s33/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s33/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s33/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s33/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s34/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s34/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s34/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s34/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s34/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s34/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s34/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s34/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s34/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s34/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s34/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s34/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s34/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s34/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s34/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s34/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s34/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s34/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s34/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s34/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s35/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s35/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s35/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s35/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s35/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s35/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s35/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s35/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s35/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s35/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s35/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s35/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s35/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s35/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s35/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s35/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s35/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s35/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s35/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s35/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s36/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s36/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s36/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s36/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s36/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s36/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s36/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s36/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s36/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s36/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s36/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s36/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s36/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s36/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s36/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s36/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s36/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s36/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s36/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s36/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s37/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s37/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s37/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s37/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s37/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s37/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s37/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s37/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s37/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s37/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s37/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s37/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s37/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s37/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s37/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s37/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s37/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s37/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s37/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s37/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s38/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s38/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s38/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s38/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s38/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s38/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s38/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s38/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s38/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s38/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s38/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s38/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s38/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s38/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s38/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s38/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s38/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s38/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s38/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s38/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s39/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s39/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s39/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s39/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s39/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s39/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s39/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s39/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s39/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s39/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s39/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s39/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s39/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s39/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s39/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s39/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s39/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s39/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s39/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s39/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s4/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s4/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s4/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s4/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s4/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s4/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s4/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s4/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s4/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s4/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s4/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s4/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s4/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s4/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s4/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s4/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s4/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s4/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s4/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s4/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s40/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s40/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s40/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s40/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s40/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s40/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s40/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s40/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s40/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s40/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s40/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s40/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s40/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s40/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s40/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s40/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s40/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s40/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s40/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s40/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s5/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s5/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s5/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s5/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s5/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s5/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s5/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s5/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s5/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s5/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s5/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s5/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s5/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s5/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s5/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s5/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s5/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s5/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s5/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s5/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s6/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s6/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s6/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s6/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s6/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s6/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s6/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s6/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s6/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s6/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s6/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s6/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s6/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s6/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s6/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s6/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s6/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s6/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s6/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s6/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s7/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s7/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s7/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s7/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s7/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s7/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s7/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s7/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s7/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s7/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s7/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s7/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s7/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s7/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s7/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s7/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s7/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s7/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s7/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s7/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s8/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s8/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s8/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s8/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s8/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s8/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s8/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s8/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s8/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s8/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s8/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s8/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s8/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s8/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s8/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s8/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s8/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s8/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s8/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s8/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s9/1.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s9/1.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s9/10.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s9/10.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s9/2.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s9/2.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s9/3.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s9/3.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s9/4.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s9/4.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s9/5.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s9/5.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s9/6.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s9/6.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s9/7.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s9/7.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s9/8.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s9/8.pgm -------------------------------------------------------------------------------- /nimfa/datasets/ORL_faces/s9/9.pgm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/nimfa/datasets/ORL_faces/s9/9.pgm -------------------------------------------------------------------------------- /nimfa/datasets/S_cerevisiae_FC/README.md: -------------------------------------------------------------------------------- 1 | # S. Cerevisiae MIPS's molecular functions 2 | 3 | Dataset is at: http://dtai.cs.kuleuven.be/clus/hmc-ens. 4 | 5 | Directory structure should look like: 6 | 7 | datasets/ 8 | S_cerevisiae_FC/ 9 | hom_yeast_FUN/ 10 | hom_yeast_FUN.test.arff 11 | hom_yeast_FUN.train.arff 12 | hom_yeast_FUN.valid.arff 13 | pheno_yeast_FUN/ 14 | pheno_yeast_FUN.test.arff 15 | pheno_yeast_FUN.valid.arff 16 | pheno_yeast_FUN.train.arff 17 | seq_yeast_FUN/ 18 | seq_yeast_FUN.train.arff 19 | seq_yeast_FUN.test.arff 20 | seq_yeast_FUN.valid.arff 21 | struc_yeast_FUN/ 22 | struc_yeast_FUN.train.arff 23 | struc_yeast_FUN.test.arff 24 | struc_yeast_FUn.valid.arff 25 | [...] 26 | [...] 27 | -------------------------------------------------------------------------------- /nimfa/datasets/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | This module lists data sets needed to run Nimfa's use cases. 4 | 5 | .. note:: Relevant code for data processing is provided within each example. To run an example download the relevant data and put it in ``nimfa/datasets`` directory. 6 | 7 | Data sets: 8 | 9 | #. Leukemia data set; `leukemia gene expressions`_, `leukemia samples`_, `leukemia genes`_. 10 | #. Medulloblastoma data set; `medulloblastoma gene expressions`_, `medulloblastoma samples`_, `medulloblastoma genes`_. 11 | #. `CBCL face images`_ database. 12 | #. `ORL face images`_ database. 13 | #. `MovieLens 100k`_ data set. 14 | #. `Medlars`_ data set. 15 | #. `S. cerevisiae`_ MIPS Functional Catalogue data set. 16 | 17 | .. _leukemia gene expressions: http://portals.broadinstitute.org/cgi-bin/cancer/publications/pub_paper.cgi?mode=view&paper_id=89 18 | .. _leukemia samples: http://portals.broadinstitute.org/cgi-bin/cancer/publications/pub_paper.cgi?mode=view&paper_id=89 19 | .. _leukemia genes: http://portals.broadinstitute.org/cgi-bin/cancer/publications/pub_paper.cgi?mode=view&paper_id=89 20 | .. _medulloblastoma gene expressions: http://portals.broadinstitute.org/cgi-bin/cancer/publications/pub_paper.cgi?mode=view&paper_id=89 21 | .. _medulloblastoma samples: http://portals.broadinstitute.org/cgi-bin/cancer/publications/pub_paper.cgi?mode=view&paper_id=89 22 | .. _medulloblastoma genes: http://portals.broadinstitute.org/cgi-bin/cancer/publications/pub_paper.cgi?mode=view&paper_id=89 23 | .. _CBCL face images: http://cbcl.mit.edu/cbcl/software-datasets/FaceData2.html 24 | .. _ORL face images: http://www.cl.cam.ac.uk/research/dtg/attarchive/facedatabase.html 25 | .. _MovieLens 100k: http://www.grouplens.org/node/12 26 | .. _Medlars: http://web.eecs.utk.edu/research/lsi/ 27 | .. _S. cerevisiae: http://dtai.cs.kuleuven.be/clus/hmc-ens/ 28 | 29 | """ 30 | -------------------------------------------------------------------------------- /nimfa/examples/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | This package contains nimfa library examples of usage. It demonstrates the following: 4 | 5 | #. Single run of the specified factorization algorithm. 6 | #. Multiple runs of the specified factorization algorithm. 7 | #. Tracking fitted results across multiple runs and tracking residuals error across single / multiple runs. 8 | #. Quality and performance measures of executed factorizations. 9 | #. Running factorization algorithms with algorithm specific settings and initializations. 10 | 11 | Applications of factorization methods on both synthetic and real world data sets are provided. 12 | 13 | Example using synthetic data set is intended as demonstration of the nimfa library since all currently implemented 14 | factorization algorithms with different initialization methods and specific settings are ran. Others include 15 | applications on real world data sets in: 16 | 17 | * bioinformatics, 18 | * functional genomics, 19 | * text analysis, 20 | * image processing, 21 | * recommendation systems. 22 | """ 23 | 24 | from . import synthetic 25 | from . import all_aml 26 | from . import medulloblastoma 27 | from . import cbcl_images 28 | from . import documents 29 | from . import orl_images 30 | from . import recommendations 31 | from . import gene_func_prediction 32 | -------------------------------------------------------------------------------- /nimfa/methods/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | This package contains implementations of the MF algorithms and seeding methods. 4 | """ 5 | 6 | from . import factorization 7 | from . import seeding 8 | 9 | 10 | def list_mf_methods(): 11 | """Return list of implemented MF methods.""" 12 | return [name for name in factorization.methods] 13 | 14 | 15 | def list_seeding_methods(): 16 | """Return list of implemented seeding methods.""" 17 | return [name for name in seeding.methods] 18 | -------------------------------------------------------------------------------- /nimfa/methods/factorization/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | This package contains implementations of matrix factorization algorithms. 4 | """ 5 | 6 | from .bd import * 7 | from .icm import * 8 | from .lfnmf import * 9 | from .lsnmf import * 10 | from .nmf import * 11 | from .nsnmf import * 12 | from .pmf import * 13 | from .psmf import * 14 | from .snmf import * 15 | from .bmf import * 16 | from .snmnmf import * 17 | from .pmfcc import * 18 | from .sepnmf import * 19 | 20 | methods = {"bd": Bd, 21 | "icm": Icm, 22 | "lfnmf": Lfnmf, 23 | "lsnmf": Lsnmf, 24 | "nmf": Nmf, 25 | "nsnmf": Nsnmf, 26 | "pmf": Pmf, 27 | "psmf": Psmf, 28 | "snmf": Snmf, 29 | "bmf": Bmf, 30 | "snmnmf": Snmnmf, 31 | "pmfcc": Pmfcc, 32 | "sepnmf": SepNmf, 33 | "none": None} 34 | -------------------------------------------------------------------------------- /nimfa/methods/seeding/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | This package contains implementations of initialization methods for matrix factorization. 4 | """ 5 | 6 | from .nndsvd import * 7 | from .random import * 8 | from .fixed import * 9 | from .random_c import * 10 | from .random_vcol import * 11 | 12 | methods = {"random": Random, 13 | "fixed": Fixed, 14 | "nndsvd": Nndsvd, 15 | "random_c": Random_c, 16 | "random_vcol": Random_vcol, 17 | "none": None} 18 | -------------------------------------------------------------------------------- /nimfa/methods/seeding/fixed.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | ################################# 4 | Fixed (``methods.seeding.fixed``) 5 | ################################# 6 | 7 | Fixed factorization. This is the option to completely specify the initial 8 | factorization by passing values for matrix factors. 9 | """ 10 | 11 | from nimfa.utils.linalg import * 12 | 13 | __all__ = ['Fixed'] 14 | 15 | 16 | class Fixed(object): 17 | 18 | def __init__(self): 19 | self.name = "fixed" 20 | 21 | def _set_fixed(self, **factors): 22 | """Set initial factorization.""" 23 | for k in list(factors.keys()): 24 | if factors[k] is not None: 25 | factors[k] = np.matrix(factors[k]) if not sp.isspmatrix( 26 | factors[k]) else factors[k].copy() 27 | else: 28 | factors.pop(k) 29 | self.__dict__.update(factors) 30 | 31 | def initialize(self, V, rank, options): 32 | """ 33 | Return fixed initialized matrix factors. 34 | 35 | :param V: Target matrix, the matrix for MF method to estimate. 36 | :type V: One of the :class:`scipy.sparse` sparse matrices types or 37 | :class:`numpy.matrix` 38 | :param rank: Factorization rank. 39 | :type rank: `int` 40 | :param options: Specify the algorithm and model specific options (e.g. initialization of 41 | extra matrix factor, seeding parameters). 42 | 43 | Option ``idx`` represents the index of the coefficient matrix. The index is by default 0 44 | and corresponds to a factorization model with one mixture matrix (e.g. standard, nonsmooth 45 | model). 46 | :type options: `dict` 47 | """ 48 | self.idx = options.get('idx', 0) 49 | if self.idx == 0: 50 | return self.W, self.H 51 | else: 52 | self.W, getattr(self, 'H' + str(self.idx)) 53 | 54 | def __repr__(self): 55 | return "fixed.Fixed()" 56 | 57 | def __str__(self): 58 | return self.name 59 | -------------------------------------------------------------------------------- /nimfa/methods/seeding/random.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | ################################### 4 | Random (``methods.seeding.random``) 5 | ################################### 6 | 7 | Random is the simplest MF initialization method. 8 | 9 | The entries of factors are drawn from a uniform distribution over 10 | [0, max(target matrix)). Generated matrix factors are sparse matrices with the 11 | default density parameter of 0.01. 12 | """ 13 | 14 | from nimfa.utils.linalg import * 15 | 16 | __all__ = ['Random'] 17 | 18 | class Random(object): 19 | 20 | def __init__(self): 21 | self.name = "random" 22 | 23 | def initialize(self, V, rank, options): 24 | """ 25 | Return initialized basis and mixture matrix (and additional factors if 26 | specified in :param:`Sn`, n = 1, 2, ..., k). 27 | Initialized matrices are of the same type as passed target matrix. 28 | 29 | :param V: Target matrix, the matrix for MF method to estimate. 30 | :type V: One of the :class:`scipy.sparse` sparse matrices types or 31 | :class:`numpy.matrix` 32 | :param rank: Factorization rank. 33 | :type rank: `int` 34 | :param options: Specify the algorithm and model specific options (e.g. initialization of 35 | extra matrix factor, seeding parameters). 36 | 37 | Option ``Sn``, n = 1, 2, 3, ..., k specifies additional k matrix factors which 38 | need to be initialized. The value of each option Sn is a tuple denoting matrix 39 | shape. Matrix factors are returned in the same order as their descriptions in input. 40 | 41 | Option ``density`` represents density of generated matrices. Density of 1 means a 42 | full matrix, density of 0 means a matrix with no nonzero items. Default value is 0.7. 43 | Density parameter is applied only if passed target ``V`` is an instance of one :class:`scipy.sparse` sparse types. 44 | :type options: `dict` 45 | """ 46 | self.rank = rank 47 | self.density = options.get('density', 0.7) 48 | if sp.isspmatrix(V): 49 | self.max = V.data.max() 50 | self._format = V.getformat() 51 | gen = self.gen_sparse 52 | else: 53 | self.max = V.max() 54 | self.prng = np.random.RandomState() 55 | gen = self.gen_dense 56 | self.W = gen(V.shape[0], self.rank) 57 | self.H = gen(self.rank, V.shape[1]) 58 | mfs = [self.W, self.H] 59 | for sn in options: 60 | if sn[0] is 'S' and sn[1:].isdigit(): 61 | mfs.append(gen(options[sn][0], options[sn][1])) 62 | return mfs 63 | 64 | def gen_sparse(self, dim1, dim2): 65 | """ 66 | Return randomly initialized sparse matrix of specified dimensions. 67 | 68 | :param dim1: Dimension along first axis. 69 | :type dim1: `int` 70 | :param dim2: Dimension along second axis. 71 | :type dim2: `int` 72 | """ 73 | rnd = sp.rand(dim1, dim2, density=self.density, format=self._format) 74 | return abs(self.max * rnd) 75 | 76 | def gen_dense(self, dim1, dim2): 77 | """ 78 | Return randomly initialized :class:`numpy.matrix` matrix of specified 79 | dimensions. 80 | 81 | :param dim1: Dimension along first axis. 82 | :type dim1: `int` 83 | :param dim2: Dimension along second axis. 84 | :type dim2: `int` 85 | """ 86 | return np.mat(self.prng.uniform(0, self.max, (dim1, dim2))) 87 | 88 | def __repr__(self): 89 | return "random.Random()" 90 | 91 | def __str__(self): 92 | return self.name 93 | -------------------------------------------------------------------------------- /nimfa/methods/seeding/random_c.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | ####################################### 4 | Random_c (``methods.seeding.random_c``) 5 | ####################################### 6 | 7 | Random C [Albright2006]_ is inexpensive initialization method for nonnegative 8 | matrix factorization. It is inspired by the C matrix in of the CUR decomposition. 9 | The Random C initialization is similar to the Random Vcol method (see 10 | mod:`methods.seeding.random_vcol`) except it chooses p columns at random from 11 | the longest (in 2-norm) columns in target matrix (V), which generally means the 12 | most dense columns of target matrix. 13 | 14 | Initialization of each column of basis matrix is done by averaging p random 15 | columns of l longest columns of target matrix. Initialization 16 | of mixture matrix is similar except for row operations. 17 | """ 18 | 19 | from nimfa.utils.linalg import * 20 | 21 | __all__ = ['Random_c'] 22 | 23 | 24 | class Random_c(object): 25 | 26 | def __init__(self): 27 | self.name = "random_c" 28 | 29 | def initialize(self, V, rank, options): 30 | """ 31 | Return initialized basis and mixture matrix. Initialized matrices are 32 | of the same type as passed target matrix. 33 | 34 | :param V: Target matrix, the matrix for MF method to estimate. 35 | :type V: One of the :class:`scipy.sparse` sparse matrices types or or 36 | :class:`numpy.matrix` 37 | :param rank: Factorization rank. 38 | :type rank: `int` 39 | :param options: Specify the algorithm and model specific options (e.g. initialization of 40 | extra matrix factor, seeding parameters). 41 | 42 | Option ``p_c`` represents the number of columns of target matrix 43 | used to average the column of basis matrix. Default 44 | value for ``p_c`` is 1/5 * (target.shape[1]). 45 | 46 | Option ``p_r`` represents the number of rows of target matrix used 47 | to average the row of basis matrix. Default value for 48 | ``p_r`` is 1/5 * (target.shape[0]). 49 | 50 | Option ``l_c`` represents the first l_c columns of target matrix sorted 51 | descending by length (2-norm). Default value for ``l_c`` is 1/2 * (target.shape[1]). 52 | 53 | Option ``l_r`` represent first l_r rows of target matrix sorted 54 | descending by length (2-norm). Default value for 55 | ``l_r`` is 1/2 * (target.shape[0]). 56 | :type options: `dict` 57 | """ 58 | self.rank = rank 59 | self.p_c = options.get('p_c', int(ceil(1. / 5 * V.shape[1]))) 60 | self.p_r = options.get('p_r', int(ceil(1. / 5 * V.shape[0]))) 61 | self.l_c = options.get('l_c', int(ceil(1. / 2 * V.shape[1]))) 62 | self.l_r = options.get('l_r', int(ceil(1. / 2 * V.shape[0]))) 63 | self.prng = np.random.RandomState() 64 | if sp.isspmatrix(V): 65 | self.W = sp.lil_matrix((V.shape[0], self.rank)) 66 | self.H = sp.lil_matrix((self.rank, V.shape[1])) 67 | top_c = sorted(enumerate([norm(V[:, i], 2) 68 | for i in range(V.shape[1])]), key=itemgetter(1), reverse=True)[:self.l_c] 69 | top_r = sorted( 70 | enumerate([norm(V[i, :], 2) for i in range(V.shape[0])]), key=itemgetter(1), reverse=True)[:self.l_r] 71 | else: 72 | self.W = np.mat(np.zeros((V.shape[0], self.rank))) 73 | self.H = np.mat(np.zeros((self.rank, V.shape[1]))) 74 | top_c = sorted(enumerate([norm(V[:, i], 2) 75 | for i in range(V.shape[1])]), key=itemgetter(1), reverse=True)[:self.l_c] 76 | top_r = sorted( 77 | enumerate([norm(V[i, :], 2) for i in range(V.shape[0])]), key=itemgetter(1), reverse=True)[:self.l_r] 78 | top_c = np.mat(list(zip(*top_c))[0]) 79 | top_r = np.mat(list(zip(*top_r))[0]) 80 | for i in range(self.rank): 81 | self.W[:, i] = V[ 82 | :, top_c[0, self.prng.randint(low=0, high=self.l_c, size=self.p_c)].tolist()[0]].mean(axis=1) 83 | self.H[i, :] = V[ 84 | top_r[0, self.prng.randint(low=0, high=self.l_r, size=self.p_r)].tolist()[0], :].mean(axis=0) 85 | # return sparse or dense initialization 86 | if sp.isspmatrix(V): 87 | return self.W.tocsr(), self.H.tocsr() 88 | else: 89 | return self.W, self.H 90 | 91 | def __repr__(self): 92 | return "random_c.Random_c()" 93 | 94 | def __str__(self): 95 | return self.name 96 | -------------------------------------------------------------------------------- /nimfa/methods/seeding/random_vcol.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | ############################################# 4 | Random_vcol (``methods.seeding.random_vcol``) 5 | ############################################# 6 | 7 | Random Vcol [Albright2006]_ is inexpensive initialization method for nonnegative 8 | matrix factorization. Random Vcol forms an initialization of each column of the 9 | basis matrix (W) by averaging p random columns of target matrix (V). Similarly, 10 | Random Vcol forms an initialization of each row of the mixture matrix (H) by 11 | averaging p random rows of target matrix (V). It makes more sense to build the 12 | basis vectors from the given data than to form completely random basis vectors, 13 | as random initialization does. Sparse matrices are built from the original 14 | sparse data. 15 | 16 | Method's performance lies between random initialization and centroid 17 | initialization, which is built from the centroid decomposition. 18 | """ 19 | 20 | from nimfa.utils.linalg import * 21 | 22 | __all__ = ['Random_vcol'] 23 | 24 | 25 | class Random_vcol(object): 26 | 27 | def __init__(self): 28 | self.name = "random_vcol" 29 | 30 | def initialize(self, V, rank, options): 31 | """ 32 | Return initialized basis and mixture matrix. Initialized matrices are of 33 | the same type as passed target matrix. 34 | 35 | :param V: Target matrix, the matrix for MF method to estimate. 36 | :type V: One of the :class:`scipy.sparse` sparse matrices types or or 37 | :class:`numpy.matrix` 38 | :param rank: Factorization rank. 39 | :type rank: `int` 40 | :param options: Specify the algorithm and model specific options (e.g. initialization of 41 | extra matrix factor, seeding parameters). 42 | 43 | Option ``p_c`` represents the number of columns of target matrix used 44 | to average the column of basis matrix. Default value for ``p_c`` is 45 | 1/5 * (target.shape[1]). 46 | 47 | Option ``p_r`` represent the number of rows of target matrix used to 48 | average the row of basis matrix. Default value for ``p_r`` is 1/5 * (target.shape[0]). 49 | :type options: `dict` 50 | """ 51 | self.rank = rank 52 | self.p_c = options.get('p_c', int(ceil(1. / 5 * V.shape[1]))) 53 | self.p_r = options.get('p_r', int(ceil(1. / 5 * V.shape[0]))) 54 | self.prng = np.random.RandomState() 55 | if sp.isspmatrix(V): 56 | self.W = sp.lil_matrix((V.shape[0], self.rank)) 57 | self.H = sp.lil_matrix((self.rank, V.shape[1])) 58 | else: 59 | self.W = np.mat(np.zeros((V.shape[0], self.rank))) 60 | self.H = np.mat(np.zeros((self.rank, V.shape[1]))) 61 | for i in range(self.rank): 62 | self.W[:, i] = V[:, self.prng.randint( 63 | low=0, high=V.shape[1], size=self.p_c)].mean(axis=1) 64 | self.H[i, :] = V[ 65 | self.prng.randint(low=0, high=V.shape[0], size=self.p_r), :].mean(axis=0) 66 | # return sparse or dense initialization 67 | if sp.isspmatrix(V): 68 | return self.W.tocsr(), self.H.tocsr() 69 | else: 70 | return self.W, self.H 71 | 72 | def __repr__(self): 73 | return "random_vcol.Random_vcol()" 74 | 75 | def __str__(self): 76 | return self.name 77 | -------------------------------------------------------------------------------- /nimfa/models/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | This package contains factorization models used in the library nimfa. Specifically, it contains the following: 4 | 5 | #. Generic factorization model for handling common computations and assessing quality and performance 6 | measures in NMF. 7 | #. Generic factorization model for handling standard MF. 8 | #. Implementation of the standard model to manage factorizations that follow standard NMF model. 9 | #. Implementation of the alternative nonsmooth model to manage factorizations that follow nonstandard NMF model 10 | (e.g. nsnmf). 11 | #. Implementation of the alternative multiple model to manage factorizations that follow NMF nonstandard model 12 | (e.g. snmnmf). 13 | #. Tracker of MF fitted model across multiple runs of the factorizations and tracker of 14 | the residuals error across iterations of single/multiple runs. 15 | #. Implementation for storing MF fitted model and MF results. 16 | """ 17 | 18 | from . import nmf 19 | from . import nmf_std 20 | from . import nmf_ns 21 | from . import nmf_mm 22 | from . import smf 23 | from . import mf_track 24 | from . import mf_fit 25 | -------------------------------------------------------------------------------- /nimfa/models/mf_track.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | ############################## 4 | Mf_track (``models.mf_track``) 5 | ############################## 6 | """ 7 | 8 | 9 | class Mf_track(): 10 | """ 11 | Base class for tracking MF fitted model across multiple runs of the factorizations or tracking 12 | the residuals error across iterations of single/multiple runs. 13 | 14 | The purpose of this class is to store matrix factors from multiple runs of the algorithm which can then be used 15 | for performing quality and performance measures. Because of additional space consumption for storing multiple 16 | matrix factors, tracking is used only if explicitly specified by user through runtime option. In summary, when 17 | tracking factors, the following is retained from each run: 18 | 19 | #. fitted factorization model depending on the factorization method; 20 | #. final value of objective function; 21 | #. performed number of iterations. 22 | 23 | Instead of tracking fitted factorization model, callback function can be set, which will be called after each 24 | factorization run. For more details see :mod:`mf_run`. 25 | 26 | The purpose of this class is to store residuals across iterations which can then be used for plotting the trajectory 27 | of the residuals track or estimating proper number of iterations. 28 | """ 29 | def __init__(self): 30 | """ 31 | Construct model for tracking fitted factorization model across multiple runs or tracking the residuals error across iterations. 32 | """ 33 | self._factors = {} 34 | self._residuals = {} 35 | 36 | def track_error(self, run, residuals): 37 | """ 38 | Add residuals error after one iteration. 39 | 40 | :param run: Specify the run to which ``residuals`` belongs. Error tracking can be 41 | also used if multiple runs are enabled. 42 | :type run: `int` 43 | 44 | :param residuals: Residuals between the target matrix and its MF estimate. 45 | :type residuals: `float` 46 | """ 47 | self._residuals.setdefault(run, []) 48 | self._residuals[run].append(residuals) 49 | 50 | def track_factor(self, run, **track_model): 51 | """ 52 | Add matrix factorization factors (and method specific model data) after one factorization run. 53 | 54 | :param run: Specify the run to which ``track_model`` belongs. 55 | :type run: 'int' 56 | :param track_model: Matrix factorization factors. 57 | :type track_model: algorithm specific 58 | """ 59 | self._factors[run] = t_model(track_model) 60 | 61 | def get_factor(self, run=0): 62 | """ 63 | Return matrix factorization factors from run :param:`run`. 64 | 65 | :param run: Saved factorization factors (and method specific model data) of 66 | ``run``'th run are returned. 67 | :type run: `int` 68 | """ 69 | return self._factors[run] 70 | 71 | def get_error(self, run=0): 72 | """ 73 | Return residuals track from one run of the factorization. 74 | 75 | :param run: Specify the run of which error track is desired. By default ``run`` is 1. 76 | :type run: `int` 77 | """ 78 | return self._residuals[run] 79 | 80 | 81 | class t_model: 82 | 83 | """ 84 | Tracking factors model. 85 | """ 86 | 87 | def __init__(self, td): 88 | self.__dict__.update(td) 89 | -------------------------------------------------------------------------------- /nimfa/models/nmf_ns.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | ########################## 4 | Nmf_ns (``models.nmf_ns``) 5 | ########################## 6 | """ 7 | 8 | from .nmf import * 9 | 10 | 11 | class Nmf_ns(Nmf): 12 | """ 13 | Implementation of the alternative model to manage factorizations that follow 14 | nonstandard NMF model. This modification is required by the Nonsmooth NMF 15 | algorithm (NSNMF) [Montano2006]_. The Nonsmooth NMF algorithm is a modification 16 | of the standard divergence based NMF methods. By introducing a smoothing matrix 17 | it is aimed to achieve global sparseness. 18 | 19 | It is the underlying model of matrix factorization and provides structure of 20 | modified standard NMF model. 21 | 22 | .. attribute:: W 23 | 24 | Basis matrix -- the first matrix factor in the nonsmooth NMF model 25 | 26 | .. attribute:: H 27 | 28 | Mixture matrix -- the third matrix factor in the nonsmooth NMF model 29 | 30 | .. attribute:: S 31 | 32 | Smoothing matrix -- the middle matrix factor (V = WSH) in the nonsmooth NMF model 33 | 34 | The interpretation of the basis and mixture matrix is such as in the standard NMF model. 35 | The smoothing matrix is an extra square matrix whose entries depends on smoothing 36 | parameter theta which can be specified as algorithm specific model option. For detailed 37 | explanation of the NSNMF algorithm see :mod:`methods.factorization.nsnmf`. 38 | """ 39 | def __init__(self, params): 40 | """ 41 | Construct factorization model that manages nonsmooth NMF models. 42 | 43 | :param params: MF runtime and algorithm parameters and options. For detailed 44 | explanation of the general model parameters see :mod:`mf_run`. For 45 | algorithm specific model options see documentation of chosen 46 | factorization method. 47 | :type params: `dict` 48 | """ 49 | self.model_name = "ns" 50 | self.V1 = None 51 | self.H1 = None 52 | Nmf.__init__(self, params) 53 | if sp.isspmatrix(self.V) and (self.V.data < 0).any() or not sp.isspmatrix(self.V) and (self.V < 0).any(): 54 | raise utils.MFError("The input matrix contains negative elements.") 55 | 56 | def basis(self): 57 | """Return the matrix of basis vectors.""" 58 | return self.W 59 | 60 | def target(self, idx=None): 61 | """ 62 | Return the target matrix to estimate. 63 | 64 | :param idx: Used in the multiple NMF model. In nonsmooth NMF ``idx`` is always None. 65 | :type idx: None 66 | """ 67 | return self.V 68 | 69 | def coef(self, idx=None): 70 | """ 71 | Return the matrix of mixture coefficients. 72 | 73 | :param idx: Used in the multiple NMF model. In nonsmooth NMF ``idx`` is always None. 74 | :type idx: None 75 | """ 76 | return self.H 77 | 78 | def smoothing(self): 79 | """Return the smoothing matrix.""" 80 | return self.S 81 | 82 | def fitted(self, idx=None): 83 | """ 84 | Compute the estimated target matrix according to the nonsmooth NMF algorithm model. 85 | 86 | :param idx: Used in the multiple NMF model. In nonsmooth NMF ``idx`` is always None. 87 | :type idx: None 88 | """ 89 | return dot(dot(self.W, self.S), self.H) 90 | 91 | def distance(self, metric='euclidean', idx=None): 92 | """ 93 | Return the loss function value. 94 | 95 | :param distance: Specify distance metric to be used. Possible are Euclidean and 96 | Kullback-Leibler (KL) divergence. Strictly, KL is not a metric. 97 | :type distance: `str` with values 'euclidean' or 'kl' 98 | 99 | :param idx: Used in the multiple NMF model. In nonsmooth NMF ``idx`` is always None. 100 | :type idx: None 101 | """ 102 | if metric.lower() == 'euclidean': 103 | R = self.V - dot(dot(self.W, self.S), self.H) 104 | return power(R, 2).sum() 105 | elif metric.lower() == 'kl': 106 | Va = dot(dot(self.W, self.S), self.H) 107 | return (multiply(self.V, sop(elop(self.V, Va, div), op=np.log)) - self.V + Va).sum() 108 | else: 109 | raise utils.MFError("Unknown distance metric.") 110 | 111 | def residuals(self, idx=None): 112 | """ 113 | Return residuals matrix between the target matrix and its nonsmooth NMF estimate. 114 | 115 | :param idx: Used in the multiple NMF model. In nonsmooth NMF ``idx`` is always None. 116 | :type idx: None 117 | """ 118 | return self.V - dot(dot(self.W, self.S), self.H) 119 | -------------------------------------------------------------------------------- /nimfa/models/nmf_std.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | ############################ 4 | Nmf_std (``models.nmf_std``) 5 | ############################ 6 | """ 7 | 8 | from .nmf import * 9 | 10 | 11 | class Nmf_std(Nmf): 12 | """ 13 | Implementation of the standard model to manage factorizations that follow standard NMF model. 14 | 15 | It is the underlying model of matrix factorization and provides a general structure 16 | of standard NMF model. 17 | 18 | .. attribute:: W 19 | 20 | Basis matrix -- the first matrix factor in standard factorization 21 | 22 | .. attribute:: H 23 | 24 | Mixture matrix -- the second matrix factor in standard factorization 25 | """ 26 | def __init__(self, params): 27 | """ 28 | Construct factorization model that manages standard NMF models. 29 | 30 | :param params: MF runtime and algorithm parameters and options. For detailed 31 | explanation of the general model parameters see :mod:`mf_run`. For 32 | algorithm specific model options see documentation of chosen factorization method. 33 | :type params: `dict` 34 | """ 35 | self.model_name = "std" 36 | self.V1 = None 37 | self.H1 = None 38 | Nmf.__init__(self, params) 39 | if sp.isspmatrix(self.V) and (self.V.data < 0).any() or not sp.isspmatrix(self.V) and (self.V < 0).any(): 40 | raise utils.MFError("The input matrix contains negative elements.") 41 | 42 | def basis(self): 43 | """Return the matrix of basis vectors.""" 44 | return self.W 45 | 46 | def target(self, idx=None): 47 | """ 48 | Return the target matrix to estimate. 49 | 50 | :param idx: Used in the multiple NMF model. In standard NMF ``idx`` is always None. 51 | :type idx: None 52 | """ 53 | return self.V 54 | 55 | def coef(self, idx=None): 56 | """ 57 | Return the matrix of mixture coefficients. 58 | 59 | :param idx: Used in the multiple NMF model. In standard NMF ``idx`` is always None. 60 | :type idx: None 61 | """ 62 | return self.H 63 | 64 | def fitted(self, idx=None): 65 | """ 66 | Compute the estimated target matrix according to the NMF algorithm model. 67 | 68 | :param idx: Used in the multiple NMF model. In standard NMF ``idx`` is always None. 69 | :type idx: None 70 | """ 71 | return dot(self.W, self.H) 72 | 73 | def distance(self, metric='euclidean', idx=None): 74 | """ 75 | Return the loss function value. 76 | 77 | :param distance: Specify distance metric to be used. Possible are Euclidean and 78 | Kullback-Leibler (KL) divergence. Strictly, KL is not a metric. 79 | :type distance: `str` with values 'euclidean' or 'kl' 80 | 81 | :param idx: Used in the multiple NMF model. In standard NMF ``idx`` is always None. 82 | :type idx: None 83 | """ 84 | if metric.lower() == 'euclidean': 85 | R = self.V - dot(self.W, self.H) 86 | return (power(R, 2)).sum() 87 | elif metric.lower() == 'kl': 88 | Va = dot(self.W, self.H) 89 | return (multiply(self.V, sop(elop(self.V, Va, div), op=np.log)) - self.V + Va).sum() 90 | else: 91 | raise utils.MFError("Unknown distance metric.") 92 | 93 | def residuals(self, idx=None): 94 | """ 95 | Return residuals matrix between the target matrix and its NMF estimate. 96 | 97 | :param idx: Used in the multiple NMF model. In standard NMF ``idx`` is always None. 98 | :type idx: None 99 | """ 100 | return self.V - dot(self.W, self.H) 101 | -------------------------------------------------------------------------------- /nimfa/tests/__init__.py: -------------------------------------------------------------------------------- 1 | """Various tests for nimfa code""" 2 | -------------------------------------------------------------------------------- /nimfa/tests/test_examples.py: -------------------------------------------------------------------------------- 1 | """Test examples provided by nimfa""" 2 | 3 | import numpy as np 4 | 5 | from nimfa.examples import synthetic 6 | from nimfa.examples import orl_images 7 | from nimfa.examples import all_aml 8 | from nimfa.examples import medulloblastoma 9 | from nimfa.examples import recommendations 10 | from nimfa.examples import cbcl_images 11 | 12 | 13 | import pytest 14 | 15 | synthetic_runs = [getattr(synthetic, f) for f in dir(synthetic) if f.startswith('run_')] 16 | 17 | @pytest.mark.medium 18 | @pytest.mark.parametrize('synth_run', synthetic_runs) 19 | def test_synthetic(synth_run, monkeypatch): 20 | ran_funcs = [] 21 | def check_synthetic_result(fit, idx=None): 22 | """Basic checks that synthetic results are 'Ok'""" 23 | ran_funcs.append(1) 24 | # typically tests pass with > .75 but because of still present inherent 25 | # randomizations results vary. So to be on a safe side for now set a very 26 | # liberal threshold 27 | # TODO: make runs deterministic 28 | assert fit.summary(idx)['evar'] > 0.62 29 | 30 | # Setup data exactly the same way as in synthetic example 31 | prng = np.random.RandomState(42) 32 | # construct target matrices 33 | V = prng.rand(20, 30) 34 | V1 = prng.rand(20, 25) 35 | 36 | monkeypatch.setattr(synthetic, 'print_info', check_synthetic_result) 37 | if synth_run is getattr(synthetic, 'run_snmnmf'): 38 | synth_run(V, V1) 39 | else: 40 | synth_run(V) 41 | # for paranoid monkeypatching people, to make sure that the patch worked 42 | assert ran_funcs != [], "we must have ran our check" 43 | 44 | #Check if the example datasets run 45 | @pytest.mark.slow 46 | def test_orl(): 47 | orl_images.run() 48 | 49 | @pytest.mark.slow 50 | def test_aml(): 51 | all_aml.run() 52 | 53 | @pytest.mark.slow 54 | def test_medulloblastoma(): 55 | medulloblastoma.run() 56 | 57 | #@pytest.mark.slow 58 | #def test_recommendations(): 59 | # recommendations.run() 60 | 61 | @pytest.mark.slow 62 | def test_cbcl(): 63 | cbcl_images.run() 64 | -------------------------------------------------------------------------------- /nimfa/utils/__init__.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | This package contains implementations of linear algebra operations for sparse and dense matrices and 4 | utils for convenient operation of nimfa library. 5 | """ 6 | 7 | from . import linalg 8 | from . import utils 9 | -------------------------------------------------------------------------------- /nimfa/utils/utils.py: -------------------------------------------------------------------------------- 1 | 2 | """ 3 | ######################### 4 | Utils (``utils.utils``) 5 | ######################### 6 | """ 7 | 8 | class MFError(Exception): 9 | 10 | """ 11 | Generic Python exception derived object raised by nimfa library. 12 | 13 | This is general purpose exception class, derived from Python common base 14 | class for all non-exit exceptions. It is programmatically raised in nimfa 15 | library functions when: 16 | 17 | #. linear algebra related condition prevents further correct execution 18 | of a function; 19 | #. user input parameters are ambiguous or not in correct format. 20 | """ 21 | 22 | def __init__(self, msg): 23 | self.msg = msg 24 | 25 | def __str__(self): 26 | return repr(self.msg) 27 | -------------------------------------------------------------------------------- /requirements-tests.txt: -------------------------------------------------------------------------------- 1 | # do not explicitly install base requirements via pip 2 | # -r requirements.txt 3 | pytest 4 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | numpy>=1.7.0 2 | scipy>=0.12.0 3 | -------------------------------------------------------------------------------- /sc-RNAseq_data/Cortex_hippocampus_input_.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/sc-RNAseq_data/Cortex_hippocampus_input_.zip -------------------------------------------------------------------------------- /sc-RNAseq_data/lungEpithelium_full_input_.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/sc-RNAseq_data/lungEpithelium_full_input_.zip -------------------------------------------------------------------------------- /sc-RNAseq_data/lungEpithelium_reduced_input_.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/sc-RNAseq_data/lungEpithelium_reduced_input_.zip -------------------------------------------------------------------------------- /sc-RNAseq_data/mouseBlastocyst_input_.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ccshao/nimfa/e9cf88deb3feae4cac40b6f24b05638294294c05/sc-RNAseq_data/mouseBlastocyst_input_.zip -------------------------------------------------------------------------------- /sc-RNAseq_scripts/nmfHeatmap.R: -------------------------------------------------------------------------------- 1 | ## File Name : nmfHeatmap.R 2 | ## Created By : Chunxuan Shao 3 | ## Creation Date : Mon Jan 26 15:01:35 2015 4 | ## Last Modified : Fri 26 May 2017 05:11:29 PM CEST 5 | ## Description: 1.) draw heatmap from cell basis matrix; 6 | 7 | library(RColorBrewer) 8 | ## NMF does not work now in R 3.4.0 9 | suppressMessages(library(vegan)) 10 | library(pheatmap) 11 | 12 | ################################################################################ 13 | rsplit <- function (x, s, n) { 14 | p <- paste0("[^", s, "]*") 15 | rx <- paste0(s, "(?=", paste(rep(paste0(p, s), n - 1), collapse = ""), 16 | p, "$)") 17 | unlist(strsplit(x, rx, perl = TRUE)) 18 | } 19 | 20 | ff_basisMatrix <- function(fileName) { 21 | ## read the normalized basis matrix; 22 | ## plot the heatmap; 23 | # browser() 24 | dat.nor <- read.delim(fileName, row.names = 1) 25 | filePre <- rsplit(fileName, ".", 1)[1] 26 | # cat("+++ Making heatmap for", filePre, "+++\n") 27 | 28 | pdf(paste(filePre, ".metaCells.heatmap.pdf", sep = ""), w = 5, h = 12, onefile=FALSE) 29 | # xx.1 <- aheatmap_wrapper(dat.nor, col = colorRampPalette(rev(brewer.pal(11, "PuOr")))(100), fontsize = 12) 30 | # xx.1 <- aheatmap(dat.nor, col = colorRampPalette(rev(brewer.pal(11, "PuOr")))(100), fontsize = 12) 31 | ## to reorder the dendgram as heatmap in base 32 | xx.1 <- pheatmap(dat.nor, 33 | col = colorRampPalette(rev(brewer.pal(11, "PuOr")))(100), 34 | show_rownames = FALSE ) 35 | dev.off() 36 | write.table(rownames(dat.nor)[xx.1$tree_row$order], file = paste0(filePre, ".cells.order.inheatmap.csv"), sep = "\t", quote = FALSE) 37 | # xx.2 <- heatmap(dat.nor, scale = "none") 38 | # write.table( rev(rownames(dat.nor)[xx.2$rowInd]), file = "1.csv", sep = "\t", quote = FALSE) 39 | 40 | } 41 | 42 | ################################################################################ 43 | 44 | args <- commandArgs(trailingOnly = TRUE) 45 | # print(args) 46 | fileName <- args[1] 47 | 48 | ff_basisMatrix(fileName) 49 | 50 | -------------------------------------------------------------------------------- /setup.cfg: -------------------------------------------------------------------------------- 1 | [bdist_wheel] 2 | universal=1 3 | -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- 1 | import os 2 | from glob import glob 3 | from setuptools import setup, find_packages 4 | import subprocess 5 | import imp 6 | 7 | 8 | DISTNAME = 'nimfa' 9 | MAINTAINER = 'Marinka Zitnik' 10 | MAINTAINER_EMAIL = 'marinka@cs.stanford.edu' 11 | DESCRIPTION = 'A Python module for nonnegative matrix factorization' 12 | LONG_DESCRIPTION = open('README.md').read() 13 | URL = 'http://nimfa.biolab.si' 14 | DOWNLOAD_URL = 'http://github.com/marinkaz/nimfa' 15 | KEYWORDS = ['matrix factorization', 'nonnegative matrix factorization', 16 | 'bioinformatics', 'data mining', 'machine learning'] 17 | LICENSE = 'BSD' 18 | VERSION = '1.3.2' 19 | ISRELEASED = True 20 | 21 | INSTALL_REQUIRES = ( 22 | 'numpy>=1.7.0', 23 | 'scipy>=0.12.0', 24 | ) 25 | 26 | 27 | def get_package_data(topdir, excluded=set()): 28 | retval = [] 29 | for dirname, subdirs, files in os.walk(os.path.join(DISTNAME, topdir)): 30 | for x in excluded: 31 | if x in subdirs: 32 | subdirs.remove(x) 33 | retval.append(os.path.join(dirname[len(DISTNAME)+1:], '*.*')) 34 | return retval 35 | 36 | 37 | def get_data_files(dest, source): 38 | retval = [] 39 | for dirname, subdirs, files in os.walk(source): 40 | retval.append( 41 | (os.path.join(dest, dirname[len(source)+1:]), glob(os.pathjoin(dirname, '*.*'))) 42 | ) 43 | return retval 44 | 45 | 46 | # Return the git revision as a string 47 | def git_version(): 48 | """Return the git revision as a string. 49 | 50 | Copied from numpy setup.py 51 | """ 52 | def _minimal_ext_cmd(cmd): 53 | # construct minimal environment 54 | env = {} 55 | for k in ['SYSTEMROOT', 'PATH']: 56 | v = os.environ.get(k) 57 | if v is not None: 58 | env[k] = v 59 | # LANGUAGE is used on win32 60 | env['LANGUAGE'] = 'C' 61 | env['LANG'] = 'C' 62 | env['LC_ALL'] = 'C' 63 | out = subprocess.Popen(cmd, stdout = subprocess.PIPE, env=env).communicate()[0] 64 | return out 65 | 66 | try: 67 | out = _minimal_ext_cmd(['git', 'rev-parse', 'HEAD']) 68 | GIT_REVISION = out.strip().decode('ascii') 69 | except OSError: 70 | GIT_REVISION = "Unknown" 71 | return GIT_REVISION 72 | 73 | 74 | def write_version_py(filename='nimfa/version.py'): 75 | # Copied from numpy setup.py 76 | cnt = """ 77 | # THIS FILE IS GENERATED FROM NIMFA SETUP.PY 78 | short_version = '%(version)s' 79 | version = '%(version)s' 80 | full_version = '%(full_version)s' 81 | git_revision = '%(git_revision)s' 82 | release = %(isrelease)s 83 | 84 | if not release: 85 | version = full_version 86 | short_version += ".dev" 87 | """ 88 | FULLVERSION = VERSION 89 | if os.path.exists('.git'): 90 | GIT_REVISION = git_version() 91 | elif os.path.exists('nimfa/version.py'): 92 | # must be a source distribution, use existing version file 93 | version = imp.load_source('nimfa.version', 'nimfa/version.py') 94 | GIT_REVISION = version.git_revision 95 | else: 96 | GIT_REVISION = 'Unknown' 97 | 98 | if not ISRELEASED: 99 | FULLVERSION += '.dev0+' + GIT_REVISION[:7] 100 | 101 | a = open(filename, 'w') 102 | try: 103 | a.write(cnt % {'version': VERSION, 104 | 'full_version': FULLVERSION, 105 | 'git_revision': GIT_REVISION, 106 | 'isrelease': str(ISRELEASED)}) 107 | finally: 108 | a.close() 109 | 110 | 111 | 112 | def setup_package(): 113 | write_version_py() 114 | setup( 115 | name=DISTNAME, 116 | version=VERSION, 117 | author=MAINTAINER, 118 | author_email=MAINTAINER_EMAIL, 119 | maintainer=MAINTAINER, 120 | maintainer_email=MAINTAINER_EMAIL, 121 | description=DESCRIPTION, 122 | url=URL, 123 | download_url=DOWNLOAD_URL, 124 | keywords=KEYWORDS, 125 | install_requires=INSTALL_REQUIRES, 126 | packages=find_packages(), 127 | package_dir={DISTNAME: './nimfa'}, 128 | package_data={DISTNAME: get_package_data('datasets')}, 129 | license=LICENSE, 130 | long_description=LONG_DESCRIPTION, 131 | classifiers=['Intended Audience :: Science/Research', 132 | 'Intended Audience :: Developers', 133 | 'License :: OSI Approved', 134 | 'Programming Language :: Python', 135 | 'Topic :: Software Development', 136 | 'Topic :: Scientific/Engineering', 137 | 'Topic :: Scientific/Engineering :: Artificial Intelligence', 138 | 'Topic :: Scientific/Engineering :: Bio-Informatics', 139 | 'Programming Language :: Python :: 2', 140 | 'Programming Language :: Python :: 3',], 141 | ) 142 | 143 | 144 | if __name__ == "__main__": 145 | setup_package() 146 | -------------------------------------------------------------------------------- /tox.ini: -------------------------------------------------------------------------------- 1 | [tox] 2 | envlist = py27,py34 3 | 4 | [testenv] 5 | commands = py.test nimfa 6 | deps = -r{toxinidir}/requirements-tests.txt 7 | sitepackages = True 8 | 9 | [testenv:cover] 10 | commands = py.test --cov=nimfa 11 | --------------------------------------------------------------------------------