{
  "_id": "6a2275d9cd65a98ecbd4aa54",
  "Package": "RcppML",
  "Type": "Package",
  "Title": "Fast Non-Negative Matrix Factorization and Divisive Clustering",
  "Version": "1.0.0",
  "Date": "2026-03-10",
  "Authors@R": "person(\"Zachary\", \"DeBruine\", \nemail = \"zacharydebruine@gmail.com\",\nrole = c(\"aut\", \"cre\"),\ncomment = c(ORCID = \"0000-0003-2234-4827\"))",
  "Description": "High-performance non-negative matrix factorization (NMF),\nsingular value decomposition (SVD), and divisive clustering for\nlarge sparse and dense matrices. Implements alternating least\nsquares with coordinate descent and Cholesky NNLS solvers,\ndiagonal scaling for interpretable factors, cross-validation\nfor automatic rank selection, multiple distribution-based\nlosses (Gaussian, Poisson, Generalized Poisson, Negative\nBinomial, Gamma, Inverse Gaussian, Tweedie) via iteratively\nreweighted least squares, regularization (L1, L2, L21, angular,\ngraph Laplacian), and optional GPU acceleration via CUDA.\nIncludes divisive clustering via recursive rank-2\nfactorization, consensus clustering, and the StreamPress\ncompressed sparse matrix format. Methods are described in\nDeBruine, Melcher, and Triche (2021)\n<doi:10.1101/2021.09.01.458620>.",
  "License": "GPL (>= 3)",
  "RoxygenNote": "7.3.3",
  "VignetteBuilder": "knitr",
  "Config/testthat/edition": "3",
  "LazyData": "true",
  "LazyDataCompression": "xz",
  "URL": "https://github.com/zdebruine/RcppML",
  "BugReports": "https://github.com/zdebruine/RcppML/issues",
  "SystemRequirements": "CUDA Toolkit >= 11.0 (optional, for GPU\nacceleration)",
  "Encoding": "UTF-8",
  "Config/pak/sysreqs": "nvidia-cuda-dev",
  "Repository": "https://zdebruine.r-universe.dev",
  "Date/Publication": "2026-04-06 20:58:48 UTC",
  "RemoteUrl": "https://github.com/zdebruine/rcppml",
  "RemoteRef": "HEAD",
  "RemoteSha": "df69dddbe37962cd0179b6b6c6ace94e400b4f60",
  "NeedsCompilation": "yes",
  "Packaged": {
    "Date": "2026-06-05 06:56:34 UTC",
    "User": "root"
  },
  "Author": "Zachary DeBruine [aut, cre] (ORCID:\n<https://orcid.org/0000-0003-2234-4827>)",
  "Maintainer": "Zachary DeBruine <zacharydebruine@gmail.com>",
  "MD5sum": "86555ed995b7f5254b29d3de8c3572a7",
  "_user": "zdebruine",
  "_type": "src",
  "_file": "RcppML_1.0.0.tar.gz",
  "_fileid": "0f041997bbc8fb2e34a47e2af0ed0324d4fa316f798c0bfd3c5e22aa54e273d8",
  "_filesize": 7993286,
  "_sha256": "0f041997bbc8fb2e34a47e2af0ed0324d4fa316f798c0bfd3c5e22aa54e273d8",
  "_created": "2026-06-05T06:56:34.000Z",
  "_published": "2026-06-05T07:08:09.598Z",
  "_distro": "noble",
  "_jobs": [
    {
      "job": 79679701914,
      "time": 509,
      "config": "linux-devel-arm64",
      "r": "4.7.0",
      "check": "WARNING",
      "artifact": "7430791482"
    },
    {
      "job": 79679701955,
      "time": 428,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "WARNING",
      "artifact": "7430770368"
    },
    {
      "job": 79679701937,
      "time": 501,
      "config": "linux-release-arm64",
      "r": "4.6.0",
      "check": "WARNING",
      "artifact": "7430789396"
    },
    {
      "job": 79679702027,
      "time": 427,
      "config": "linux-release-x86_64",
      "r": "4.6.0",
      "check": "WARNING",
      "artifact": "7430770413"
    },
    {
      "job": 79679701961,
      "time": 300,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "WARNING",
      "artifact": "7430734891"
    },
    {
      "job": 79679701986,
      "time": 506,
      "config": "macos-oldrel-x86_64",
      "r": "4.5.3",
      "check": "WARNING",
      "artifact": "7430786080"
    },
    {
      "job": 79679701948,
      "time": 275,
      "config": "macos-release-arm64",
      "r": "4.6.0",
      "check": "WARNING",
      "artifact": "7430729552"
    },
    {
      "job": 79679701966,
      "time": 461,
      "config": "macos-release-x86_64",
      "r": "4.6.0",
      "check": "WARNING",
      "artifact": "7430775560"
    },
    {
      "job": 79678740463,
      "time": 470,
      "config": "source",
      "r": "4.6.0",
      "check": "ERROR",
      "artifact": "7430667718"
    },
    {
      "job": 79679701956,
      "time": 275,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7430734429"
    },
    {
      "job": 79679701940,
      "time": 453,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "WARNING",
      "artifact": "7430776906"
    },
    {
      "job": 79679701921,
      "time": 406,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "WARNING",
      "artifact": "7430765428"
    },
    {
      "job": 79679701950,
      "time": 472,
      "config": "windows-release",
      "r": "4.6.0",
      "check": "WARNING",
      "artifact": "7430781499"
    }
  ],
  "_buildurl": "https://github.com/r-universe/zdebruine/actions/runs/27000195698",
  "_status": "failure",
  "_host": "GitHub-Actions",
  "_upstream": "https://github.com/zdebruine/rcppml",
  "_commit": {
    "id": "df69dddbe37962cd0179b6b6c6ace94e400b4f60",
    "author": "Zachary DeBruine <debruinz@port.clipper.gvsu.edu>",
    "committer": "Zachary DeBruine <debruinz@port.clipper.gvsu.edu>",
    "message": "fix(gpu): correct stale include path in sp_gpu_bridge.cu\n\nChange #include <RcppML/core/logging.hpp> to <FactorNet/core/logging.hpp>\nto match the current header-only library namespace.\n\nFixes #74\n",
    "time": 1775509128
  },
  "_maintainer": {
    "name": "Zachary DeBruine",
    "email": "zacharydebruine@gmail.com",
    "login": "zdebruine",
    "linkedin": "in/zachdebruine",
    "orcid": "0000-0003-2234-4827",
    "description": "Genomics Intelligence Infrastructure",
    "uuid": 2014816
  },
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.1.0",
      "role": "Depends"
    },
    {
      "package": "Matrix",
      "role": "Depends"
    },
    {
      "package": "Rcpp",
      "role": "LinkingTo"
    },
    {
      "package": "RcppEigen",
      "role": "LinkingTo"
    },
    {
      "package": "Rcpp",
      "role": "Imports"
    },
    {
      "package": "methods",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "ggplot2",
      "role": "Suggests"
    },
    {
      "package": "hdf5r",
      "role": "Suggests"
    },
    {
      "package": "jsonlite",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "pheatmap",
      "role": "Suggests"
    },
    {
      "package": "randomForest",
      "role": "Suggests"
    },
    {
      "package": "RColorBrewer",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "patchwork",
      "role": "Suggests"
    },
    {
      "package": "plotly",
      "role": "Suggests"
    },
    {
      "package": "scales",
      "role": "Suggests"
    },
    {
      "package": "Seurat",
      "role": "Suggests"
    },
    {
      "package": "SeuratData",
      "role": "Suggests"
    },
    {
      "package": "SeuratObject",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    },
    {
      "package": "uwot",
      "role": "Suggests"
    },
    {
      "package": "viridis",
      "role": "Suggests"
    }
  ],
  "_owner": "zdebruine",
  "_selfowned": true,
  "_usedby": 60,
  "_updates": [
    {
      "week": "2026-10",
      "n": 16
    },
    {
      "week": "2026-11",
      "n": 12
    },
    {
      "week": "2026-15",
      "n": 1
    }
  ],
  "_tags": [
    {
      "name": "v1.0.0",
      "date": "2026-03-14"
    }
  ],
  "_topics": [
    "clustering",
    "matrix-factorization",
    "nmf",
    "rcpp",
    "rcppeigen",
    "sparse-matrix",
    "cpp",
    "openmp"
  ],
  "_stars": 122,
  "_contributors": [
    {
      "user": "zdebruine",
      "count": 543,
      "uuid": 2014816
    },
    {
      "user": "wainberg",
      "count": 2,
      "uuid": 7513967
    },
    {
      "user": "ttriche",
      "count": 1,
      "uuid": 4386
    }
  ],
  "_userbio": {
    "uuid": 2014816,
    "type": "user",
    "name": "zdebruine",
    "description": "Genomics Intelligence Infrastructure"
  },
  "_downloads": {
    "count": 19256,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/RcppML"
  },
  "_devurl": "https://github.com/zdebruine/rcppml",
  "_searchresults": 402,
  "_rbuild": "4.6.0",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/RcppML.html",
    "extra/readme.html",
    "extra/readme.md",
    "manual.pdf"
  ],
  "_homeurl": "https://github.com/zdebruine/rcppml",
  "_realowner": "zdebruine",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.1.0",
      "date": "2021-07-28"
    },
    {
      "version": "0.3.5",
      "date": "2021-09-02"
    },
    {
      "version": "0.3.7",
      "date": "2021-09-21"
    },
    {
      "version": "0.3.7.1",
      "date": "2026-03-09"
    }
  ],
  "_exports": [
    "align",
    "assess",
    "auto_nmf_distribution",
    "bipartiteMatch",
    "bipartition",
    "biplot",
    "classify_embedding",
    "classify_logistic",
    "classify_rf",
    "coerce",
    "compare_nmf",
    "compute_target",
    "consensus_nmf",
    "cosine",
    "cross_validate_graph",
    "dclust",
    "diagnose_dispersion",
    "diagnose_zero_inflation",
    "evaluate",
    "export_log",
    "factor_add",
    "factor_concat",
    "factor_condition",
    "factor_config",
    "factor_input",
    "factor_net",
    "factor_shared",
    "fit",
    "gpu_available",
    "gpu_info",
    "H",
    "head",
    "nmf",
    "nmf_layer",
    "nnls",
    "pca",
    "predict",
    "reconstruct",
    "refine",
    "score_test_distribution",
    "show",
    "simulateNMF",
    "simulateSwimmer",
    "sort",
    "sparsity",
    "st_add_transpose",
    "st_chunk_ranges",
    "st_filter_cols",
    "st_filter_rows",
    "st_free_gpu",
    "st_info",
    "st_map_chunks",
    "st_obs_indices",
    "st_read",
    "st_read_dense",
    "st_read_gpu",
    "st_read_obs",
    "st_read_var",
    "st_slice",
    "st_slice_cols",
    "st_slice_rows",
    "st_write",
    "st_write_dense",
    "st_write_list",
    "subset",
    "summary",
    "svd",
    "svd_layer",
    "t",
    "training_logger",
    "variance_explained",
    "W"
  ],
  "_datasets": [
    {
      "name": "aml",
      "title": "Acute Myelogenous Leukemia (AML) Dataset",
      "object": "aml",
      "class": [
        "matrix",
        "array"
      ],
      "fields": [
        "AML (MEP)",
        "AML (MEP)",
        "AML (MEP)",
        "AML (MEP)",
        "AML (MEP)",
        "AML (MEP)",
        "AML (MEP)",
        "AML (MEP)",
        "AML (MEP)",
        "AML (MEP)",
        "AML (MEP)",
        "AML (MEP)",
        "AML (MEP)",
        "AML (MEP)",
        "AML (MEP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (GMP)",
        "AML (L-MPP)",
        "AML (L-MPP)",
        "AML (L-MPP)",
        "AML (L-MPP)",
        "AML (L-MPP)",
        "AML (L-MPP)",
        "AML (L-MPP)",
        "AML (L-MPP)",
        "AML (L-MPP)",
        "AML (L-MPP)",
        "AML (L-MPP)",
        "AML (L-MPP)",
        "Control (L-MPP)",
        "Control (GMP)",
        "Control (MEP)",
        "Control (L-MPP)",
        "Control (GMP)",
        "Control (MEP)",
        "Control (L-MPP)",
        "Control (GMP)",
        "Control (MEP)",
        "Control (L-MPP)",
        "Control (GMP)",
        "Control (MEP)",
        "Control (L-MPP)",
        "Control (MEP)",
        "Control (GMP)"
      ],
      "rows": 824,
      "table": true,
      "tojson": true
    },
    {
      "name": "digits",
      "title": "MNIST Digits Dataset",
      "object": "digits",
      "class": [
        "dgCMatrix"
      ],
      "fields": [],
      "table": false,
      "tojson": false
    },
    {
      "name": "golub",
      "title": "Golub ALL-AML Dataset (Brunet et al. 2004)",
      "object": "golub",
      "class": [
        "dgCMatrix"
      ],
      "fields": [],
      "table": false,
      "tojson": false
    },
    {
      "name": "hawaiibirds",
      "title": "Hawaii Bird Species Frequency Dataset",
      "object": "hawaiibirds",
      "class": [
        "dgCMatrix"
      ],
      "fields": [],
      "table": false,
      "tojson": false
    },
    {
      "name": "movielens",
      "title": "MovieLens Dataset",
      "object": "movielens",
      "class": [
        "dgCMatrix"
      ],
      "fields": [],
      "table": false,
      "tojson": false
    },
    {
      "name": "olivetti",
      "title": "Olivetti Faces Dataset",
      "object": "olivetti",
      "class": [
        "dgCMatrix"
      ],
      "fields": [],
      "table": false,
      "tojson": false
    },
    {
      "name": "pbmc3k",
      "title": "PBMC 3k Single-Cell RNA-seq Dataset (StreamPress Compressed)",
      "object": "pbmc3k",
      "class": [
        "raw"
      ],
      "fields": [],
      "table": false,
      "tojson": true
    }
  ],
  "_help": [
    {
      "page": "RcppML-package",
      "title": "RcppML: Fast Non-Negative Matrix Factorization and Divisive Clustering",
      "topics": [
        "RcppML-package",
        "RcppML"
      ]
    },
    {
      "page": "cash-.factor_net_result",
      "title": "Access layer results by name",
      "topics": [
        "$.factor_net_result"
      ]
    },
    {
      "page": "align",
      "title": "Align two NMF models",
      "topics": [
        "align",
        "align,nmf-method"
      ]
    },
    {
      "page": "aml",
      "title": "Acute Myelogenous Leukemia (AML) Dataset",
      "topics": [
        "aml"
      ]
    },
    {
      "page": "as.data.frame.nmf_assessment",
      "title": "Convert assessment results to a one-row data frame",
      "topics": [
        "as.data.frame.nmf_assessment"
      ]
    },
    {
      "page": "as.data.frame.training_logger",
      "title": "Convert training log to data.frame",
      "topics": [
        "as.data.frame.training_logger"
      ]
    },
    {
      "page": "assess",
      "title": "Assess Embedding Quality",
      "topics": [
        "assess"
      ]
    },
    {
      "page": "auto_nmf_distribution",
      "title": "Auto-select NMF distribution",
      "topics": [
        "auto_nmf_distribution"
      ]
    },
    {
      "page": "bipartiteMatch",
      "title": "Bipartite graph matching",
      "topics": [
        "bipartiteMatch"
      ]
    },
    {
      "page": "bipartition",
      "title": "Bipartition a sample set",
      "topics": [
        "bipartition"
      ]
    },
    {
      "page": "biplot-nmf-method",
      "title": "Biplot for NMF factors",
      "topics": [
        "biplot,nmf-method"
      ]
    },
    {
      "page": "classify_embedding",
      "title": "Evaluate classification performance of factor embeddings",
      "topics": [
        "classify_embedding"
      ]
    },
    {
      "page": "classify_logistic",
      "title": "Logistic regression classifier for factor embeddings",
      "topics": [
        "classify_logistic"
      ]
    },
    {
      "page": "classify_rf",
      "title": "Random forest classifier for factor embeddings",
      "topics": [
        "classify_rf"
      ]
    },
    {
      "page": "compare_nmf",
      "title": "Compare Multiple NMF Models",
      "topics": [
        "compare_nmf"
      ]
    },
    {
      "page": "compute_target",
      "title": "Compute a Target Matrix for Guided NMF",
      "topics": [
        "compute_target"
      ]
    },
    {
      "page": "consensus_nmf",
      "title": "Consensus Clustering for NMF",
      "topics": [
        "consensus_nmf"
      ]
    },
    {
      "page": "cosine",
      "title": "Cosine similarity",
      "topics": [
        "cosine"
      ]
    },
    {
      "page": "cross_validate_graph",
      "title": "Cross-validate a factorization network",
      "topics": [
        "cross_validate_graph"
      ]
    },
    {
      "page": "dclust",
      "title": "Divisive clustering",
      "topics": [
        "dclust"
      ]
    },
    {
      "page": "diagnose_dispersion",
      "title": "Diagnose dispersion mode",
      "topics": [
        "diagnose_dispersion"
      ]
    },
    {
      "page": "diagnose_zero_inflation",
      "title": "Diagnose zero inflation",
      "topics": [
        "diagnose_zero_inflation"
      ]
    },
    {
      "page": "digits",
      "title": "MNIST Digits Dataset",
      "topics": [
        "digits"
      ]
    },
    {
      "page": "evaluate",
      "title": "Evaluate an NMF model",
      "topics": [
        "evaluate",
        "evaluate,nmf-method"
      ]
    },
    {
      "page": "export_log",
      "title": "Export training log to CSV",
      "topics": [
        "export_log"
      ]
    },
    {
      "page": "factor_add",
      "title": "Element-wise H addition (skip/residual connection)",
      "topics": [
        "factor_add"
      ]
    },
    {
      "page": "factor_concat",
      "title": "Concatenate H factors from branches (row-bind)",
      "topics": [
        "factor_concat"
      ]
    },
    {
      "page": "factor_condition",
      "title": "Concatenate conditioning metadata to a layer's H",
      "topics": [
        "factor_condition"
      ]
    },
    {
      "page": "factor_config",
      "title": "Global configuration for a factorization network",
      "topics": [
        "factor_config"
      ]
    },
    {
      "page": "factor_input",
      "title": "Create an input node for a factorization network",
      "topics": [
        "factor_input"
      ]
    },
    {
      "page": "factor_net",
      "title": "Compile a factorization network",
      "topics": [
        "factor_net"
      ]
    },
    {
      "page": "factor_shared",
      "title": "Shared factorization across multiple inputs (multi-modal)",
      "topics": [
        "factor_shared"
      ]
    },
    {
      "page": "fit",
      "title": "Fit a factorization network",
      "topics": [
        "fit",
        "fit.factor_net"
      ]
    },
    {
      "page": "golub",
      "title": "Golub ALL-AML Dataset (Brunet et al. 2004)",
      "topics": [
        "golub"
      ]
    },
    {
      "page": "gpu_available",
      "title": "Check if GPU acceleration is available",
      "topics": [
        "gpu_available"
      ]
    },
    {
      "page": "gpu_info",
      "title": "Get GPU device information",
      "topics": [
        "gpu_info"
      ]
    },
    {
      "page": "gpu_sparse_matrix-methods",
      "title": "Methods for gpu_sparse_matrix objects",
      "topics": [
        "dim.gpu_sparse_matrix",
        "gpu_sparse_matrix-methods",
        "ncol.gpu_sparse_matrix",
        "nrow.gpu_sparse_matrix",
        "print.gpu_sparse_matrix"
      ]
    },
    {
      "page": "hawaiibirds",
      "title": "Hawaii Bird Species Frequency Dataset",
      "topics": [
        "hawaiibirds"
      ]
    },
    {
      "page": "movielens",
      "title": "MovieLens Dataset",
      "topics": [
        "movielens"
      ]
    },
    {
      "page": "nmf",
      "title": "Non-negative matrix factorization",
      "topics": [
        "nmf"
      ]
    },
    {
      "page": "nmf_layer",
      "title": "Create an NMF factorization layer",
      "topics": [
        "nmf_layer"
      ]
    },
    {
      "page": "nmf-class",
      "title": "nmf S4 Class",
      "topics": [
        "nmf-class"
      ]
    },
    {
      "page": "nnls",
      "title": "Non-negative Least Squares Projection",
      "topics": [
        "nnls"
      ]
    },
    {
      "page": "olivetti",
      "title": "Olivetti Faces Dataset",
      "topics": [
        "olivetti"
      ]
    },
    {
      "page": "pbmc3k",
      "title": "PBMC 3k Single-Cell RNA-seq Dataset (StreamPress Compressed)",
      "topics": [
        "pbmc3k"
      ]
    },
    {
      "page": "pca",
      "title": "PCA (centered SVD)",
      "topics": [
        "pca"
      ]
    },
    {
      "page": "plot.consensus_nmf",
      "title": "Plot Consensus Matrix Heatmap",
      "topics": [
        "plot.consensus_nmf"
      ]
    },
    {
      "page": "plot.dclust",
      "title": "Plot divisive clustering hierarchy",
      "topics": [
        "plot.dclust"
      ]
    },
    {
      "page": "plot.nmf",
      "title": "Plot NMF Training History and Diagnostics",
      "topics": [
        "plot.nmf"
      ]
    },
    {
      "page": "plot.nmfCrossValidate",
      "title": "Plot Cross-Validation Results",
      "topics": [
        "plot.nmfCrossValidate"
      ]
    },
    {
      "page": "plot.training_logger",
      "title": "Plot training log",
      "topics": [
        "plot.training_logger"
      ]
    },
    {
      "page": "predict.factor_net_result",
      "title": "Project new data through a trained factor network",
      "topics": [
        "predict.factor_net_result"
      ]
    },
    {
      "page": "print.factor_net",
      "title": "Print a factor_net",
      "topics": [
        "print.factor_net"
      ]
    },
    {
      "page": "print.factor_net_cv",
      "title": "Print a factor_net_cv result",
      "topics": [
        "print.factor_net_cv"
      ]
    },
    {
      "page": "print.factor_net_result",
      "title": "Print a factor_net_result",
      "topics": [
        "print.factor_net_result"
      ]
    },
    {
      "page": "print.fn_classifier_eval",
      "title": "Print a classifier evaluation result",
      "topics": [
        "print.fn_classifier_eval"
      ]
    },
    {
      "page": "print.fn_factor_config",
      "title": "Print an fn_factor_config",
      "topics": [
        "print.fn_factor_config"
      ]
    },
    {
      "page": "print.fn_global_config",
      "title": "Print an fn_global_config",
      "topics": [
        "print.fn_global_config"
      ]
    },
    {
      "page": "print.fn_node",
      "title": "Print an fn_node",
      "topics": [
        "print.fn_node"
      ]
    },
    {
      "page": "print.nmf_assessment",
      "title": "Print method for nmf_assessment objects",
      "topics": [
        "print.nmf_assessment"
      ]
    },
    {
      "page": "print.training_logger",
      "title": "Print a training log",
      "topics": [
        "print.training_logger"
      ]
    },
    {
      "page": "refine",
      "title": "Refine an NMF Model Using Label-Guided Correction",
      "topics": [
        "refine"
      ]
    },
    {
      "page": "score_test_distribution",
      "title": "Score-test distribution diagnostic",
      "topics": [
        "score_test_distribution"
      ]
    },
    {
      "page": "simulateNMF",
      "title": "Simulate an NMF dataset",
      "topics": [
        "simulateNMF"
      ]
    },
    {
      "page": "simulateSwimmer",
      "title": "Simulate Swimmer Dataset",
      "topics": [
        "simulateSwimmer"
      ]
    },
    {
      "page": "sparsity",
      "title": "Compute the sparsity of each NMF factor",
      "topics": [
        "sparsity",
        "sparsity,nmf-method"
      ]
    },
    {
      "page": "st_add_transpose",
      "title": "Add Transpose Section to an Existing StreamPress File",
      "topics": [
        "st_add_transpose"
      ]
    },
    {
      "page": "st_chunk_ranges",
      "title": "Get Column Ranges for Each Chunk in a StreamPress File",
      "topics": [
        "st_chunk_ranges"
      ]
    },
    {
      "page": "st_filter_cols",
      "title": "Slice Columns Matching Variable Metadata Filter",
      "topics": [
        "st_filter_cols"
      ]
    },
    {
      "page": "st_filter_rows",
      "title": "Slice Rows Matching Observation Metadata Filter",
      "topics": [
        "st_filter_rows"
      ]
    },
    {
      "page": "st_free_gpu",
      "title": "Free GPU-Resident Sparse Matrix",
      "topics": [
        "st_free_gpu"
      ]
    },
    {
      "page": "st_info",
      "title": "Get metadata from a StreamPress file",
      "topics": [
        "st_info"
      ]
    },
    {
      "page": "st_map_chunks",
      "title": "Apply a Function to Every Chunk in a StreamPress File",
      "topics": [
        "st_map_chunks"
      ]
    },
    {
      "page": "st_obs_indices",
      "title": "Get Row Indices Matching Observation Metadata Filter",
      "topics": [
        "st_obs_indices"
      ]
    },
    {
      "page": "st_read",
      "title": "Read a StreamPress file into a dgCMatrix",
      "topics": [
        "st_read"
      ]
    },
    {
      "page": "st_read_dense",
      "title": "Read a Dense Matrix from StreamPress v3 Format",
      "topics": [
        "st_read_dense"
      ]
    },
    {
      "page": "st_read_gpu",
      "title": "Read StreamPress File Directly to GPU Memory",
      "topics": [
        "st_read_gpu"
      ]
    },
    {
      "page": "st_read_obs",
      "title": "Read Observation (Row) Metadata from a StreamPress File",
      "topics": [
        "st_read_obs"
      ]
    },
    {
      "page": "st_read_var",
      "title": "Read Variable (Column) Metadata from a StreamPress File",
      "topics": [
        "st_read_var"
      ]
    },
    {
      "page": "st_slice",
      "title": "Slice Rows and/or Columns from a StreamPress File",
      "topics": [
        "st_slice"
      ]
    },
    {
      "page": "st_slice_cols",
      "title": "Slice Columns from a StreamPress File",
      "topics": [
        "st_slice_cols"
      ]
    },
    {
      "page": "st_slice_rows",
      "title": "Slice Rows from a StreamPress File",
      "topics": [
        "st_slice_rows"
      ]
    },
    {
      "page": "st_write",
      "title": "Write a sparse matrix to a StreamPress file",
      "topics": [
        "st_write"
      ]
    },
    {
      "page": "st_write_dense",
      "title": "Write a Dense Matrix to StreamPress v3 Format",
      "topics": [
        "st_write_dense"
      ]
    },
    {
      "page": "st_write_list",
      "title": "Write a List of Matrices as a Single StreamPress File",
      "topics": [
        "st_write_list"
      ]
    },
    {
      "page": "streampress",
      "title": "StreamPress I/O: Read, Write, and Inspect Compressed Matrices",
      "topics": [
        "streampress"
      ]
    },
    {
      "page": "nmf-class-methods",
      "title": "nmf class methods",
      "topics": [
        "$,nmf-method",
        "coerce,nmf,list-method",
        "dim,nmf-method",
        "dimnames,nmf-method",
        "head,nmf-method",
        "predict,nmf-method",
        "prod,nmf-method",
        "show,nmf-method",
        "sort,nmf-method",
        "subset,nmf-method",
        "t,nmf-method",
        "[,nmf,ANY,ANY,ANY-method",
        "[[,nmf-method"
      ]
    },
    {
      "page": "summary-nmf-method",
      "title": "Summarize NMF factors",
      "topics": [
        "plot.nmfSummary",
        "summary,nmf-method"
      ]
    },
    {
      "page": "summary.consensus_nmf",
      "title": "Summary for Consensus NMF",
      "topics": [
        "summary.consensus_nmf"
      ]
    },
    {
      "page": "summary.factor_net_result",
      "title": "Summarize a factor_net_result",
      "topics": [
        "summary.factor_net_result"
      ]
    },
    {
      "page": "summary.fn_classifier_eval",
      "title": "Summarize a classifier evaluation result",
      "topics": [
        "summary.fn_classifier_eval"
      ]
    },
    {
      "page": "svd",
      "title": "Truncated SVD / PCA with constraints and regularization",
      "topics": [
        "svd"
      ]
    },
    {
      "page": "svd_layer",
      "title": "Create an SVD/PCA factorization layer",
      "topics": [
        "svd_layer"
      ]
    },
    {
      "page": "svd-class",
      "title": "svd S4 Class",
      "topics": [
        "dim,svd-method",
        "head,svd-method",
        "predict,svd-method",
        "reconstruct",
        "reconstruct,svd-method",
        "show,svd-method",
        "svd-class",
        "variance_explained",
        "variance_explained,svd-method",
        "[,svd,ANY,ANY,ANY-method"
      ]
    },
    {
      "page": "training_logger",
      "title": "Create a training logger for factor network fitting",
      "topics": [
        "training_logger"
      ]
    },
    {
      "page": "W",
      "title": "Per-factor configuration for factorization layers",
      "topics": [
        "H",
        "W"
      ]
    }
  ],
  "_readme": "https://github.com/zdebruine/rcppml/raw/HEAD/README.md",
  "_rundeps": [
    "lattice",
    "Matrix",
    "Rcpp",
    "RcppEigen"
  ],
  "_sysdeps": [
    {
      "shlib": "libstdc++",
      "package": "libstdc++6",
      "source": "gcc",
      "version": "14.2.0-4ubuntu2~24.04.1",
      "name": "c++",
      "homepage": "http://gcc.gnu.org/",
      "description": "GNU Standard C++ Library v3"
    },
    {
      "shlib": "libgomp",
      "package": "libgomp1",
      "source": "gcc",
      "version": "14.2.0-4ubuntu2~24.04.1",
      "name": "openmp",
      "homepage": "http://gcc.gnu.org/",
      "description": "GCC OpenMP (GOMP) support library"
    }
  ],
  "_score": 10.707545720849161,
  "_indexed": true,
  "_nocasepkg": "rcppml",
  "_universes": [
    "zdebruine"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.0.0",
      "date": "2026-06-05T07:04:25.000Z",
      "distro": "noble",
      "arch": "aarch64",
      "commit": "df69dddbe37962cd0179b6b6c6ace94e400b4f60",
      "fileid": "f1659534fe9868f049ed9662294bfd45ab654f0dc2dd87c4ca8fa382099ab984",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/zdebruine/actions/runs/27000195698"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.0.0",
      "date": "2026-06-05T07:02:57.000Z",
      "distro": "noble",
      "arch": "x86_64",
      "commit": "df69dddbe37962cd0179b6b6c6ace94e400b4f60",
      "fileid": "02df65c5a5380df2edd69e46e1076049719d8785d9ae5fbb5a7284defee46f4a",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/zdebruine/actions/runs/27000195698"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "1.0.0",
      "date": "2026-06-05T07:04:23.000Z",
      "distro": "noble",
      "arch": "aarch64",
      "commit": "df69dddbe37962cd0179b6b6c6ace94e400b4f60",
      "fileid": "69a79195a68f05a32797f1bfd264e68d31dfc17cbcc15e82a8b0121db0e4795e",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/zdebruine/actions/runs/27000195698"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "1.0.0",
      "date": "2026-06-05T07:02:56.000Z",
      "distro": "noble",
      "arch": "x86_64",
      "commit": "df69dddbe37962cd0179b6b6c6ace94e400b4f60",
      "fileid": "5e0ea643eb7b018986ddc5c9daad6a319d998fc1226088268f6279b78a243a1c",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/zdebruine/actions/runs/27000195698"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.0.0",
      "date": "2026-06-05T07:01:17.000Z",
      "arch": "aarch64",
      "commit": "df69dddbe37962cd0179b6b6c6ace94e400b4f60",
      "fileid": "26d6f9a31330c5dba21830d5390e80147ccfb4867c539f075f9f0cbf51e8a429",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/zdebruine/actions/runs/27000195698"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.0.0",
      "date": "2026-06-05T07:02:51.000Z",
      "arch": "x86_64",
      "commit": "df69dddbe37962cd0179b6b6c6ace94e400b4f60",
      "fileid": "ea281b4bfcc3dd544e4dc283a5b1016b69f2344ce95fa71fa9740d3d478193ac",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/zdebruine/actions/runs/27000195698"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "1.0.0",
      "date": "2026-06-05T07:01:07.000Z",
      "arch": "aarch64",
      "commit": "df69dddbe37962cd0179b6b6c6ace94e400b4f60",
      "fileid": "300ae7b2ca7f6fea9d4d3fac60a482a7cd3c1120a068608354a56a0f18a65bf0",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/zdebruine/actions/runs/27000195698"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "1.0.0",
      "date": "2026-06-05T07:02:15.000Z",
      "arch": "x86_64",
      "commit": "df69dddbe37962cd0179b6b6c6ace94e400b4f60",
      "fileid": "d6face3c45de4680dbfd91c37d3998288c22315376b9f6e03fd76b9f736f0486",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/zdebruine/actions/runs/27000195698"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.0.0",
      "date": "2026-06-05T07:02:29.000Z",
      "arch": "emscripten",
      "commit": "df69dddbe37962cd0179b6b6c6ace94e400b4f60",
      "fileid": "8abc256b73b8aa64659607531f26a0151246c5c9e20d915e31a86d477dbcf8f9",
      "status": "success",
      "buildurl": "https://github.com/r-universe/zdebruine/actions/runs/27000195698"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.0.0",
      "date": "2026-06-05T07:00:47.000Z",
      "arch": "x86_64",
      "commit": "df69dddbe37962cd0179b6b6c6ace94e400b4f60",
      "fileid": "9b7a831804590567070e392ee69b6a83d4d97df0a76d69c20cf001db8f3fc57b",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/zdebruine/actions/runs/27000195698"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.0.0",
      "date": "2026-06-05T07:00:44.000Z",
      "arch": "x86_64",
      "commit": "df69dddbe37962cd0179b6b6c6ace94e400b4f60",
      "fileid": "4d27df975cb51ee51075b4142e95e724c624f0ccb75ff181f03ef98bae98da71",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/zdebruine/actions/runs/27000195698"
    },
    {
      "r": "4.6.0",
      "os": "win",
      "version": "1.0.0",
      "date": "2026-06-05T07:00:53.000Z",
      "arch": "x86_64",
      "commit": "df69dddbe37962cd0179b6b6c6ace94e400b4f60",
      "fileid": "42e77fb5bf9c5fb0fb934b2ea2cd1a9931fae2c7e1a4c589efb37b01dad03d74",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/zdebruine/actions/runs/27000195698"
    }
  ]
}