Neuromorphic and biological learning

Read Chapter 7.4

Python demonstration

STDP demonstration:

import numpy as np
import matplotlib.pyplot as plt

A_W_P = lambda w: 1
tau_p = 0.01
w     = 0
dt_space = np.linspace(-0.05, 0.05, 100)

def dw (dt):
    if dt < 0:
        return A_W_P(w) * np.exp(dt/tau_p)
    if dt == 0:
        return 1
    return -A_W_P(w) * np.exp(-dt/tau_p)

dw_value = [dw(dt) for dt in dt_space]
plt.plot(dt_space, dw_value)

Python / BRIAN demonstration

Imports:

Model creation:

Simulating:

Plotting:

Results:

Visualizing weight change for neurons with different correlations:

Result:

Last updated

Was this helpful?