lds::gaussian::FitEM #
#include <lds_gaussian_fit_em.h>
Inherits from lds::EM< Fit >
Additional inherited members #
Public Functions inherited from lds::EM< Fit >
Name | |
---|---|
EM() =default Constructs a new EMFit type. |
|
EM(size_t n_x, data_t dt, UniformMatrixList< kMatFreeDim2 > && u_train, UniformMatrixList< kMatFreeDim2 > && z_train) Constructs a new EMFit type. |
|
EM(const Fit & fit0, UniformMatrixList< kMatFreeDim2 > && u_train, UniformMatrixList< kMatFreeDim2 > && z_train) Constructs a new EMFit type. |
|
virtual | ~EM() =default |
const Fit & | Run(bool calc_dynamics =true, bool calc_Q =true, bool calc_init =true, bool calc_output =true, bool calc_measurement =true, size_t max_iter =100, data_t tol =1e-2) Runs fitting by Expectation(E)-Maximization(M) |
std::tuple< UniformMatrixList< kMatFreeDim2 >, UniformMatrixList< kMatFreeDim2 > > | ReturnData() Returns the input/output data to caller. |
const std::vector< Matrix > & | x() const gets estimated state (over time) |
const std::vector< Matrix > & | y() const gets estimated output (over time) |
const Matrix & | sum_E_x_t_x_t() const gets state-input covariance |
const Matrix & | sum_E_xu_tm1_xu_tm1() const gets state-input covariance (t-minus-1) |
const Matrix & | sum_E_xu_t_xu_tm1() const gets single lag state-input covariance |
size_t | n_t_tot() total number of time samples |
const Vector & | theta() const gets parameters updated in M step |
Protected Functions inherited from lds::EM< Fit >
Name | |
---|---|
void | Expectation(bool force_common_initial =false) Expectation step. |
void | Maximization(bool calc_dynamics =true, bool calc_Q =true, bool calc_init =false, bool calc_output =false, bool calc_measurement =false) Maximization step. |
void | MaximizeDynamics() |
void | MaximizeQ() |
void | MaximizeInitial() |
void | Smooth(bool force_common_initial) get smoothed estimates |
void | Reset() reset to initial conditions |
void | InitVars() Initializes the variables. |
Vector | UpdateTheta() updates parameter list, theta |
Protected Attributes inherited from lds::EM< Fit >
Name | |
---|---|
UniformMatrixList< kMatFreeDim2 > | u_ input training data |
UniformMatrixList< kMatFreeDim2 > | z_ measurement training data |
std::vector< Matrix > | x_ state estimate |
std::vector< Cube > | P_ state estimate cov |
std::vector< Cube > | P_t_tm1_ single-lag state covariance |
std::vector< Matrix > | y_ output estimate |
Matrix | diag_y_ |
Matrix | sum_E_x_t_x_t_ state covariance (current time) |
Matrix | sum_E_xu_tm1_xu_tm1_ state-input covariance (t-minus-1) |
Matrix | sum_E_xu_t_xu_tm1_ single lag state-input covariance |
Fit | fit_ |
Vector | theta_ |
data_t | dt_ sample period |
size_t | n_u_ number of inputs |
size_t | n_x_ number of states |
size_t | n_y_ number of outputs |
size_t | n_trials_ number of input/output data sequences |
std::vector< size_t > | n_t_ number of time steps |
size_t | n_t_tot_ total number of time steps across trials |
Detailed Description #
class lds::gaussian::FitEM;
This type is used in the process of fitting GLDS models by expectation-maximization (EM).
Updated on 19 May 2022 at 17:16:04 Eastern Daylight Time