# NMF v0.23.0

Monthly downloads

## Algorithms and Framework for Nonnegative Matrix Factorization (NMF)

Provides a framework to perform Non-negative Matrix
Factorization (NMF). The package implements a set of already published algorithms
and seeding methods, and provides a framework to test, develop and plug
new/custom algorithms. Most of the built-in algorithms have been optimized
in C++, and the main interface function provides an easy way of performing
parallel computations on multicore machines.

## Readme

## Background

Nonnegative Matrix Factorization (NMF) is an unsupervised learning technique that has been applied successfully in several fields, including signal processing, face recognition and text mining. Recent applications of NMF in bioinformatics have demonstrated its ability to extract meaningful information from high-dimensional data such as gene expression microarrays. Developments in NMF theory and applications have resulted in a variety of algorithms and methods. However, most NMF implementations have been on commercial platforms, while those that are freely available typically require programming skills. This limits their use by the wider research community.

## Results

Our objective is to provide the bioinformatics community with an open-source, easy-to-use and unified interface to standard NMF algorithms, as well as with a simple framework to help implement and test new NMF methods. For that purpose, we have developed a package for the R/BioConductor platform. The package ports public code to R, and is structured to enable users to easily modify and/or add algorithms. It includes a number of published NMF algorithms and initialization methods and facilitates the combination of these to produce new NMF strategies. Commonly used benchmark data and visualization methods are provided to help in the comparison and interpretation of the results.

## Conclusions

The NMF package helps realize the potential of Nonnegative Matrix Factorization, especially in bioinformatics, providing easy access to methods that have already yielded new insights in many applications.

## Functions in NMF

Name | Description | |

NMFSeed-class | Base class that defines the interface for NMF seeding methods. | |

nmf_update.lee_R | NMF Algorithm/Updates for Frobenius Norm | |

nmf_update.brunet_R | NMF Algorithm/Updates for Kullback-Leibler Divergence | |

NMF-class | Generic Interface for Nonnegative Matrix Factorisation Models | |

NMFList-class | Class for Storing Heterogeneous NMF fits | |

NMF-deprecated | Deprecated Functions in the Package NMF | |

NMF-package | Algorithms and framework for Nonnegative Matrix Factorization (NMF). | |

NMF-defunct | Defunct Functions and Classes in the NMF Package | |

NMFOffset-class | NMF Model - Nonnegative Matrix Factorization with Offset | |

NMFStrategy-class | Virtual Interface for NMF Algorithms | |

NMFfitX-class | Virtual Class to Handle Results from Multiple Runs of NMF Algorithms | |

NMFfit-class | Base Class for to store Nonnegative Matrix Factorisation results | |

NMFStrategyIterative-class | Interface for Algorithms: Implementation for Iterative NMF Algorithms | |

NMFfitX | Factory Method for Multiple NMF Run Objects | |

NMFStrategyFunction-class | Interface for Single Function NMF Strategies | |

basis | Accessing NMF Factors | |

NMFStrategy | Factory Method for NMFStrategy Objects | |

.atrack | Annotation Tracks | |

canFit | Testing Compatibility of Algorithm and Models | |

c,NMF-method | Concatenating NMF Models | |

NMFns-class | NMF Model - Nonsmooth Nonnegative Matrix Factorization | |

advanced-NMF | Advanced Usage of the Package NMF | |

NMFstd-class | NMF Model - Standard model | |

aheatmap | Annotated Heatmaps | |

connectivity | Clustering Connectivity and Consensus Matrices | |

consensus,NMFfitX1-method | Returns the consensus matrix computed while performing all NMF runs, amongst which object was selected as the best fit. | |

Strategy-class | Generic Strategy Class | |

basiscor | Correlations in NMF Models | |

fit | Extracting Fitted Models | |

NMFfitX1-class | Structure for Storing the Best Fit Amongst Multiple NMF Runs | |

fcnnls | Fast Combinatorial Nonnegative Least-Square | |

getRNG1 | Extracting RNG Data from NMF Objects | |

algorithmic-NMF | Generic Interface for Algorithms | |

NMFfitXn-class | Structure for Storing All Fits from Multiple NMF Runs | |

.fcnnls | Internal Routine for Fast Combinatorial Nonnegative Least-Squares | |

summary | Assessing and Comparing NMF Models | |

bioc-NMF | Specific NMF Layer for Bioconductor | |

