Badges | |
---|---|
fairness | |
package | |
docs | |
tests | |
running on | |
license |
The use of animals in neuroscience research is a fundamental tool to understand the inner workings of the brain during perception and cognition in health and disease. Neuroscientists train animals, often rodents, in behavioral tasks over several months, however training protocols are sometimes not well defined and this leads to delays in research, additional costs, or the need of more animals. Finding strategies to optimize animal training in safe and ethical ways is therefore of crucial importance in neuroscience.
ANNUBeS, which stays for Artificial Neural Networks to Uncover Behavioral Strategies, is a deep learning framework meant to generate synthetic data and train on them neural networks aimed at developing and evaluating animals' training protocols in neuroscience. The package gives the users the possibility to generate behavioral data in a very flexible way, that can be used to train neural networks in the same way that animals are trained, and study whether the developed models can predict the behavior of the animals. The ultimate goal of the framework is to lead researchers to more efficient training protocols, thus improving neuroscience practices.
🐛 Bugs reports and ⭐ features requests here
For more details about how to contribute, see the contribution guidelines.
❗❗ DISCLAIMER ❗❗
Please note that this software is currently in its early stages of development. As such, some features may not work exactly as intended or envisioned yet. We appreciate your patience and understanding. If you encounter any issues or have suggestions for improvement, we encourage you to open an issue on our repository. Thank you for your support!
We advise to install the package inside a virtual environment (using conda or venv). Make sure to create an environment containing a Python version >=3.11 and pip
package installer.
After having created and activated your environment, you have two ways for installing ANNUBeS.
This is the recommended installation for users.
pip install annubes
This command will install the latest version of the package deployed on PyPI.
git clone git@github.com:ANNUBS/annubes.git
cd annubes
pip install .
The above commands will install the most recent version of the repository, using the default branch (main).
The Task
data class can be used for defining a behavioral task, and many parameters can be set. The configuration of the trials that can appear during a session is given by a dictionary representing the ratio of the different trials within the task (session
). Trials with a single modality (e.g., a visual trial) must be represented by single characters, while trials with multiple modalities (e.g., an audiovisual trial) are represented by the character combination of those trials. The probability of catch trials (denoted by X) in the session can be set using the catch_prob
parameter.
from annubes.task import Task
task = Task(name='example_task',
session={"v":0.5, "a":0.5},
stim_intensities=[0.7, 0.9],
stim_time=2000,
catch_prob=0.3)
For more details about the Task
class parameters, see the API Documentation.
Then, trials can be generated:
NTRIALS = 10
trials = task.generate_trials(NTRIALS)
And plotted:
task.plot_trials(NTRIALS)
This functionality is still under development.
If you want to contribute to the development of annubes, have a look at the contribution guidelines.
This package was created with Cookiecutter and the NLeSC/python-template.
If you're looking for developer documentation, go here.