Ejemplo n.º 1
0
CURRENT_TEST_DIR = os.path.dirname(os.path.realpath(__file__))
sys.path.append(CURRENT_TEST_DIR + "/../src")

import unittest
import numpy as np
import matplotlib.pyplot as plt
from slayerLoihi import spikeLayer
from slayerParams import yamlParams as SlayerParams
import torch

verbose = True if (('-v' in sys.argv) or ('--verbose' in sys.argv)) else False

device = torch.device('cuda')

# load parameters from yaml file
net_params = SlayerParams('test_files/Loihi/network.yaml')

if verbose is True:
    print('Neuron Type:', 'LOIHI')
    print('vThMant :', 80)
    print('vDecay  :', 128)
    print('iDecay  :', 1024)
    print('refDelay:', 1)

# Network structure
Ns = int(net_params['simulation']['tSample'] / net_params['simulation']['Ts'])
Nin = int(net_params['layer'][0]['dim'])
Nhid = int(net_params['layer'][1]['dim'])
Nout = int(net_params['layer'][2]['dim'])

slayer = spikeLayer(net_params['neuron'], net_params['simulation']).to(device)
Ejemplo n.º 2
0
CURRENT_TEST_DIR = os.path.dirname(os.path.realpath(__file__))
sys.path.append(CURRENT_TEST_DIR + "/../src")

import unittest
import numpy as np
import matplotlib.pyplot as plt
from slayer import spikeLayer
from spikeLoss import spikeLoss
from slayerParams import yamlParams as SlayerParams
import torch

###############################################################################
# testing the gradinets #######################################################
verbose = True if (('-v' in sys.argv) or ('--verbose' in sys.argv)) else False

net_params = SlayerParams(CURRENT_TEST_DIR +
                          "/test_files/snnData/network.yaml")

Ns = int(net_params['simulation']['tSample'] / net_params['simulation']['Ts'])
Nin = int(net_params['layer'][0]['dim'])
Nhid = int(net_params['layer'][1]['dim'])
Nout = int(net_params['layer'][2]['dim'])

net_params['neuron']['tauRho'] = 0.1

device = torch.device('cuda')
# device = torch.device('cuda:3')


class Network(torch.nn.Module):
    def __init__(self, net_params):
        super(Network, self).__init__()
Ejemplo n.º 3
0
CURRENT_TEST_DIR = os.path.dirname(os.path.realpath(__file__))
sys.path.append(CURRENT_TEST_DIR + "/../src")

import unittest
import numpy as np
import matplotlib.pyplot as plt
from slayer import spikeLayer
from slayerParams import yamlParams as SlayerParams
import torch

verbose = True if (('-v' in sys.argv) or ('--verbose' in sys.argv)) else False

device = torch.device('cuda')

net_params = SlayerParams(CURRENT_TEST_DIR + "/test_files/parameters.yaml")

Ns = int(net_params['simulation']['tSample'] / net_params['simulation']['Ts'])
spikeData = np.zeros((2, Ns))
spikeData[0, 100] = 1 / net_params['simulation']['Ts']
spikeData[0, 120] = 1 / net_params['simulation']['Ts']
spikeData[0, 870] = 1 / net_params['simulation']['Ts']
spikeData[1, 153] = 1 / net_params['simulation']['Ts']
spikeData[1, 680] = 1 / net_params['simulation']['Ts']

spike = torch.FloatTensor(spikeData.reshape((1, 1, 1, 2, Ns))).to(device)

slayer = spikeLayer(net_params['neuron'], net_params['simulation']).to(device)

a = slayer.psp(spike)