SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2406.16749 · 2024

Inferring stochastic low-rank recurrent neural networks from neural data

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 25 functions out of this paper's own repositories and ran 23 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.

RepositoryRoleRan
mackelab/smc_rnns canonical 23 of 25
FunctionStatusWhere it lives
PL_Jacobian Ran mackelab/smc_rnns/fixed_points/stability.py
code served (permissive licence) · get_code("e791be93f5d34005")
Relu_derivative Ran mackelab/smc_rnns/fixed_points/stability.py
code served (permissive licence) · get_code("580464f8c0ffe2eb")
calc_isi_stats Ran mackelab/smc_rnns/evaluation/calc_stats.py
code served (permissive licence) · get_code("bfed00e6f5d83eaa")
calculate_correlation Ran mackelab/smc_rnns/evaluation/calc_stats.py
code served (permissive licence) · get_code("8e47cd6071cb66e5")
clean_from_outliers Ran mackelab/smc_rnns/evaluation/kl_Gauss.py
code served (permissive licence) · get_code("58c4df2377e1b0b8")
construct_relu_matrix Ran mackelab/smc_rnns/fixed_points/constrained_scify.py
code served (permissive licence) · get_code("0dd3d7e404b4a977")
construct_relu_matrix_list Ran mackelab/smc_rnns/fixed_points/constrained_scify.py
code served (permissive licence) · get_code("37f39f6d5b10b7a6")
ensure_length_is_even Ran mackelab/smc_rnns/evaluation/pse.py
code served (permissive licence) · get_code("28f6dfd84d1926e3")
estimate_cross_correlation Ran mackelab/smc_rnns/evaluation/calc_stats.py
code served (permissive licence) · get_code("1f4f2991b2c87ba3")
fft_smoothed Ran mackelab/smc_rnns/evaluation/pse.py
code served (permissive licence) · get_code("429eb4472c867f62")
find_fixed_points_analytic Ran mackelab/smc_rnns/fixed_points/find_fixed_points_analytic.py
code served (permissive licence) · get_code("7fe34e5b23ee89f6")
get_average_spectrum Ran mackelab/smc_rnns/evaluation/pse.py
code served (permissive licence) · get_code("cb11c1c39000382f")
get_default_params Ran mackelab/smc_rnns/py_rnn/default_params.py
code served (permissive licence) · get_code("93bac9f432ea3e20")
h5_to_dict Ran mackelab/smc_rnns/evaluation/eval_random_search.py
code served (permissive licence) · get_code("ce13363aeb64a0f0")
initialize_loadings Ran mackelab/smc_rnns/py_rnn/initializers.py
code served (permissive licence) · get_code("0763d929a3c9130c")
initialize_w_inp Ran mackelab/smc_rnns/py_rnn/initializers.py
code served (permissive licence) · get_code("7489a305dc0b3c32")
initialize_w_rec Ran mackelab/smc_rnns/py_rnn/initializers.py
code served (permissive licence) · get_code("cec5b0ec7d0fab17")
kl_between_two_gaussians Ran mackelab/smc_rnns/evaluation/kl_Gauss.py
code served (permissive licence) · get_code("3ebb3b68437965d3")
mask_none Ran mackelab/smc_rnns/py_rnn/model.py
code served (permissive licence) · get_code("229da4a3e2f0ad09")
mean_rate Ran mackelab/smc_rnns/evaluation/eval_kl_pse.py
code served (permissive licence) · get_code("97e84c476d2b594b")
powerset Ran mackelab/smc_rnns/fixed_points/constrained_scify.py
code served (permissive licence) · get_code("07159a7ad120cadd")
powerset Ran mackelab/smc_rnns/fixed_points/find_fixed_points_analytic.py
code served (permissive licence) · get_code("5803a5532384606b")
set_nonlinearity Ran mackelab/smc_rnns/py_rnn/model.py
code served (permissive licence) · get_code("d9dd7f86ac752725")
eval_likelihood_gmm_for_diagonal_cov Not yet run mackelab/smc_rnns/evaluation/kl_Gauss.py
code served (permissive licence) · get_code("654cda3e3112fd10")
predict Not yet run mackelab/smc_rnns/py_rnn/model.py
code served (permissive licence) · get_code("69ff95878cf21a72")

Repositories linked to this paper

Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.

Abstract

A central aim in computational neuroscience is to relate the activity of large populations of neurons to an underlying dynamical system. Models of these neural dynamics should ideally be both interpretable and fit the observed data well. Low-rank recurrent neural networks (RNNs) exhibit such interpretability by having tractable dynamics. However, it is unclear how to best fit low-rank RNNs to data consisting of noisy observations of an underlying stochastic system. Here, we propose to fit stochastic low-rank RNNs with variational sequential Monte Carlo methods. We validate our method on several datasets consisting of both continuous and spiking neural data, where we obtain lower dimensional latent dynamics than current state of the art methods. Additionally, for low-rank models with piecewise linear nonlinearities, we show how to efficiently identify all fixed points in polynomial rather than exponential cost in the number of units, making analysis of the inferred dynamics tractable for large RNNs. Our method both elucidates the dynamical systems underlying experimental recordings and provides a generative model whose trajectories match observed variability.

For agents

The same record, over MCP at https://syntology.ai/mcp:

get_harvested_code_for_paper("2406.16749")
get_code_for_paper("2406.16749")
have("2406.16749")

Connect an agent — have() is free.