Learn R Programming

rtemis (version 1.4.3)

decomposition_traits: Decomposition Algorithm Traits

Description

Machine-readable properties of each decomposition algorithm available to decomp: whether the map is linear, whether it can be applied to new data, whether it inverts, and what its objective preserves.

Usage

decomposition_traits(algorithm = NULL)

Value

data.frame: One row per algorithm, one column per trait.

Arguments

algorithm

Optional Character: Name of a decomposition algorithm, matched case-insensitively. NULL returns every algorithm.

Author

EDG

Details

The columns:

name

The name used by setup_<name>() and decomp(algorithm =).

description

Full name of the algorithm.

linear

The data is modeled as the components times a loadings matrix, which get_loadings returns.

can_apply

A fitted result can be applied to new data with apply_decomposition().

invertible

There is an inverse map from component space back to input space, so reconstruction error is defined.

orthogonal

Components are mutually orthogonal.

ordered

Components come in a meaningful order, so "the first j" is well-defined.

deterministic

The same input and configuration give the same result without setting a seed.

preserves

What the objective preserves: "variance", "global", "local", or "reconstruction".

nonneg

Requires non-negative input and produces non-negative factors.

threaded

The fit runs on as many threads as the execution config gives the algorithm (n_workers_algorithm, or the worker count). Like can_apply, it states what rtemis implements.

package

Package supplying the backend implementation.

can_apply states what rtemis implements, not what is mathematically possible. Parametric tSNE exists and Isomap admits a Nystrom-style out-of-sample extension; neither is implemented here, so both are FALSE. The column's contract is that apply_decomposition() on a fitted result of this algorithm returns components.

Examples

Run this code
decomposition_traits()
decomposition_traits("PCA")
# Which algorithms support out-of-sample projection?
decomposition_traits()[["name"]][decomposition_traits()[["can_apply"]]]

Run the code above in your browser using DataLab