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)
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__()
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)