ccBreaks | Generate Break Intervals from Numeric Variables | |

esGolub | Golub ExpressionSet | |

nmfAlgorithm.SNMF_R | NMF Algorithm - Sparse NMF via Alternating NNLS | |

cluster_mat | Cluster Matrix Rows in Annotated Heatmaps | |

checkErrors | Error Checks in NMF Runs | |

cophcor | Cophenetic Correlation Coefficient | |

consensus,NMFfitXn-method | Computes the consensus matrix of the set of fits stored in object, as the mean connectivity matrix across runs. | |

ccPalette | Builds a Color Palette from Compact Color Specification | |

nmfAlgorithm | Listing and Retrieving NMF Algorithms | |

gfile | Open a File Graphic Device | |

tryViewport | Internal Grid Extension | |

basisnames | Dimension names for NMF objects | |

deviance | Distances and Objective Functions | |

algorithm,NMFList-method | Returns the method names used to compute the NMF fits in the list. It returns NULL if the list is empty. | |

ccRamp | Builds a Color Ramp from Compact Color Specification | |

nmfApply | Apply Function for NMF Objects | |

ccSpec | Extract Colour Palette Specification | |

fitted | Fitted Matrix in NMF Models | |

consensushc | Hierarchical Clustering of a Consensus Matrix | |

nmfFormals | Showing Arguments of NMF Algorithms | |

registerDoBackend | Utilities and Extensions for Foreach Loops | |

nmf_update.euclidean_offset.h | NMF Multiplicative Update for NMF with Offset Models | |

offset,NMFfit-method | Returns the offset from the fitted model. | |

nmfModel | Factory Methods NMF Models | |

nmfCheck | Checking NMF Algorithm | |

nmfEstimateRank | Estimate Rank for NMF Models | |

nbasis | Dimension of NMF Objects | |

plot,NMFfit,missing-method | Plots the residual track computed at regular interval during the fit of the NMF model x. | |

dispersion | Dispersion of a Matrix | |

nmf | Running NMF algorithms | |

parse_formula | Simple Parsing of Formula | |

cutdendro | Fade Out the Upper Branches from a Dendrogram | |

nmfSeed | Seeding Strategies for NMF Algorithms | |

nmfReport | Run NMF Methods and Generate a Report | |

compare-NMF | Comparing Results from Different NMF Runs | |

nmfObject | Updating NMF Objects | |

match_atrack | Extending Annotation Vectors | |

heatmap-NMF | Heatmaps of NMF Factors | |

randomize | Randomizing Data | |

nmfWrapper | Wrapping NMF Algorithms | |

purity | Purity and Entropy of a Clustering | |

show,NMFOffset-method | Show method for objects of class NMFOffset | |

pmax.inplace | Updating Objects In Place | |

methods-NMF | Registry for NMF Algorithms | |

residuals | Residuals in NMF Models | |

show,NMFSeed-method | Show method for objects of class NMFSeed | |

seed | Interface for NMF Seeding Methods | |

nmf.equal | Testing Equality of NMF Models | |

nmf_update.KL.h | NMF Multiplicative Updates for Kullback-Leibler Divergence | |

nmf_update.lsnmf | Multiplicative Updates for LS-NMF | |

nmf_update.euclidean.h | NMF Multiplicative Updates for Euclidean Distance | |

setNMFMethod | Registering NMF Algorithms | |

nneg | Transforming from Mixed-sign to Nonnegative Data | |

lverbose | Internal verbosity option | |

nmf_update.ns | NMF Multiplicative Update for Nonsmooth Nonnegative Matrix Factorization (nsNMF). | |

show,NMFfitXn-method | Show method for objects of class NMFfitXn | |

parallel-NMF | Utilities for Parallel Computations | |

options-NMF | NMF Package Specific Options | |

staticVar | Get/Set a Static Variable in NMF Algorithms | |

utils-NMF | Utility Function in the NMF Package | |

sparseness | Sparseness | |

objective,NMFfit-method | Returns the objective function associated with the algorithm that computed the fitted NMF model object, or the objective value with respect to a given target matrix y if it is supplied. | |

show,NMFns-method | Show method for objects of class NMFns | |

runtime,NMFList-method | Returns the CPU time required to compute all NMF fits in the list. It returns NULL if the list is empty. If no timing data are available, the sequential time is returned. | |

scale.NMF | Rescaling NMF Models | |

