Heaviside

Heaviside#

:class:~sinabs.activation.Heaviside surrogate gradient.

import matplotlib.pyplot as plt
import torch

import sinabs.activation as sina

x = torch.linspace(-2, 4, 500)
plt.plot(x, sina.Heaviside(window=0.5)(v_mem=x, spike_threshold=1.0), label="Heaviside")
plt.xlabel("Neuron membrane potential")
plt.ylabel("Derivative")
plt.legend()
<matplotlib.legend.Legend at 0x72a63a13ecd0>
../../_images/8d438ebbcaa3b520a4eab8d5458cdff78c8c2c01af2e7314f5b3bef25258df6f.png