• Stars
    star
    121
  • Rank 293,924 (Top 6 %)
  • Language
    Python
  • Created over 7 years ago
  • Updated over 7 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A python implementation of a spiking neural network with STDP and Reinforcement learning methods

Spiking Neural Network

This is a simple python implementation of a Spiking Neural Network (SNN) using spiking neuron models, with some Spike Timing Dependent Plasticity based learning methods.

Requirements

  • python 3

Installation

pip3 install -r requirements.txt

Neuron Models

It includes two neuron models, the simplified Leaky Integrate and Fire model and the biophysically inspired Hodgkin-Huxley model.

Note - Only the Integrate and Fire neuron model is implemented fully.

Learning Methods

It includes three learning methods:

  • Basic Spike Timing Dependent Plasticity (STDP)
  • Homeostatic STDP variant
  • Hedonistic reward-based Reinforcement Learning (RL) STDP variant

Usage

Include as a dependency

Add the following to your projects requirements.txt:

-e git+https://github.com/maael/SpikingNeuralNetwork.git#egg=SpikingNeuralNetwork

Import components

from snn.neurons.LeakyIntegrateAndFireNeuron import LeakyIntegrateAndFireNeuron
from snn.learning.stdp import STDP
from snn.network.snn import SNN

Create network

network = SNN(total_input_neurons, [hidden_neurons_1, hidden_neurons_2], total_output_neurons, LeakyIntegrateAndFireNeuron, STDP())

Tools

Visualisation Tool

This repository also includes a simple visualisation tool that is intended to allow viewing of the network structure and firing over time.

usage

python3 snn/tools/visualise.py

More Repositories

1

temtem-api

๐Ÿพ An API for Temtem data, from the official wiki, updated every 4 hours.
TypeScript
52
star
2

html-chain

๐Ÿ”— A super small javascript library to make html by chaining javascript functions
JavaScript
36
star
3

nook

๐Ÿ˜ A website to track your collections and share custom designs in Animal Crossing: New Horizons!
TypeScript
15
star
4

ffxiv-overlays

โš”๏ธ A collection of ACT overlays for FFXIV
JavaScript
8
star
5

gw2-geoguesser

๐Ÿ“ Geoguessr, but for the world of Guild Wars 2
TypeScript
8
star
6

template-repository-usage-action

A GitHub action to automatically update a template repository README with a list of repos that used it in an organisation.
TypeScript
8
star
7

neutralinojs-react-tailwind-template

A template for Neutralino.js apps with React and Tailwind.
JavaScript
6
star
8

dedupotron

๐Ÿค– A tool for Guild Wars 2 to help find duplicates across your inventories and bank tabs that you can stack.
TypeScript
4
star
9

twitch-guild-wars-2-build-viewer

Show Guild Wars 2 Equipment and Skills as a Twitch Panel Extension.
TypeScript
4
star
10

simple-express-react

๐Ÿ”ง A simple project template with Express and React
JavaScript
3
star
11

node-ann

๐Ÿ’ป A node package implementation of a Artificial Neural Network in JavaScript with Backpropagation learning algorithm.
JavaScript
3
star
12

Reversibles

A skills test for Clock.
JavaScript
2
star
13

stock-market-prediction

๐Ÿ’ธ A website to provide the user with decision assistance for stock markets.
JavaScript
2
star
14

HedonisticHebbianNeuralNetwork

A Hedonistic Hebbian Neural Network in python.
Python
2
star
15

neutralino-phaser-template

A template for Neutralino.js apps with phaser.
TypeScript
2
star
16

twitch-plays

A desktop app made with neutralino.js that allows a Twitch Chat to use chat commands to do commands on a PC.
TypeScript
2
star
17

giveaway-o-tron

๐Ÿค– Windows program and a website to allow Twitch giveaways with multiple options.
TypeScript
2
star
18

deck-game

A game built with Lua and Lร–VE - about using cards to beat bosses.
Lua
2
star
19

patreon-herald

Allow connecting Patreon and Twitch accounts, and play sounds to announce patreons first message.
TypeScript
2
star
20

friendagon

๐Ÿ‘พ A multiplayer version of Super Hexagon using phaser.io and socket.io.
JavaScript
2
star
21

dotfiles

My dotfiles
Shell
1
star
22

pyffxivaa

Python FFXIV auto angler
Python
1
star
23

computer-vision-labs

Lab work for the 16COC202 Computer Vision module while at Loughborough University.
MATLAB
1
star
24

racket

๐ŸŽถ A windows tray tool to control audio devices
JavaScript
1
star
25

gw2-sightseeing

TypeScript
1
star
26

node-data-preprocessing

๐Ÿ”ฉ A node package for data preprocessing.
JavaScript
1
star
27

electron-liberate

๐Ÿ”ง โšก An electron release tool
JavaScript
1
star
28

twitch-tournament-viewer

Show tournament information from smash.gg without leaving the twitch stream.
JavaScript
1
star
29

slug-title

Generate a title from given slug
JavaScript
1
star
30

temtem

๐Ÿพ A website to manage your tempedia, quests, encounters, and more!
TypeScript
1
star
31

reading-estimate

A node module to estimate reading time for text or html.
JavaScript
1
star
32

guild-wars-2-sightseeing-app

Bringing FFXIV style sightseeing logs to Guild Wars 2.
TypeScript
1
star
33

node-genetic-algorithm

๐Ÿ‘– A node package implementation of a Genetic Algorithm in JavaScript.
JavaScript
1
star
34

live-stream-extension

An extension to easily view who's live on Youtube and Twitch.
JavaScript
1
star
35

next-template

๐ŸŽ‰ A basis for Next.js based projects.
TypeScript
1
star