osl_dynamics.simulation.mar
#
Multivariate autoregressive (MAR) observation model.
Module Contents#
Classes#
Class that generates data from a multivariate autoregressive (MAR) model. |
- class osl_dynamics.simulation.mar.MAR(coeffs, covs)[source]#
Class that generates data from a multivariate autoregressive (MAR) model.
A \(p\)-order MAR model can be written as
\[x_t = A_1 x_{t-1} + ... + A_p x_{t-p} + \epsilon_t\]where \(\epsilon_t \sim N(0, \Sigma)\). The MAR model is therefore parameterized by the MAR coefficients (\(A\)) and covariance (\(\Sigma\)).
- Parameters:
coeffs (np.ndarray) – Array of MAR coefficients, \(A\). Shape must be (n_states, n_lags, n_channels, n_channels).
covs (np.ndarray) – Covariance of the error \(\epsilon_t\). Shape must be (n_states, n_channels) or (n_states, n_channels, n_channels).
Note
This model is also known as VAR or MVAR.
- simulate_data(state_time_course)[source]#
Simulate time series data.
We simulate MAR data based on the hidden state at each time point.
- Parameters:
state_time_course (np.ndarray) – State time course. Shape must be (n_samples, n_states). States must be mutually exclusive.
- Returns:
data – Simulated data. Shape is (n_samples, n_channels).
- Return type:
np.ndarray