rofunc.learning.RofuncML.gmm
#
1. Module Contents#
1.1. Classes#
1.2. API#
- class rofunc.learning.RofuncML.gmm.GMM(nb_states=1, nb_dim=None, init_zeros=False, mu=None, lmbda=None, sigma=None, priors=None, log_priors=None)[source]#
Bases:
pbdlib.model.Model
- moment_matching(h)[source]#
Perform moment matching to approximate a mixture of Gaussian as a Gaussian :param h: np.array([nb_timesteps, nb_states])
Activations of each states for different timesteps
- Returns:
- marginal_model(dims)[source]#
Get a GMM of a slice of this GMM :param dims: :type dims: slice :return:
- lintrans(A, b)[source]#
Linear transformation of a GMM
- Parameters:
A – np.array(nb_dim, nb_dim)
b – np.array(nb_dim)
- Returns:
- lintrans_dyna(A, b)[source]#
Linear transformation of a GMM
- Parameters:
A – np.array(nb_states, nb_dim, nb_dim)
b – np.array(nb_states, nb_dim)
- Returns:
- concatenate_gaussian(q, get_mvn=True, reg=None)[source]#
Get a concatenated-block-diagonal replication of the GMM with sequence of state given by q.
- Parameters:
q – [list of int]
get_mvn – [bool]
- Returns:
- em(data, reg=1e-08, maxiter=100, minstepsize=1e-05, diag=False, reg_finish=False, kmeans_init=False, random_init=True, dep_mask=None, verbose=False, only_scikit=False, no_init=False)[source]#
- Parameters:
data – [np.array([nb_timesteps, nb_dim])]
reg – [list([nb_dim]) or float] Regulariazation for EM
maxiter –
minstepsize –
diag – [bool] Use diagonal covariance matrices
reg_finish – [np.array([nb_dim]) or float] Regulariazation for finish step
kmeans_init – [bool] Init components with k-means.
random_init – [bool] Init components randomely.
dep_mask – [np.array([nb_dim, nb_dim])] Composed of 0 and 1. Mask given the dependencies in the covariance matrices
- Returns:
- init_hmm_kbins(demos, dep=None, reg=1e-08, dep_mask=None)[source]#
Init HMM by splitting each demos in K bins along time. Each K states of the HMM will be initialized with one of the bin. It corresponds to a left-to-right HMM.
- Parameters:
demos – [list of np.array([nb_timestep, nb_dim])]
dep –
reg – [float]
- Returns:
- mvn_pdf(x, reg=None)[source]#
- Parameters:
x – np.array([nb_samples, nb_dim]) samples
mu – np.array([nb_states, nb_dim]) mean vector
sigma_chol – np.array([nb_states, nb_dim, nb_dim]) cholesky decomposition of covariance matrices
lmbda – np.array([nb_states, nb_dim, nb_dim]) precision matrices
- Returns:
np.array([nb_states, nb_samples]) log mvn