deeptime.decomposition

The decomposition package contains algorithms which can be used to project data onto dominant slow processes.

Estimators

VAMP(lagtime, dim, var_cutoff, scaling, ...)

Variational approach for Markov processes (VAMP).

TICA(lagtime, epsilon, dim, var_cutoff, ...)

Time-lagged independent component analysis (TICA).

DMD([mode, rank, driver])

Dynamic mode decomposition estimator.

EDMD(basis[, n_eigs, operator])

Extended dynamic mode decomposition for estimation of the Koopman (or optionally Perron-Frobenius) operator.

KernelEDMD(kernel[, epsilon, n_eigs])

Estimator implementing kernel extended mode decomposition.

KernelCCA(kernel, n_eigs[, epsilon])

Estimator implementing the kernelized version of canonical correlation analysis.

KVAD(kernel, lagtime, dim, epsilon, ...)

An estimator for the "Kernel embedding based variational approach for dynamical systems" (KVAD).

Deep estimators

Note that usage of these estimators requires a working installation of PyTorch.

deep.VAMPNet(lobe, lobe_timelagged[, ...])

Implementation of VAMPNets.

deep.TAE(encoder, decoder[, optimizer, ...])

Time-lagged autoencoder.

deep.TVAE(encoder, decoder[, optimizer, ...])

The time-lagged variational autoencoder.

Models

TransferOperatorModel(koopman_matrix, ...)

Model which contains a finite-dimensional transfer operator (or approximation thereof).

CovarianceKoopmanModel(...[, dim, ...])

A type of Koopman model \(\mathbb{E}[g(x_{t+\tau})] = K^\top \mathbb{E}[f(x_{t})]\) which was obtained through diagonalization of covariance matrices.

DMDModel(eigenvalues, modes[, mode])

Model produced by the DMD estimator.

EDMDModel(operator, basis, eigenvalues, modes)

The EDMD model which can be estimated from a EDMD estimator.

KernelEDMDModel(data, eigenvalues, ...)

The kEDMD model containing eigenvalues and eigenfunctions evaluated in the instantaneous data.

KernelCCAModel(data, kernel, eigenvalues, ...)

The model produced by the KernelCCA estimator.

KVADModel(kernel, koopman_matrix, ...)

The model produced by the KVAD estimator.

deep.VAMPNetModel(lobe, lobe_timelagged[, ...])

A VAMPNet model which can be fit to data optimizing for one of the implemented VAMP scores.

deep.TAEModel(encoder, decoder[, device, dtype])

Model produced by time-lagged autoencoders.

deep.TVAEModel(encoder, decoder[, device, dtype])

Model produced by the time-lagged variational autoencoder (TVAE).

Utils

vamp_score(koopman_model, r[, ...])

Compute the VAMP score between a covariance-based Koopman model and potentially a test model for cross-validation.

vamp_score_data(data, data_lagged[, ...])

Computes VAMP score based on data and corresponding time-lagged data.

vamp_score_cv(fit_fetch, trajs[, blocksize, ...])

Scores the MSM using the variational approach for Markov processes and cross-validation.

cvsplit_trajs(trajs[, random_state])

Splits the trajectories into a training and test set with approximately equal number of trajectories

blocksplit_trajs(trajs[, blocksize, ...])

Splits trajectories into approximately uncorrelated fragments.

deep.TVAEEncoder(units[, nonlinearity])

A kind of MLP, which maps the output through not one but two transformations so that it projects onto mean and log-variance.

deep.koopman_matrix(x, y[, epsilon, mode, c_xx])

Computes the Koopman matrix

deep.sym_inverse(mat[, epsilon, ...])

Utility function that returns the inverse of a matrix, with the option to return the square root of the inverse matrix.

deep.covariances(x, y[, remove_mean])

Computes instantaneous and time-lagged covariances matrices.

deep.vamp_score(data, data_lagged[, method, ...])

Computes the VAMP score based on data and corresponding time-shifted data.

deep.vampnet_loss(data, data_lagged[, ...])

Loss function that can be used to train VAMPNets.

deep.kvad_score(chi_x, y[, kernel, epsilon, ...])