BrainCog is an open source spiking neural network based brain-inspired cognitive intelligence engine for Brain-inspired Artificial Intelligence and brain simulation. More information on BrainCog can be found on its homepage http://www.brain-cog.network/
The current version of BrainCog contains at least 18 functional spiking neural network algorithms (including but not limited to perception and learning, decision making, knowledge representation and reasoning, motor control, social cognition, etc.) built based on BrainCog infrastructures, and BrainCog also provide brain simulations to drosophila, rodent, monkey, and human brains at multiple scales based on spiking neural networks at multiple scales. More detail in http://www.brain-cog.network/docs/
BrainCog is a community based effort for spiking neural network based artificial intelligence, and we welcome any forms of contributions, from contributing to the development of core components, to contributing for applications.
BrainCog provides essential and fundamental components to model biological and artificial intelligence.
Our paper has been accepted by Patterns recently. If you use BrainCog in your research, the following paper can be cited as the source for BrainCog.
@article{Zeng2023,
doi = {10.1016/j.patter.2023.100789},
url = {https://doi.org/10.1016/j.patter.2023.100789},
year = {2023},
month = jul,
publisher = {Cell Press},
pages = {100789},
author = {Yi Zeng and Dongcheng Zhao and Feifei Zhao and Guobin Shen and Yiting Dong and Enmeng Lu and Qian Zhang and Yinqian Sun and Qian Liang and Yuxuan Zhao and Zhuoya Zhao and Hongjian Fang and Yuwei Wang and Yang Li and Xin Liu and Chengcheng Du and Qingqun Kong and Zizhe Ruan and Weida Bi},
title = {{BrainCog}: A spiking neural network based, brain-inspired cognitive intelligence engine for brain-inspired {AI} and brain simulation},
journal = {Patterns}
}
BrainCog currently provides cognitive functions components that can be classified into five categories:
- Perception and Learning
- Knowledge Representation and Reasoning
- Decision Making
- Motor Control
- Social Cognition
- Development and Evolution
- Safety and Security
BrainCog currently include two parts for brain simulation:
- Brain Cognitive Function Simulation
- Multi-scale Brain Structure Simulation
The anatomical and imaging data is used to support our simulation from various aspects.
BrainCog currently provides hardware acceleration
for spiking neural network based brain-inspired AI.
- python == 3.8
- CUDA toolkit == 11.
- numpy >= 1.21.2
- scipy >= 1.8.0
- h5py >= 3.6.0
- torch >= 1.10
- torchvision >= 0.12.0
- torchaudio >= 0.11.0
- timm >= 0.5.4
- matplotlib >= 3.5.1
- einops >= 0.4.1
- thop >= 0.0.31
- pyyaml >= 6.0
- loris >= 0.5.3
- pandas >= 1.4.2
- tonic
- pandas >= 1.4.2
- xlrd == 1.2.0
-
You can install braincog by running:
pip install braincog
-
Also, install from github by running:
pip install git+https://github.com/braincog-X/Brain-Cog.git
-
If you are a developer, it is recommanded to download or clone braincog from github.
git clone https://github.com/braincog-X/Brain-Cog.git
-
Enter the folder of braincog
cd Brain-Cog
-
Install braincog locally
pip install -e .
- Examples for Image Classification
cd ./examples/Perception_and_Learning/img_cls/bp
python main.py --model cifar_convnet --dataset cifar10 --node-type LIFNode --step 8 --device 0
- Examples for Event Classification
cd ./examples/Perception_and_Learning/img_cls/bp
python main.py --model dvs_convnet --node-type LIFNode --dataset dvsc10 --step 10 --batch-size 128 --act-fun QGateGrad --device 0
Other BrainCog features and tutorials can be found at http://www.brain-cog.network/docs/
Please add our BrainCog Assitant via wechat and we will invite you to our wechat developer group.