NMF (version 0.27)

seed: Interface for NMF Seeding Methods

Description

The function seed provides a single interface for calling all seeding methods used to initialise NMF computations. These methods at least set the basis and coefficient matrices of the initial object to valid nonnegative matrices. They will be used as a starting point by any NMF algorithm that accept initialisation.

IMPORTANT: this interface is still considered experimental and is subject to changes in future release.

Usage

seed(x, model, method, ...)

# S4 method for matrix,NMF,NMFSeed seed(x, model, method, rng, ...)

# S4 method for ANY,ANY,function seed(x, model, method, name, ...)

Value

an NMFfit object.

Arguments

x

target matrix one wants to approximate with NMF

model

specification of the NMF model, e.g., the factorization rank.

method

specification of a seeding method. See each method for details on the supported formats.

...

extra to allow extensions and passed down to the actual seeding method.

rng

rng setting to use. If not missing the RNG settings are set and restored on exit using setRNG.

All arguments in ... are passed to teh seeding strategy.

name

optional name of the seeding method for custom seeding strategies.

Methods

seed

signature(x = "matrix", model = "NMF", method = "NMFSeed"): This is the workhorse method that seeds an NMF model object using a given seeding strategy defined by an NMFSeed object, to fit a given target matrix.

seed

signature(x = "ANY", model = "ANY", method = "function"): Seeds an NMF model using a custom seeding strategy, defined by a function.

method must have signature (x='NMFfit', y='matrix', ...), where x is the unseeded NMF model and y is the target matrix to fit. It must return an NMF object, that contains the seeded NMF model.

seed

signature(x = "ANY", model = "ANY", method = "missing"): Seeds the model with the default seeding method given by nmf.getOption('default.seed')

seed

signature(x = "ANY", model = "ANY", method = "NULL"): Use NMF method 'none'.

seed

signature(x = "ANY", model = "ANY", method = "numeric"): Use method to set the RNG with setRNG and use method “random” to seed the NMF model.

Note that in this case the RNG settings are not restored. This is due to some internal technical reasons, and might change in future releases.

seed

signature(x = "ANY", model = "ANY", method = "character"): Use the registered seeding method whose access key is method.

seed

signature(x = "ANY", model = "list", method = "NMFSeed"): Seed a model using the elements in model to instantiate it with nmfModel.

seed

signature(x = "ANY", model = "numeric", method = "NMFSeed"): Seeds a standard NMF model (i.e. of class NMFstd) of rank model.