Skip to main content

Plastic Balanced Network Package (Akil et al., 2021)

Project description

Python version License GitHub pull requests Downloads Downloads Downloads Build and Test Code Coverage Documentation Lint Publish to PyPI.org pages-build-deployment

PlasticBalancedNetsPackage

The package plastic_balanced_network can be used to simulate spiking neural networks in the balance regime and undergoing synaptic plasticity on any cell type pair.

There is a great deal of flexibility to simulate a network with any combination of the following parameters:

(1) Total number of neurons.

(2) Fraction of E-I neurons.

(3) Probability of connection.

(4) Synaptic strengths.

(5) Total time of simulation.

(6) Input rate and correlations.

(7) Extra injected current.

(8) EIF neuron parameters.

(9) Plasticity parameters on any connection type and plasticity type (Hebbian, Kohonen, homeostatic inhibitory plasticities).

Installation: Run pip install plastic_balanced_network in the terminal. Alternatively, clone the repo and run pip install -e .

Import: from plastic_balanced_network.network import PlasticNeuralNetwork

You may also import other useful functions for analysis: from plastic_balanced_network.helpers import compute_firing_rate, spike_count_cov, cov2corr, average_cov_corr_over_subpops

Documentation: https://alanakil.github.io/PlasticBalancedNetsPackage/

Research Article: https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1008958

Original Simulations

In addition to the packaged neural network, we also make available the original simulations of plastic balanced networks that were run in MATLAB. The results of these simulations were reported in Akil et al. 2021 ("Balanced networks under spike-timing dependent plasticity"). The exact same network is used in the MATLAB simulations and the Python package presented here. Link to paper: https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1008958

We provide the MATLAB and Python code that was used for all simulations in Akil et al., 2021 in the folder named original_simulations. In this code, we run several realizations of plastic balanced networks with varying:

  • Network size. To compare with theoretical predictions of rates, covariances, and synaptic weights.

  • Input correlations. To assess the impact of increasing correlations in synaptic weights and rates.

  • Initial connectivity. To show the emergence of a manifold of fixed points in weight space when only I->E synapses are plastic.

Please see more details in the paper Akil et al., 2021.

This codebase was developed by Robert Rosenbaum and Alan Akil and is currently maintained by Alan Akil.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

plastic_balanced_network-0.0.5a0.tar.gz (22.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

plastic_balanced_network-0.0.5a0-py3-none-any.whl (17.7 kB view details)

Uploaded Python 3

File details

Details for the file plastic_balanced_network-0.0.5a0.tar.gz.

File metadata

File hashes

Hashes for plastic_balanced_network-0.0.5a0.tar.gz
Algorithm Hash digest
SHA256 4cc6143365398c857abb533a73918d105716568ae9812a9a289d0e431979d670
MD5 c3cdf1b23f4f40e9ad05ae27b6f0f63b
BLAKE2b-256 e618a8967cff3c5edc9bb3039102e04e9387ec4eb5632bc367d2bae0929c3222

See more details on using hashes here.

File details

Details for the file plastic_balanced_network-0.0.5a0-py3-none-any.whl.

File metadata

File hashes

Hashes for plastic_balanced_network-0.0.5a0-py3-none-any.whl
Algorithm Hash digest
SHA256 15d1bf08cf5a8fbc5382612f9363fd9e2ef1f52c0a498d9743040233d30eb1f1
MD5 23e30ee340ced860f5ef5c8a5efca116
BLAKE2b-256 d76f4be7166889ec9a8eed562bd7c1bab71853cb07fa714ae9e9149f3ec520ec

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page