def random_model(n, p, T): data = np.random.randn(T, p) model = DefaultLDS(n, p) model.A = 0.99 * random_rotation(n, 0.01) model.C = np.random.randn(p, n) J, h = lds_to_dense_infoparams(model, data) model.add_data(data) return model, (J, h)
def random_model(n, p, d, T): data = np.random.randn(T, p) inputs = np.random.randn(T, d) model = DefaultLDS(p, n, d) model.A = 0.99 * random_rotation(n, 0.01) model.B = 0.1 * np.random.randn(n, d) model.C = np.random.randn(p, n) model.D = 0.1 * np.random.randn(p, d) J, h = lds_to_dense_infoparams(model, data, inputs) model.add_data(data, inputs=inputs) return model, (J, h)