NMFStop | Stopping Criteria for NMF Iterative Strategies | |

offset,NMFOffset-method | Offsets in NMF Models with Offset | |

runtime.all,NMFfitXn-method | Returns the CPU time used to perform all the NMF fits stored in object. | |

featureScore | Feature Selection in NMF Models | |

predict | Clustering and Prediction | |

[,NMF-method | Sub-setting NMF Objects | |

revPalette | Flags a Color Palette Specification for Reversion | |

profplot | Plotting Expression Profiles | |

show,NMFStrategyIterative-method | Show method for objects of class NMFStrategyIterative | |

show,NMFfit-method | Show method for objects of class NMFfit | |

txtProgressBar | Simple Progress Bar | |

rss | Residual Sum of Squares and Explained Variance | |

rnmf | Generating Random NMF Models | |

show,NMF-method | Show method for objects of class NMF | |

is.nmf | Testing NMF Objects | |

show,NMFList-method | Show method for objects of class NMFList | |

show,NMFfitX-method | Show method for objects of class NMFfitX | |

syntheticNMF | Simulating Datasets | |

show,NMFfitX1-method | Show method for objects of class NMFfitX1 | |

rmatrix | Generating Random Matrices | |

t.NMF | Transformation NMF Model Objects | |

NMFSeed | NMFSeed is a constructor method that instantiate NMFSeed objects. | |

setupBackend | Computational Setup Functions | |

silhouette.NMF | Silhouette of NMF Clustering | |

smoothing | Smoothing Matrix in Nonsmooth NMF Models | |

bterms<- | Fixed Terms in NMF Models | |

ibterms | Fixed Terms in NMF Models | |

No Results! |

## Vignettes of NMF

Name | ||

src/bmc.R | ||

NMF-vignette.Rnw | ||

consensus.pdf | ||

heatmaps.Rnw | ||

No Results! |

## Last month downloads

## Details

Type | Package |

Date | 2020-07-30 |

License | GPL (>= 2) |

URL | http://renozao.github.io/NMF |

LazyLoad | yes |

VignetteBuilder | knitr |

Collate | 'colorcode.R' 'options.R' 'grid.R' 'atracks.R' 'aheatmap.R' 'algorithmic.R' 'nmf-package.R' 'rmatrix.R' 'utils.R' 'versions.R' 'NMF-class.R' 'transforms.R' 'Bioc-layer.R' 'NMFstd-class.R' 'NMFOffset-class.R' 'heatmaps.R' 'NMFns-class.R' 'nmfModel.R' 'fixed-terms.R' 'NMFfit-class.R' 'NMFSet-class.R' 'NMFStrategy-class.R' 'registry.R' 'NMFSeed-class.R' 'NMFStrategyFunction-class.R' 'NMFStrategyIterative-class.R' 'NMFplots.R' 'registry-algorithms.R' 'algorithms-base.R' 'algorithms-lnmf.R' 'algorithms-lsnmf.R' 'algorithms-pe-nmf.R' 'algorithms-siNMF.R' 'algorithms-snmf.R' 'data.R' 'extractFeatures.R' 'parallel.R' 'registry-seed.R' 'nmf.R' 'rnmf.R' 'run.R' 'seed-base.R' 'seed-ica.R' 'seed-nndsvd.R' 'setNMFClass.R' 'simulation.R' 'tests.R' |

Packaged | 2020-07-31 10:09:52 UTC; nsauwen |

NeedsCompilation | yes |

Repository | CRAN |

Date/Publication | 2020-08-01 05:10:06 UTC |

RoxygenNote | 6.0.1.9000 |

suggests | bibtex , bigmemory (>= 4.2) , corpcor , devtools , doMPI , fastICA , knitr , mail , RUnit , synchronicity (>= 1.3.2) , xtable |

imports | Biobase , BiocManager , colorspace , digest , doParallel , foreach , ggplot2 , graphics , grDevices , grid , gridBase , RColorBrewer , reshape2 , stats , stringr (>= 1.0.0) |

depends | cluster , methods , pkgmaker (>= 0.20) , R (>= 3.0.0) , registry , rngtools (>= 1.2.3) , utils |

Contributors | Renaud Gaujoux, Cathal Seoighe |

#### Include our badge in your README

```
[![Rdoc](http://www.rdocumentation.org/badges/version/NMF)](http://www.rdocumentation.org/packages/NMF)
```