Dimension Reduction

This module contains various classes and methods to perform dimensionality reduction in UQpy. The module is structured around the “manifold assumption”, which states that high dimensional data are assumed to lie on or close to a lower-dimension manifold. The dimension_reduction module offers both point-wise and multi-point dimensionality reduction methods. For point-wise (or single point) dimension reduction, high-dimensional data points are projected onto the Grassmann manifold using the GrassmannProjection class. The GrassmannOperations class is then used to perform operations on the Grassmann manifold and the GrassmannInterpolation class can be used to interpolate on the manifold.

The dimension_reduction module has three additional multi-point dimension reduction methods including linear and nonlinear methods. For linear dimension reduction, the Proper Orthogonal Decomposition (POD) and Higher-order Singular Value Decomposition (HigherOrderSVD) classes are available for dimension reduction of vector/matrix-valued quantities and tensor-valued quantities, respectively. The POD baseclass contains subclasses for the Direct POD (DirectPOD) and the Snapshot POD (SnapshotPOD). For nonlinear dimension provides an efficient implementation of Diffusion maps (DiffusionMaps).