(Masse, et al., 2019): RNN with STP for Working Memory

Re-implementation of the paper with BrainPy:

  • Masse, Nicolas Y., Guangyu R. Yang, H. Francis Song, Xiao-Jing Wang, and David J. Freedman. “Circuit mechanisms for the maintenance and manipulation of information in working memory.” Nature neuroscience 22, no. 7 (2019): 1159-1167.

Thanks the original GitHub code: https://github.com/nmasse/Short-term-plasticity-RNN

The code for the implementation of Task please refer to the Masse_2019_STP_RNN_tasks.py.

The analysis methods please refer to the original repository: https://github.com/nmasse/Short-term-plasticity-RNN/blob/master/analysis.py

[11]:
import brainpy as bp
import brainpy.math as bm
bp.math.set_platform('cpu')
[12]:
import os
import math
import pickle
import numpy as np
from Masse_2019_STP_RNN_tasks import Task
[13]:
# Time parameters
dt = 100  # ms
dt_sec = dt / 1000
time_constant = 100  # ms
alpha = dt / time_constant
[14]:
# Loss parameters
spike_regularization = 'L2'  # 'L1' or 'L2'
spike_cost = 2e-2
weight_cost = 0.
clip_max_grad_val = 0.1
[15]:
# Training specs
batch_size = 1024
learning_rate = 2e-2
[16]:
def initialize(shape, prob, size):
  w = bm.random.gamma(shape, size=size)
  w *= (bm.random.random(size) < prob)
  return bm.asarray(w, dtype=bm.float32)

Model

[17]:
class Model(bp.DynamicalSystem):
  def __init__(self, task, num_hidden=100, name=None):
    super(Model, self).__init__(name=name)

    assert isinstance(task, Task)
    self.task = task

    # Network configuration
    self.exc_inh_prop = 0.8  # excitatory/inhibitory ratio
    self.conn_prob = 0.2

    # Network shape
    self.num_output = task.num_output
    self.num_hidden = num_hidden
    self.num_input = task.num_input

    # EI
    self.num_exc = int(self.num_hidden * self.exc_inh_prop)
    self.num_inh = self.num_hidden - self.num_exc
    self.EI_list = bm.ones(self.num_hidden)
    self.EI_list[self.num_exc:] = -1.
    self.EI_matrix = bm.diag(self.EI_list)
    self.inh_index = bm.arange(self.num_exc, self.num_hidden)

    # Input and noise
    self.noise_rnn = math.sqrt(2 * alpha) * 0.5

    # Synaptic plasticity specs
    self.tau_fast = 200  # ms
    self.tau_slow = 1500  # ms
    self.U_stf = 0.15
    self.U_std = 0.45

    # Initial hidden values
    self.init_h = bm.TrainVar(bm.ones((batch_size, self.num_hidden)) * 0.1)
    self.h = bm.Variable(bm.ones((batch_size, self.num_hidden)) * 0.1)

    # Input/recurrent/output weights
    #   1. w_ir (input => recurrent)
    prob = self.conn_prob * task.num_receptive_fields
    self.w_ir = bm.TrainVar(initialize(0.2, prob, (self.num_input, self.num_hidden)))
    self.w_ir_mask = bm.ones((self.num_input, self.num_hidden))
    if task.trial_type == 'location_DMS':
      self.w_ir_mask *= 0.
      target_ind = [range(0, self.num_hidden, 3), range(1, self.num_hidden, 3), range(2, self.num_hidden, 3)]
      for n in range(self.num_input):
        u = int(n // (self.num_input / 3))
        self.w_ir_mask[n, target_ind[u]] = 1.
      self.w_ir *= self.w_ir_mask  # only preserve
    #   2. w_rr (recurrent => recurrent)
    self.w_rr = bm.TrainVar(initialize(0.1, self.conn_prob, (self.num_hidden, self.num_hidden)))
    self.w_rr[:, self.num_exc:] = initialize(0.2, self.conn_prob, (self.num_hidden, self.num_inh))
    self.w_rr[self.num_exc:, :] = initialize(0.2, self.conn_prob, (self.num_inh, self.num_hidden))
    self.w_rr_mask = bm.ones((self.num_hidden, self.num_hidden)) - bm.eye(self.num_hidden)
    self.w_rr *= self.w_rr_mask  # remove self-connections
    self.b_rr = bm.TrainVar(bm.zeros((1, self.num_hidden)))
    #   3. w_ro (input => recurrent)
    self.w_ro = bm.TrainVar(initialize(0.1, self.conn_prob, (self.num_hidden, self.num_output)))
    self.w_ro_mask = bm.ones((self.num_hidden, self.num_output))
    self.w_ro_mask[self.num_exc:, :] = 0.
    self.w_ro *= self.w_ro_mask  # remove inhibitory-to-output connections
    #   4. b_ro (bias)
    self.b_ro = bm.TrainVar(bm.zeros((1, self.num_output)))

    # Synaptic variables
    #   - The first row (first half neurons) are facilitating synapses
    #   - The second row (last half neurons) are depressing synapses
    alpha_stf = bm.ones((2, int(self.num_hidden / 2)))
    alpha_stf[0] = dt / self.tau_slow
    alpha_stf[1] = dt / self.tau_fast
    alpha_std = bm.ones((2, int(self.num_hidden / 2)))
    alpha_std[0] = dt / self.tau_fast
    alpha_std[1] = dt / self.tau_slow
    U = bm.ones((2, int(self.num_hidden / 2)))
    U[0] = 0.15
    U[1] = 0.45
    u = bm.ones((batch_size, 2, int(self.num_hidden / 2))) * 0.3
    u[:, 0] = 0.15
    u[:, 1] = 0.45
    #   - final
    self.alpha_stf = alpha_stf.reshape((1, -1))
    self.alpha_std = alpha_std.reshape((1, -1))
    self.U = U.reshape((1, -1))
    self.u = bm.Variable(u.reshape((batch_size, -1)))
    self.x = bm.Variable(bm.ones((batch_size, self.num_hidden)))
    self.y = bm.Variable(bm.ones((batch_size, self.num_output)))
    self.y_hist = bm.Variable(bm.zeros((task.num_steps, batch_size, task.num_output)))

    # Loss
    self.loss = bm.Variable(bm.zeros(1))
    self.perf_loss = bm.Variable(bm.zeros(1))
    self.spike_loss = bm.Variable(bm.zeros(1))
    self.weight_loss = bm.Variable(bm.zeros(1))

  def reset_state(self, batch_size):
    u = bm.ones((batch_size, 2, int(self.num_hidden / 2))) * 0.3
    u[:, 0] = 0.15
    u[:, 1] = 0.45
    self.u.value = u.reshape((batch_size, -1))
    self.x.value = bm.ones((batch_size, self.num_hidden))
    self.loss[:] = 0.
    self.perf_loss[:] = 0.
    self.spike_loss[:] = 0.
    self.weight_loss[:] = 0.

  def update(self, input):
    # update STP variables
    self.x += (self.alpha_std * (1 - self.x) - dt_sec * self.u * self.x * self.h)
    self.u += (self.alpha_stf * (self.U - self.u) + dt_sec * self.U * (1 - self.u) * self.h)
    self.x.value = bm.minimum(1., bm.relu(self.x))
    self.u.value = bm.minimum(1., bm.relu(self.u))
    h_post = self.u * self.x * self.h

    # Update the hidden state. Only use excitatory projections from input layer to RNN
    # All input and RNN activity will be non-negative
    state = alpha * (input @ bm.relu(self.w_ir) + h_post @ self.w_rr + self.b_rr)
    state += bm.random.normal(0, self.noise_rnn, self.h.shape)
    self.h.value = bm.relu(state) + self.h * (1 - alpha)
    self.y.value = self.h @ bm.relu(self.w_ro) + self.b_ro

  def predict(self, inputs):
    self.h[:] = self.init_h
    scan = bm.make_loop(body_fun=self.update,
                        dyn_vars=[self.x, self.u, self.h, self.y],
                        out_vars=[self.y, self.h])
    logits, hist_h = scan(inputs)
    self.y_hist[:] = logits
    return logits, hist_h

  def loss_func(self, inputs, targets, mask):
    logits, hist_h = self.predict(inputs)

    # Calculate the performance loss
    perf_loss = bp.losses.cross_entropy_loss(logits, targets, reduction='none') * mask
    self.perf_loss[:] = bm.mean(perf_loss)

    # L1/L2 penalty term on hidden state activity to encourage low spike rate solutions
    n = 2 if spike_regularization == 'L2' else 1
    self.spike_loss[:] = bm.mean(hist_h ** n)
    self.weight_loss[:] = bm.mean(bm.relu(self.w_rr) ** n)

    # final loss
    self.loss[:] = self.perf_loss + spike_cost * self.spike_loss + weight_cost * self.weight_loss
    return self.loss.mean()

Analysis

[18]:
def get_perf(target, output, mask):
  """Calculate task accuracy by comparing the actual network output to the desired output
    only examine time points when test stimulus is on, e.g. when y[:,:,0] = 0 """
  target = target.numpy()
  output = output.numpy()
  mask = mask.numpy()

  mask_full = mask > 0
  mask_test = mask_full * (target[:, :, 0] == 0)
  mask_non_match = mask_full * (target[:, :, 1] == 1)
  mask_match = mask_full * (target[:, :, 2] == 1)
  target_max = np.argmax(target, axis=2)
  output_max = np.argmax(output, axis=2)

  match = target_max == output_max
  accuracy = np.sum(match * mask_test) / np.sum(mask_test)
  acc_non_match = np.sum(match * np.squeeze(mask_non_match)) / np.sum(mask_non_match)
  acc_match = np.sum(match * np.squeeze(mask_match)) / np.sum(mask_match)
  return accuracy, acc_non_match, acc_match

Training

[19]:
def trial(task_name, save_fn=None, num_iterations=2000, iter_between_outputs=5):
  task = Task(task_name, dt=dt, tau=time_constant, batch_size=batch_size)
  # trial_info = task.generate_trial(set_rule=None)
  # task.plot_neural_input(trial_info)

  model = Model(task)
  opt = bp.optim.Adam(learning_rate, train_vars=model.train_vars())
  grad_f = bm.grad(model.loss_func,
                   dyn_vars=model.vars(),
                   grad_vars=model.train_vars(),
                   return_value=True)

  @bm.jit
  @bm.to_object(child_objs=(model, opt))
  def train_op(x, y, mask):
    grads, _ = grad_f(x, y, mask)
    capped_gs = dict()
    for key, grad in grads.items():
      if 'w_rr' in key: grad *= model.w_rr_mask
      elif 'w_ro' in key: grad *= model.w_ro_mask
      elif 'w_ri' in key: grad *= model.w_ir_mask
      capped_gs[key] = bm.clip_by_norm(grad, clip_max_grad_val)
    opt.update(grads=capped_gs)

  # keep track of the model performance across training
  model_performance = {'accuracy': [], 'loss': [], 'perf_loss': [],
                       'spike_loss': [], 'weight_loss': [], 'iteration': []}

  for i in range(num_iterations):
    model.reset_state(batch_size)
    # generate batch of batch_train_size
    trial_info = task.generate_trial(set_rule=None)
    inputs = bm.array(trial_info['neural_input'], dtype=bm.float32)
    targets = bm.array(trial_info['desired_output'], dtype=bm.float32)
    mask = bm.array(trial_info['train_mask'], dtype=bm.float32)

    # Run the model
    train_op(inputs, targets, mask)

    # get metrics
    accuracy, _, _ = get_perf(targets, model.y_hist, mask)
    model_performance['accuracy'].append(accuracy)
    model_performance['loss'].append(model.loss)
    model_performance['perf_loss'].append(model.perf_loss)
    model_performance['spike_loss'].append(model.spike_loss)
    model_performance['weight_loss'].append(model.weight_loss)
    model_performance['iteration'].append(i)

    # Save the network model and output model performance to screen
    if i % iter_between_outputs == 0:
      print(task_name +
            f' Iter {i:4d}' +
            f' | Accuracy {accuracy:0.4f}' +
            f' | Perf loss {model.perf_loss[0]:0.4f}' +
            f' | Spike loss {model.spike_loss[0]:0.4f}' +
            f' | Weight loss {model.weight_loss[0]:0.4f}' +
            f' | Mean activity {bm.mean(model.h):0.4f}')

  if save_fn:
    if not os.path.exists(os.path.dirname(save_fn)):
      os.makedirs(os.path.dirname(save_fn))

    # Save model and results
    weights = model.train_vars().unique().dict()
    results = {'weights': weights, 'parameters': {}}
    for k, v in model_performance.items():
      results[k] = v
    pickle.dump(results, open(save_fn, 'wb'))
[20]:
trial('DMS')
DMS Iter    0 | Accuracy 0.5211 | Perf loss 2.7038 | Spike loss 7.8653 | Weight loss 0.0315 | Mean activity 3.3380
DMS Iter    5 | Accuracy 0.4184 | Perf loss 0.4879 | Spike loss 5.5533 | Weight loss 0.0315 | Mean activity 1.6523
DMS Iter   10 | Accuracy 0.4473 | Perf loss 0.2892 | Spike loss 4.3892 | Weight loss 0.0312 | Mean activity 1.2179
DMS Iter   15 | Accuracy 0.4654 | Perf loss 0.2386 | Spike loss 2.8176 | Weight loss 0.0308 | Mean activity 1.0014
DMS Iter   20 | Accuracy 0.5000 | Perf loss 0.2102 | Spike loss 2.4600 | Weight loss 0.0309 | Mean activity 0.8940
DMS Iter   25 | Accuracy 0.4783 | Perf loss 0.2018 | Spike loss 2.2587 | Weight loss 0.0311 | Mean activity 0.8501
DMS Iter   30 | Accuracy 0.5119 | Perf loss 0.1815 | Spike loss 2.0880 | Weight loss 0.0313 | Mean activity 0.7721
DMS Iter   35 | Accuracy 0.5340 | Perf loss 0.1697 | Spike loss 1.7911 | Weight loss 0.0318 | Mean activity 0.7324
DMS Iter   40 | Accuracy 0.5469 | Perf loss 0.1640 | Spike loss 1.7178 | Weight loss 0.0324 | Mean activity 0.6913
DMS Iter   45 | Accuracy 0.5764 | Perf loss 0.1524 | Spike loss 1.6305 | Weight loss 0.0332 | Mean activity 0.6684
DMS Iter   50 | Accuracy 0.6229 | Perf loss 0.1436 | Spike loss 1.5921 | Weight loss 0.0339 | Mean activity 0.6497
DMS Iter   55 | Accuracy 0.6301 | Perf loss 0.1382 | Spike loss 1.5635 | Weight loss 0.0346 | Mean activity 0.6360
DMS Iter   60 | Accuracy 0.6254 | Perf loss 0.1392 | Spike loss 1.4905 | Weight loss 0.0353 | Mean activity 0.6193
DMS Iter   65 | Accuracy 0.6494 | Perf loss 0.1325 | Spike loss 1.4990 | Weight loss 0.0360 | Mean activity 0.6177
DMS Iter   70 | Accuracy 0.6910 | Perf loss 0.1232 | Spike loss 1.4614 | Weight loss 0.0365 | Mean activity 0.6192
DMS Iter   75 | Accuracy 0.6977 | Perf loss 0.1206 | Spike loss 1.4657 | Weight loss 0.0372 | Mean activity 0.6092
DMS Iter   80 | Accuracy 0.7135 | Perf loss 0.1178 | Spike loss 1.4238 | Weight loss 0.0377 | Mean activity 0.6133
DMS Iter   85 | Accuracy 0.7240 | Perf loss 0.1133 | Spike loss 1.4442 | Weight loss 0.0383 | Mean activity 0.6201
DMS Iter   90 | Accuracy 0.7273 | Perf loss 0.1093 | Spike loss 1.4717 | Weight loss 0.0390 | Mean activity 0.6170
DMS Iter   95 | Accuracy 0.7404 | Perf loss 0.1055 | Spike loss 1.4073 | Weight loss 0.0395 | Mean activity 0.6214
DMS Iter  100 | Accuracy 0.7670 | Perf loss 0.0974 | Spike loss 1.4685 | Weight loss 0.0403 | Mean activity 0.6321
DMS Iter  105 | Accuracy 0.7639 | Perf loss 0.0996 | Spike loss 1.4525 | Weight loss 0.0410 | Mean activity 0.6321
DMS Iter  110 | Accuracy 0.7947 | Perf loss 0.0879 | Spike loss 1.4711 | Weight loss 0.0416 | Mean activity 0.6412
DMS Iter  115 | Accuracy 0.7881 | Perf loss 0.0893 | Spike loss 1.4721 | Weight loss 0.0426 | Mean activity 0.6400
DMS Iter  120 | Accuracy 0.7902 | Perf loss 0.0853 | Spike loss 1.4998 | Weight loss 0.0433 | Mean activity 0.6495
DMS Iter  125 | Accuracy 0.8094 | Perf loss 0.0775 | Spike loss 1.4819 | Weight loss 0.0440 | Mean activity 0.6519
DMS Iter  130 | Accuracy 0.8127 | Perf loss 0.0780 | Spike loss 1.4739 | Weight loss 0.0446 | Mean activity 0.6535
DMS Iter  135 | Accuracy 0.8295 | Perf loss 0.0725 | Spike loss 1.4526 | Weight loss 0.0452 | Mean activity 0.6481
DMS Iter  140 | Accuracy 0.8303 | Perf loss 0.0702 | Spike loss 1.4571 | Weight loss 0.0458 | Mean activity 0.6508
DMS Iter  145 | Accuracy 0.8248 | Perf loss 0.0719 | Spike loss 1.4244 | Weight loss 0.0463 | Mean activity 0.6533
DMS Iter  150 | Accuracy 0.8318 | Perf loss 0.0707 | Spike loss 1.4362 | Weight loss 0.0468 | Mean activity 0.6520
DMS Iter  155 | Accuracy 0.8227 | Perf loss 0.0718 | Spike loss 1.4525 | Weight loss 0.0476 | Mean activity 0.6625
DMS Iter  160 | Accuracy 0.8293 | Perf loss 0.0687 | Spike loss 1.4380 | Weight loss 0.0481 | Mean activity 0.6525
DMS Iter  165 | Accuracy 0.8318 | Perf loss 0.0672 | Spike loss 1.4201 | Weight loss 0.0484 | Mean activity 0.6538
DMS Iter  170 | Accuracy 0.8379 | Perf loss 0.0639 | Spike loss 1.4193 | Weight loss 0.0488 | Mean activity 0.6541
DMS Iter  175 | Accuracy 0.8297 | Perf loss 0.0673 | Spike loss 1.4213 | Weight loss 0.0494 | Mean activity 0.6478
DMS Iter  180 | Accuracy 0.8422 | Perf loss 0.0619 | Spike loss 1.4273 | Weight loss 0.0497 | Mean activity 0.6586
DMS Iter  185 | Accuracy 0.8475 | Perf loss 0.0614 | Spike loss 1.3814 | Weight loss 0.0500 | Mean activity 0.6567
DMS Iter  190 | Accuracy 0.8451 | Perf loss 0.0628 | Spike loss 1.3811 | Weight loss 0.0505 | Mean activity 0.6565
DMS Iter  195 | Accuracy 0.8518 | Perf loss 0.0601 | Spike loss 1.3828 | Weight loss 0.0511 | Mean activity 0.6549
DMS Iter  200 | Accuracy 0.8529 | Perf loss 0.0569 | Spike loss 1.3763 | Weight loss 0.0515 | Mean activity 0.6515
DMS Iter  205 | Accuracy 0.8508 | Perf loss 0.0577 | Spike loss 1.3716 | Weight loss 0.0520 | Mean activity 0.6461
DMS Iter  210 | Accuracy 0.8514 | Perf loss 0.0579 | Spike loss 1.3755 | Weight loss 0.0524 | Mean activity 0.6428
DMS Iter  215 | Accuracy 0.8512 | Perf loss 0.0573 | Spike loss 1.3652 | Weight loss 0.0529 | Mean activity 0.6437
DMS Iter  220 | Accuracy 0.8521 | Perf loss 0.0559 | Spike loss 1.3662 | Weight loss 0.0533 | Mean activity 0.6355
DMS Iter  225 | Accuracy 0.8609 | Perf loss 0.0540 | Spike loss 1.3805 | Weight loss 0.0535 | Mean activity 0.6425
DMS Iter  230 | Accuracy 0.8682 | Perf loss 0.0520 | Spike loss 1.3702 | Weight loss 0.0541 | Mean activity 0.6354
DMS Iter  235 | Accuracy 0.8682 | Perf loss 0.0522 | Spike loss 1.3818 | Weight loss 0.0544 | Mean activity 0.6353
DMS Iter  240 | Accuracy 0.8629 | Perf loss 0.0529 | Spike loss 1.3609 | Weight loss 0.0548 | Mean activity 0.6275
DMS Iter  245 | Accuracy 0.8494 | Perf loss 0.0576 | Spike loss 1.3546 | Weight loss 0.0555 | Mean activity 0.6225
DMS Iter  250 | Accuracy 0.8623 | Perf loss 0.0535 | Spike loss 1.3358 | Weight loss 0.0557 | Mean activity 0.6133
DMS Iter  255 | Accuracy 0.8684 | Perf loss 0.0512 | Spike loss 1.3440 | Weight loss 0.0562 | Mean activity 0.6131
DMS Iter  260 | Accuracy 0.8705 | Perf loss 0.0520 | Spike loss 1.3385 | Weight loss 0.0566 | Mean activity 0.6083
DMS Iter  265 | Accuracy 0.8678 | Perf loss 0.0519 | Spike loss 1.3221 | Weight loss 0.0567 | Mean activity 0.6024
DMS Iter  270 | Accuracy 0.8740 | Perf loss 0.0492 | Spike loss 1.3103 | Weight loss 0.0571 | Mean activity 0.5915
DMS Iter  275 | Accuracy 0.8762 | Perf loss 0.0465 | Spike loss 1.2993 | Weight loss 0.0574 | Mean activity 0.5922
DMS Iter  280 | Accuracy 0.8723 | Perf loss 0.0489 | Spike loss 1.2954 | Weight loss 0.0578 | Mean activity 0.5907
DMS Iter  285 | Accuracy 0.8660 | Perf loss 0.0495 | Spike loss 1.3016 | Weight loss 0.0583 | Mean activity 0.5868
DMS Iter  290 | Accuracy 0.8783 | Perf loss 0.0478 | Spike loss 1.2908 | Weight loss 0.0589 | Mean activity 0.5819
DMS Iter  295 | Accuracy 0.8711 | Perf loss 0.0487 | Spike loss 1.2881 | Weight loss 0.0591 | Mean activity 0.5714
DMS Iter  300 | Accuracy 0.8666 | Perf loss 0.0502 | Spike loss 1.2648 | Weight loss 0.0594 | Mean activity 0.5663
DMS Iter  305 | Accuracy 0.8715 | Perf loss 0.0476 | Spike loss 1.2757 | Weight loss 0.0599 | Mean activity 0.5588
DMS Iter  310 | Accuracy 0.8713 | Perf loss 0.0486 | Spike loss 1.2846 | Weight loss 0.0603 | Mean activity 0.5546
DMS Iter  315 | Accuracy 0.8686 | Perf loss 0.0498 | Spike loss 1.2558 | Weight loss 0.0604 | Mean activity 0.5455
DMS Iter  320 | Accuracy 0.8760 | Perf loss 0.0485 | Spike loss 1.2669 | Weight loss 0.0610 | Mean activity 0.5511
DMS Iter  325 | Accuracy 0.8746 | Perf loss 0.0500 | Spike loss 1.2692 | Weight loss 0.0613 | Mean activity 0.5438
DMS Iter  330 | Accuracy 0.8809 | Perf loss 0.0441 | Spike loss 1.2730 | Weight loss 0.0615 | Mean activity 0.5410
DMS Iter  335 | Accuracy 0.8809 | Perf loss 0.0454 | Spike loss 1.2474 | Weight loss 0.0619 | Mean activity 0.5316
DMS Iter  340 | Accuracy 0.8803 | Perf loss 0.0442 | Spike loss 1.2417 | Weight loss 0.0623 | Mean activity 0.5207
DMS Iter  345 | Accuracy 0.8844 | Perf loss 0.0444 | Spike loss 1.2522 | Weight loss 0.0626 | Mean activity 0.5163
DMS Iter  350 | Accuracy 0.8924 | Perf loss 0.0418 | Spike loss 1.2379 | Weight loss 0.0631 | Mean activity 0.5123
DMS Iter  355 | Accuracy 0.8795 | Perf loss 0.0457 | Spike loss 1.1955 | Weight loss 0.0632 | Mean activity 0.5204
DMS Iter  360 | Accuracy 0.8844 | Perf loss 0.0438 | Spike loss 1.2291 | Weight loss 0.0637 | Mean activity 0.5052
DMS Iter  365 | Accuracy 0.8867 | Perf loss 0.0446 | Spike loss 1.2282 | Weight loss 0.0642 | Mean activity 0.5023
DMS Iter  370 | Accuracy 0.8916 | Perf loss 0.0419 | Spike loss 1.2145 | Weight loss 0.0645 | Mean activity 0.4940
DMS Iter  375 | Accuracy 0.8951 | Perf loss 0.0407 | Spike loss 1.2218 | Weight loss 0.0651 | Mean activity 0.4938
DMS Iter  380 | Accuracy 0.8928 | Perf loss 0.0445 | Spike loss 1.2002 | Weight loss 0.0654 | Mean activity 0.4889
DMS Iter  385 | Accuracy 0.8953 | Perf loss 0.0413 | Spike loss 1.2121 | Weight loss 0.0656 | Mean activity 0.4712
DMS Iter  390 | Accuracy 0.8969 | Perf loss 0.0414 | Spike loss 1.2223 | Weight loss 0.0663 | Mean activity 0.4747
DMS Iter  395 | Accuracy 0.8936 | Perf loss 0.0415 | Spike loss 1.1969 | Weight loss 0.0664 | Mean activity 0.4663
DMS Iter  400 | Accuracy 0.8949 | Perf loss 0.0417 | Spike loss 1.1999 | Weight loss 0.0667 | Mean activity 0.4605
DMS Iter  405 | Accuracy 0.8977 | Perf loss 0.0417 | Spike loss 1.2007 | Weight loss 0.0666 | Mean activity 0.4563
DMS Iter  410 | Accuracy 0.8984 | Perf loss 0.0400 | Spike loss 1.1890 | Weight loss 0.0669 | Mean activity 0.4540
DMS Iter  415 | Accuracy 0.8967 | Perf loss 0.0408 | Spike loss 1.1682 | Weight loss 0.0672 | Mean activity 0.4449
DMS Iter  420 | Accuracy 0.8969 | Perf loss 0.0408 | Spike loss 1.1809 | Weight loss 0.0681 | Mean activity 0.4277
DMS Iter  425 | Accuracy 0.8932 | Perf loss 0.0405 | Spike loss 1.1743 | Weight loss 0.0683 | Mean activity 0.4309
DMS Iter  430 | Accuracy 0.8910 | Perf loss 0.0416 | Spike loss 1.1341 | Weight loss 0.0684 | Mean activity 0.4317
DMS Iter  435 | Accuracy 0.9074 | Perf loss 0.0386 | Spike loss 1.1491 | Weight loss 0.0686 | Mean activity 0.4341
DMS Iter  440 | Accuracy 0.8957 | Perf loss 0.0398 | Spike loss 1.1909 | Weight loss 0.0693 | Mean activity 0.4319
DMS Iter  445 | Accuracy 0.8938 | Perf loss 0.0407 | Spike loss 1.1691 | Weight loss 0.0694 | Mean activity 0.4270
DMS Iter  450 | Accuracy 0.9043 | Perf loss 0.0377 | Spike loss 1.1948 | Weight loss 0.0698 | Mean activity 0.4231
DMS Iter  455 | Accuracy 0.8969 | Perf loss 0.0411 | Spike loss 1.1601 | Weight loss 0.0700 | Mean activity 0.4285
DMS Iter  460 | Accuracy 0.9043 | Perf loss 0.0369 | Spike loss 1.1469 | Weight loss 0.0705 | Mean activity 0.4100
DMS Iter  465 | Accuracy 0.9037 | Perf loss 0.0378 | Spike loss 1.1253 | Weight loss 0.0711 | Mean activity 0.4051
DMS Iter  470 | Accuracy 0.9025 | Perf loss 0.0377 | Spike loss 1.1440 | Weight loss 0.0718 | Mean activity 0.4085
DMS Iter  475 | Accuracy 0.9043 | Perf loss 0.0376 | Spike loss 1.1172 | Weight loss 0.0720 | Mean activity 0.4043
DMS Iter  480 | Accuracy 0.9043 | Perf loss 0.0368 | Spike loss 1.1174 | Weight loss 0.0725 | Mean activity 0.3943
DMS Iter  485 | Accuracy 0.9133 | Perf loss 0.0339 | Spike loss 1.1094 | Weight loss 0.0729 | Mean activity 0.4056
DMS Iter  490 | Accuracy 0.9012 | Perf loss 0.0386 | Spike loss 1.1034 | Weight loss 0.0733 | Mean activity 0.3849
DMS Iter  495 | Accuracy 0.9037 | Perf loss 0.0377 | Spike loss 1.1030 | Weight loss 0.0735 | Mean activity 0.3882
DMS Iter  500 | Accuracy 0.9082 | Perf loss 0.0361 | Spike loss 1.0884 | Weight loss 0.0740 | Mean activity 0.3877
DMS Iter  505 | Accuracy 0.9098 | Perf loss 0.0352 | Spike loss 1.0988 | Weight loss 0.0743 | Mean activity 0.3768
DMS Iter  510 | Accuracy 0.9088 | Perf loss 0.0348 | Spike loss 1.0985 | Weight loss 0.0744 | Mean activity 0.3860
DMS Iter  515 | Accuracy 0.9053 | Perf loss 0.0370 | Spike loss 1.0939 | Weight loss 0.0746 | Mean activity 0.3713
DMS Iter  520 | Accuracy 0.9172 | Perf loss 0.0343 | Spike loss 1.1245 | Weight loss 0.0750 | Mean activity 0.3869
DMS Iter  525 | Accuracy 0.9039 | Perf loss 0.0362 | Spike loss 1.1007 | Weight loss 0.0754 | Mean activity 0.3688
DMS Iter  530 | Accuracy 0.9111 | Perf loss 0.0355 | Spike loss 1.0753 | Weight loss 0.0756 | Mean activity 0.3803
DMS Iter  535 | Accuracy 0.9064 | Perf loss 0.0361 | Spike loss 1.1138 | Weight loss 0.0761 | Mean activity 0.3709
DMS Iter  540 | Accuracy 0.9160 | Perf loss 0.0343 | Spike loss 1.1043 | Weight loss 0.0764 | Mean activity 0.3653
DMS Iter  545 | Accuracy 0.9195 | Perf loss 0.0323 | Spike loss 1.1468 | Weight loss 0.0772 | Mean activity 0.3768
DMS Iter  550 | Accuracy 0.9115 | Perf loss 0.0336 | Spike loss 1.1138 | Weight loss 0.0775 | Mean activity 0.3667
DMS Iter  555 | Accuracy 0.9125 | Perf loss 0.0343 | Spike loss 1.0900 | Weight loss 0.0775 | Mean activity 0.3603
DMS Iter  560 | Accuracy 0.9193 | Perf loss 0.0323 | Spike loss 1.0804 | Weight loss 0.0775 | Mean activity 0.3686
DMS Iter  565 | Accuracy 0.9209 | Perf loss 0.0317 | Spike loss 1.0787 | Weight loss 0.0778 | Mean activity 0.3531
DMS Iter  570 | Accuracy 0.9199 | Perf loss 0.0322 | Spike loss 1.0756 | Weight loss 0.0781 | Mean activity 0.3547
DMS Iter  575 | Accuracy 0.9135 | Perf loss 0.0340 | Spike loss 1.0826 | Weight loss 0.0782 | Mean activity 0.3441
DMS Iter  580 | Accuracy 0.9203 | Perf loss 0.0333 | Spike loss 1.0866 | Weight loss 0.0788 | Mean activity 0.3429
DMS Iter  585 | Accuracy 0.9219 | Perf loss 0.0335 | Spike loss 1.1002 | Weight loss 0.0795 | Mean activity 0.3590
DMS Iter  590 | Accuracy 0.9244 | Perf loss 0.0302 | Spike loss 1.0977 | Weight loss 0.0799 | Mean activity 0.3601
DMS Iter  595 | Accuracy 0.9254 | Perf loss 0.0317 | Spike loss 1.0713 | Weight loss 0.0804 | Mean activity 0.3472
DMS Iter  600 | Accuracy 0.9271 | Perf loss 0.0307 | Spike loss 1.0641 | Weight loss 0.0804 | Mean activity 0.3495
DMS Iter  605 | Accuracy 0.9217 | Perf loss 0.0315 | Spike loss 1.0845 | Weight loss 0.0808 | Mean activity 0.3475
DMS Iter  610 | Accuracy 0.9273 | Perf loss 0.0308 | Spike loss 1.0668 | Weight loss 0.0809 | Mean activity 0.3464
DMS Iter  615 | Accuracy 0.9299 | Perf loss 0.0301 | Spike loss 1.0581 | Weight loss 0.0810 | Mean activity 0.3463
DMS Iter  620 | Accuracy 0.9311 | Perf loss 0.0292 | Spike loss 1.0662 | Weight loss 0.0813 | Mean activity 0.3406
DMS Iter  625 | Accuracy 0.9271 | Perf loss 0.0301 | Spike loss 1.0467 | Weight loss 0.0815 | Mean activity 0.3372
DMS Iter  630 | Accuracy 0.9264 | Perf loss 0.0307 | Spike loss 1.0596 | Weight loss 0.0816 | Mean activity 0.3505
DMS Iter  635 | Accuracy 0.9287 | Perf loss 0.0316 | Spike loss 1.0671 | Weight loss 0.0818 | Mean activity 0.3264
DMS Iter  640 | Accuracy 0.9295 | Perf loss 0.0289 | Spike loss 1.0595 | Weight loss 0.0822 | Mean activity 0.3410
DMS Iter  645 | Accuracy 0.9375 | Perf loss 0.0290 | Spike loss 1.0762 | Weight loss 0.0826 | Mean activity 0.3229
DMS Iter  650 | Accuracy 0.9303 | Perf loss 0.0300 | Spike loss 1.0576 | Weight loss 0.0822 | Mean activity 0.3397
DMS Iter  655 | Accuracy 0.9340 | Perf loss 0.0278 | Spike loss 1.0979 | Weight loss 0.0827 | Mean activity 0.3331
DMS Iter  660 | Accuracy 0.9328 | Perf loss 0.0274 | Spike loss 1.0629 | Weight loss 0.0830 | Mean activity 0.3175
DMS Iter  665 | Accuracy 0.9381 | Perf loss 0.0261 | Spike loss 1.0790 | Weight loss 0.0833 | Mean activity 0.3261
DMS Iter  670 | Accuracy 0.9350 | Perf loss 0.0271 | Spike loss 1.0582 | Weight loss 0.0834 | Mean activity 0.3257
DMS Iter  675 | Accuracy 0.9350 | Perf loss 0.0263 | Spike loss 1.0180 | Weight loss 0.0833 | Mean activity 0.3198
DMS Iter  680 | Accuracy 0.9412 | Perf loss 0.0250 | Spike loss 1.0213 | Weight loss 0.0836 | Mean activity 0.3153
DMS Iter  685 | Accuracy 0.9391 | Perf loss 0.0272 | Spike loss 1.0157 | Weight loss 0.0838 | Mean activity 0.3290
DMS Iter  690 | Accuracy 0.9355 | Perf loss 0.0280 | Spike loss 1.0102 | Weight loss 0.0841 | Mean activity 0.3112
DMS Iter  695 | Accuracy 0.9357 | Perf loss 0.0272 | Spike loss 1.0224 | Weight loss 0.0847 | Mean activity 0.3169
DMS Iter  700 | Accuracy 0.9373 | Perf loss 0.0267 | Spike loss 1.0023 | Weight loss 0.0850 | Mean activity 0.3212
DMS Iter  705 | Accuracy 0.9395 | Perf loss 0.0256 | Spike loss 1.0093 | Weight loss 0.0854 | Mean activity 0.3088
DMS Iter  710 | Accuracy 0.9389 | Perf loss 0.0270 | Spike loss 0.9992 | Weight loss 0.0852 | Mean activity 0.3150
DMS Iter  715 | Accuracy 0.9396 | Perf loss 0.0248 | Spike loss 1.0078 | Weight loss 0.0856 | Mean activity 0.3174
DMS Iter  720 | Accuracy 0.9404 | Perf loss 0.0256 | Spike loss 1.0017 | Weight loss 0.0862 | Mean activity 0.3120
DMS Iter  725 | Accuracy 0.9459 | Perf loss 0.0250 | Spike loss 1.0026 | Weight loss 0.0867 | Mean activity 0.3089
DMS Iter  730 | Accuracy 0.9354 | Perf loss 0.0262 | Spike loss 1.0120 | Weight loss 0.0868 | Mean activity 0.3107
DMS Iter  735 | Accuracy 0.9387 | Perf loss 0.0261 | Spike loss 0.9864 | Weight loss 0.0867 | Mean activity 0.2896
DMS Iter  740 | Accuracy 0.9406 | Perf loss 0.0270 | Spike loss 1.0056 | Weight loss 0.0873 | Mean activity 0.3082
DMS Iter  745 | Accuracy 0.9443 | Perf loss 0.0236 | Spike loss 0.9958 | Weight loss 0.0875 | Mean activity 0.3037
DMS Iter  750 | Accuracy 0.9434 | Perf loss 0.0238 | Spike loss 1.0074 | Weight loss 0.0875 | Mean activity 0.2983
DMS Iter  755 | Accuracy 0.9479 | Perf loss 0.0227 | Spike loss 0.9761 | Weight loss 0.0874 | Mean activity 0.2986
DMS Iter  760 | Accuracy 0.9424 | Perf loss 0.0240 | Spike loss 0.9849 | Weight loss 0.0879 | Mean activity 0.3040
DMS Iter  765 | Accuracy 0.9471 | Perf loss 0.0233 | Spike loss 0.9560 | Weight loss 0.0883 | Mean activity 0.2987
DMS Iter  770 | Accuracy 0.9453 | Perf loss 0.0247 | Spike loss 0.9739 | Weight loss 0.0887 | Mean activity 0.2964
DMS Iter  775 | Accuracy 0.9445 | Perf loss 0.0240 | Spike loss 1.0132 | Weight loss 0.0887 | Mean activity 0.3047
DMS Iter  780 | Accuracy 0.9447 | Perf loss 0.0230 | Spike loss 1.0303 | Weight loss 0.0893 | Mean activity 0.3056
DMS Iter  785 | Accuracy 0.9451 | Perf loss 0.0232 | Spike loss 1.0083 | Weight loss 0.0894 | Mean activity 0.2938
DMS Iter  790 | Accuracy 0.9514 | Perf loss 0.0232 | Spike loss 0.9913 | Weight loss 0.0896 | Mean activity 0.2990
DMS Iter  795 | Accuracy 0.9465 | Perf loss 0.0242 | Spike loss 1.0077 | Weight loss 0.0900 | Mean activity 0.2884
DMS Iter  800 | Accuracy 0.9465 | Perf loss 0.0230 | Spike loss 0.9780 | Weight loss 0.0897 | Mean activity 0.2900
DMS Iter  805 | Accuracy 0.9422 | Perf loss 0.0254 | Spike loss 0.9774 | Weight loss 0.0902 | Mean activity 0.2843
DMS Iter  810 | Accuracy 0.9461 | Perf loss 0.0255 | Spike loss 0.9957 | Weight loss 0.0903 | Mean activity 0.2958
DMS Iter  815 | Accuracy 0.9488 | Perf loss 0.0239 | Spike loss 0.9833 | Weight loss 0.0907 | Mean activity 0.2843
DMS Iter  820 | Accuracy 0.9557 | Perf loss 0.0214 | Spike loss 1.0125 | Weight loss 0.0907 | Mean activity 0.2788
DMS Iter  825 | Accuracy 0.9504 | Perf loss 0.0232 | Spike loss 0.9782 | Weight loss 0.0907 | Mean activity 0.2872
DMS Iter  830 | Accuracy 0.9484 | Perf loss 0.0241 | Spike loss 1.0000 | Weight loss 0.0909 | Mean activity 0.2910
DMS Iter  835 | Accuracy 0.9479 | Perf loss 0.0232 | Spike loss 1.0095 | Weight loss 0.0911 | Mean activity 0.2851
DMS Iter  840 | Accuracy 0.9563 | Perf loss 0.0207 | Spike loss 1.0116 | Weight loss 0.0911 | Mean activity 0.2792
DMS Iter  845 | Accuracy 0.9521 | Perf loss 0.0226 | Spike loss 0.9752 | Weight loss 0.0912 | Mean activity 0.2781
DMS Iter  850 | Accuracy 0.9367 | Perf loss 0.0310 | Spike loss 0.9490 | Weight loss 0.0914 | Mean activity 0.2766
DMS Iter  855 | Accuracy 0.9434 | Perf loss 0.0261 | Spike loss 1.0368 | Weight loss 0.0929 | Mean activity 0.2730
DMS Iter  860 | Accuracy 0.9529 | Perf loss 0.0222 | Spike loss 1.0724 | Weight loss 0.0933 | Mean activity 0.2844
DMS Iter  865 | Accuracy 0.9504 | Perf loss 0.0234 | Spike loss 1.0631 | Weight loss 0.0938 | Mean activity 0.2806
DMS Iter  870 | Accuracy 0.9473 | Perf loss 0.0234 | Spike loss 1.0414 | Weight loss 0.0940 | Mean activity 0.2765
DMS Iter  875 | Accuracy 0.9490 | Perf loss 0.0230 | Spike loss 1.0663 | Weight loss 0.0946 | Mean activity 0.2675
DMS Iter  880 | Accuracy 0.9527 | Perf loss 0.0210 | Spike loss 1.0612 | Weight loss 0.0950 | Mean activity 0.2682
DMS Iter  885 | Accuracy 0.9563 | Perf loss 0.0204 | Spike loss 1.0489 | Weight loss 0.0951 | Mean activity 0.2637
DMS Iter  890 | Accuracy 0.9564 | Perf loss 0.0208 | Spike loss 1.0035 | Weight loss 0.0946 | Mean activity 0.2539
DMS Iter  895 | Accuracy 0.9547 | Perf loss 0.0207 | Spike loss 1.0087 | Weight loss 0.0948 | Mean activity 0.2553
DMS Iter  900 | Accuracy 0.9477 | Perf loss 0.0230 | Spike loss 0.9910 | Weight loss 0.0949 | Mean activity 0.2516
DMS Iter  905 | Accuracy 0.9557 | Perf loss 0.0221 | Spike loss 0.9653 | Weight loss 0.0950 | Mean activity 0.2548
DMS Iter  910 | Accuracy 0.9541 | Perf loss 0.0216 | Spike loss 0.9534 | Weight loss 0.0953 | Mean activity 0.2559
DMS Iter  915 | Accuracy 0.9557 | Perf loss 0.0194 | Spike loss 0.9345 | Weight loss 0.0950 | Mean activity 0.2515
DMS Iter  920 | Accuracy 0.9486 | Perf loss 0.0233 | Spike loss 0.9277 | Weight loss 0.0951 | Mean activity 0.2611
DMS Iter  925 | Accuracy 0.9553 | Perf loss 0.0231 | Spike loss 0.9238 | Weight loss 0.0951 | Mean activity 0.2570
DMS Iter  930 | Accuracy 0.9574 | Perf loss 0.0205 | Spike loss 0.9232 | Weight loss 0.0952 | Mean activity 0.2584
DMS Iter  935 | Accuracy 0.9545 | Perf loss 0.0219 | Spike loss 0.9053 | Weight loss 0.0956 | Mean activity 0.2516
DMS Iter  940 | Accuracy 0.9518 | Perf loss 0.0212 | Spike loss 0.9380 | Weight loss 0.0963 | Mean activity 0.2494
DMS Iter  945 | Accuracy 0.9557 | Perf loss 0.0200 | Spike loss 0.9615 | Weight loss 0.0968 | Mean activity 0.2467
DMS Iter  950 | Accuracy 0.9488 | Perf loss 0.0231 | Spike loss 0.9416 | Weight loss 0.0972 | Mean activity 0.2489
DMS Iter  955 | Accuracy 0.9553 | Perf loss 0.0201 | Spike loss 0.9724 | Weight loss 0.0975 | Mean activity 0.2519
DMS Iter  960 | Accuracy 0.9572 | Perf loss 0.0198 | Spike loss 0.9679 | Weight loss 0.0974 | Mean activity 0.2542
DMS Iter  965 | Accuracy 0.9578 | Perf loss 0.0188 | Spike loss 0.9389 | Weight loss 0.0972 | Mean activity 0.2496
DMS Iter  970 | Accuracy 0.9563 | Perf loss 0.0207 | Spike loss 0.9153 | Weight loss 0.0973 | Mean activity 0.2544
DMS Iter  975 | Accuracy 0.9596 | Perf loss 0.0205 | Spike loss 0.9059 | Weight loss 0.0972 | Mean activity 0.2454
DMS Iter  980 | Accuracy 0.9549 | Perf loss 0.0203 | Spike loss 0.9092 | Weight loss 0.0971 | Mean activity 0.2442
DMS Iter  985 | Accuracy 0.9523 | Perf loss 0.0236 | Spike loss 0.9461 | Weight loss 0.0975 | Mean activity 0.2440
DMS Iter  990 | Accuracy 0.9543 | Perf loss 0.0211 | Spike loss 0.9405 | Weight loss 0.0982 | Mean activity 0.2470
DMS Iter  995 | Accuracy 0.9605 | Perf loss 0.0198 | Spike loss 0.9788 | Weight loss 0.0992 | Mean activity 0.2469
DMS Iter 1000 | Accuracy 0.9555 | Perf loss 0.0207 | Spike loss 0.9792 | Weight loss 0.1000 | Mean activity 0.2461
DMS Iter 1005 | Accuracy 0.9541 | Perf loss 0.0207 | Spike loss 0.9978 | Weight loss 0.1002 | Mean activity 0.2378
DMS Iter 1010 | Accuracy 0.9580 | Perf loss 0.0211 | Spike loss 0.9724 | Weight loss 0.1003 | Mean activity 0.2392
DMS Iter 1015 | Accuracy 0.9502 | Perf loss 0.0214 | Spike loss 0.9557 | Weight loss 0.1001 | Mean activity 0.2403
DMS Iter 1020 | Accuracy 0.9551 | Perf loss 0.0217 | Spike loss 0.9422 | Weight loss 0.0999 | Mean activity 0.2300
DMS Iter 1025 | Accuracy 0.9590 | Perf loss 0.0203 | Spike loss 0.9418 | Weight loss 0.1002 | Mean activity 0.2368
DMS Iter 1030 | Accuracy 0.9574 | Perf loss 0.0206 | Spike loss 0.9781 | Weight loss 0.1001 | Mean activity 0.2349
DMS Iter 1035 | Accuracy 0.9627 | Perf loss 0.0194 | Spike loss 0.9598 | Weight loss 0.0998 | Mean activity 0.2411
DMS Iter 1040 | Accuracy 0.9592 | Perf loss 0.0208 | Spike loss 0.9538 | Weight loss 0.0998 | Mean activity 0.2443
DMS Iter 1045 | Accuracy 0.9578 | Perf loss 0.0201 | Spike loss 0.9230 | Weight loss 0.0996 | Mean activity 0.2371
DMS Iter 1050 | Accuracy 0.9525 | Perf loss 0.0219 | Spike loss 0.9439 | Weight loss 0.1003 | Mean activity 0.2424
DMS Iter 1055 | Accuracy 0.9578 | Perf loss 0.0204 | Spike loss 1.0266 | Weight loss 0.1015 | Mean activity 0.2359
DMS Iter 1060 | Accuracy 0.9410 | Perf loss 0.0260 | Spike loss 1.0010 | Weight loss 0.1021 | Mean activity 0.2344
DMS Iter 1065 | Accuracy 0.9602 | Perf loss 0.0201 | Spike loss 1.0120 | Weight loss 0.1031 | Mean activity 0.2487
DMS Iter 1070 | Accuracy 0.9568 | Perf loss 0.0196 | Spike loss 1.0056 | Weight loss 0.1035 | Mean activity 0.2442
DMS Iter 1075 | Accuracy 0.9563 | Perf loss 0.0197 | Spike loss 0.9897 | Weight loss 0.1033 | Mean activity 0.2477
DMS Iter 1080 | Accuracy 0.9588 | Perf loss 0.0201 | Spike loss 0.9577 | Weight loss 0.1032 | Mean activity 0.2462
DMS Iter 1085 | Accuracy 0.9516 | Perf loss 0.0208 | Spike loss 0.9455 | Weight loss 0.1034 | Mean activity 0.2504
DMS Iter 1090 | Accuracy 0.9605 | Perf loss 0.0182 | Spike loss 0.9264 | Weight loss 0.1029 | Mean activity 0.2421
DMS Iter 1095 | Accuracy 0.9641 | Perf loss 0.0180 | Spike loss 0.9008 | Weight loss 0.1024 | Mean activity 0.2502
DMS Iter 1100 | Accuracy 0.9576 | Perf loss 0.0197 | Spike loss 0.8982 | Weight loss 0.1028 | Mean activity 0.2418
DMS Iter 1105 | Accuracy 0.9551 | Perf loss 0.0217 | Spike loss 0.9124 | Weight loss 0.1040 | Mean activity 0.2322
DMS Iter 1110 | Accuracy 0.9627 | Perf loss 0.0177 | Spike loss 0.9525 | Weight loss 0.1051 | Mean activity 0.2316
DMS Iter 1115 | Accuracy 0.9596 | Perf loss 0.0185 | Spike loss 0.9270 | Weight loss 0.1055 | Mean activity 0.2248
DMS Iter 1120 | Accuracy 0.9602 | Perf loss 0.0183 | Spike loss 0.9226 | Weight loss 0.1058 | Mean activity 0.2201
DMS Iter 1125 | Accuracy 0.9607 | Perf loss 0.0206 | Spike loss 0.9030 | Weight loss 0.1056 | Mean activity 0.2226
DMS Iter 1130 | Accuracy 0.9588 | Perf loss 0.0176 | Spike loss 0.9071 | Weight loss 0.1052 | Mean activity 0.2286
DMS Iter 1135 | Accuracy 0.9594 | Perf loss 0.0185 | Spike loss 0.9155 | Weight loss 0.1056 | Mean activity 0.2299
DMS Iter 1140 | Accuracy 0.9609 | Perf loss 0.0191 | Spike loss 0.9045 | Weight loss 0.1057 | Mean activity 0.2285
DMS Iter 1145 | Accuracy 0.9643 | Perf loss 0.0176 | Spike loss 0.8940 | Weight loss 0.1052 | Mean activity 0.2287
DMS Iter 1150 | Accuracy 0.9543 | Perf loss 0.0206 | Spike loss 0.8978 | Weight loss 0.1052 | Mean activity 0.2285
DMS Iter 1155 | Accuracy 0.9594 | Perf loss 0.0186 | Spike loss 0.9168 | Weight loss 0.1056 | Mean activity 0.2298
DMS Iter 1160 | Accuracy 0.9566 | Perf loss 0.0184 | Spike loss 0.9188 | Weight loss 0.1057 | Mean activity 0.2252
DMS Iter 1165 | Accuracy 0.9641 | Perf loss 0.0170 | Spike loss 0.9011 | Weight loss 0.1057 | Mean activity 0.2345
DMS Iter 1170 | Accuracy 0.9596 | Perf loss 0.0192 | Spike loss 0.8788 | Weight loss 0.1055 | Mean activity 0.2340
DMS Iter 1175 | Accuracy 0.9568 | Perf loss 0.0186 | Spike loss 0.8635 | Weight loss 0.1054 | Mean activity 0.2299
DMS Iter 1180 | Accuracy 0.9611 | Perf loss 0.0177 | Spike loss 0.8675 | Weight loss 0.1056 | Mean activity 0.2248
DMS Iter 1185 | Accuracy 0.9625 | Perf loss 0.0167 | Spike loss 0.8573 | Weight loss 0.1056 | Mean activity 0.2284
DMS Iter 1190 | Accuracy 0.9563 | Perf loss 0.0189 | Spike loss 0.8538 | Weight loss 0.1055 | Mean activity 0.2284
DMS Iter 1195 | Accuracy 0.9641 | Perf loss 0.0178 | Spike loss 0.8566 | Weight loss 0.1054 | Mean activity 0.2249
DMS Iter 1200 | Accuracy 0.9580 | Perf loss 0.0188 | Spike loss 0.8522 | Weight loss 0.1053 | Mean activity 0.2254
DMS Iter 1205 | Accuracy 0.9604 | Perf loss 0.0184 | Spike loss 0.8308 | Weight loss 0.1052 | Mean activity 0.2275
DMS Iter 1210 | Accuracy 0.9629 | Perf loss 0.0186 | Spike loss 0.8230 | Weight loss 0.1053 | Mean activity 0.2253
DMS Iter 1215 | Accuracy 0.9633 | Perf loss 0.0176 | Spike loss 0.8264 | Weight loss 0.1052 | Mean activity 0.2207
DMS Iter 1220 | Accuracy 0.9584 | Perf loss 0.0182 | Spike loss 0.8192 | Weight loss 0.1052 | Mean activity 0.2272
DMS Iter 1225 | Accuracy 0.9641 | Perf loss 0.0170 | Spike loss 0.8148 | Weight loss 0.1053 | Mean activity 0.2230
DMS Iter 1230 | Accuracy 0.9621 | Perf loss 0.0179 | Spike loss 0.8174 | Weight loss 0.1053 | Mean activity 0.2225
DMS Iter 1235 | Accuracy 0.9588 | Perf loss 0.0189 | Spike loss 0.8043 | Weight loss 0.1053 | Mean activity 0.2274
DMS Iter 1240 | Accuracy 0.9631 | Perf loss 0.0177 | Spike loss 0.8178 | Weight loss 0.1057 | Mean activity 0.2176
DMS Iter 1245 | Accuracy 0.9637 | Perf loss 0.0166 | Spike loss 0.8162 | Weight loss 0.1059 | Mean activity 0.2195
DMS Iter 1250 | Accuracy 0.9652 | Perf loss 0.0165 | Spike loss 0.8167 | Weight loss 0.1062 | Mean activity 0.2236
DMS Iter 1255 | Accuracy 0.9590 | Perf loss 0.0190 | Spike loss 0.8093 | Weight loss 0.1065 | Mean activity 0.2233
DMS Iter 1260 | Accuracy 0.9586 | Perf loss 0.0203 | Spike loss 0.8348 | Weight loss 0.1070 | Mean activity 0.2247
DMS Iter 1265 | Accuracy 0.9621 | Perf loss 0.0187 | Spike loss 0.8456 | Weight loss 0.1071 | Mean activity 0.2237
DMS Iter 1270 | Accuracy 0.9582 | Perf loss 0.0199 | Spike loss 0.8415 | Weight loss 0.1074 | Mean activity 0.2230
DMS Iter 1275 | Accuracy 0.9602 | Perf loss 0.0180 | Spike loss 0.8544 | Weight loss 0.1078 | Mean activity 0.2218
DMS Iter 1280 | Accuracy 0.9646 | Perf loss 0.0171 | Spike loss 0.8512 | Weight loss 0.1082 | Mean activity 0.2227
DMS Iter 1285 | Accuracy 0.9566 | Perf loss 0.0218 | Spike loss 0.8360 | Weight loss 0.1081 | Mean activity 0.2254
DMS Iter 1290 | Accuracy 0.9613 | Perf loss 0.0180 | Spike loss 0.8803 | Weight loss 0.1081 | Mean activity 0.2248
DMS Iter 1295 | Accuracy 0.9654 | Perf loss 0.0172 | Spike loss 0.8958 | Weight loss 0.1080 | Mean activity 0.2216
DMS Iter 1300 | Accuracy 0.9609 | Perf loss 0.0178 | Spike loss 0.8779 | Weight loss 0.1077 | Mean activity 0.2268
DMS Iter 1305 | Accuracy 0.9631 | Perf loss 0.0170 | Spike loss 0.8719 | Weight loss 0.1079 | Mean activity 0.2253
DMS Iter 1310 | Accuracy 0.9631 | Perf loss 0.0166 | Spike loss 0.8505 | Weight loss 0.1080 | Mean activity 0.2237
DMS Iter 1315 | Accuracy 0.9652 | Perf loss 0.0168 | Spike loss 0.8249 | Weight loss 0.1082 | Mean activity 0.2165
DMS Iter 1320 | Accuracy 0.9637 | Perf loss 0.0168 | Spike loss 0.8397 | Weight loss 0.1081 | Mean activity 0.2241
DMS Iter 1325 | Accuracy 0.9645 | Perf loss 0.0164 | Spike loss 0.8215 | Weight loss 0.1082 | Mean activity 0.2139
DMS Iter 1330 | Accuracy 0.9619 | Perf loss 0.0181 | Spike loss 0.7980 | Weight loss 0.1082 | Mean activity 0.2095
DMS Iter 1335 | Accuracy 0.9648 | Perf loss 0.0157 | Spike loss 0.7928 | Weight loss 0.1080 | Mean activity 0.2122
DMS Iter 1340 | Accuracy 0.9600 | Perf loss 0.0188 | Spike loss 0.8036 | Weight loss 0.1082 | Mean activity 0.2132
DMS Iter 1345 | Accuracy 0.9596 | Perf loss 0.0176 | Spike loss 0.8062 | Weight loss 0.1082 | Mean activity 0.2136
DMS Iter 1350 | Accuracy 0.9588 | Perf loss 0.0217 | Spike loss 0.8128 | Weight loss 0.1081 | Mean activity 0.2039
DMS Iter 1355 | Accuracy 0.9605 | Perf loss 0.0230 | Spike loss 0.7970 | Weight loss 0.1081 | Mean activity 0.2139
DMS Iter 1360 | Accuracy 0.9605 | Perf loss 0.0243 | Spike loss 0.8114 | Weight loss 0.1088 | Mean activity 0.2005
DMS Iter 1365 | Accuracy 0.9475 | Perf loss 0.0305 | Spike loss 0.8264 | Weight loss 0.1094 | Mean activity 0.2037
DMS Iter 1370 | Accuracy 0.9498 | Perf loss 0.0268 | Spike loss 0.9131 | Weight loss 0.1122 | Mean activity 0.2222
DMS Iter 1375 | Accuracy 0.9627 | Perf loss 0.0213 | Spike loss 0.9920 | Weight loss 0.1148 | Mean activity 0.2216
DMS Iter 1380 | Accuracy 0.9596 | Perf loss 0.0233 | Spike loss 0.9783 | Weight loss 0.1151 | Mean activity 0.2213
DMS Iter 1385 | Accuracy 0.9600 | Perf loss 0.0208 | Spike loss 0.9487 | Weight loss 0.1151 | Mean activity 0.2169
DMS Iter 1390 | Accuracy 0.9598 | Perf loss 0.0205 | Spike loss 0.9231 | Weight loss 0.1150 | Mean activity 0.2160
DMS Iter 1395 | Accuracy 0.9627 | Perf loss 0.0188 | Spike loss 0.8971 | Weight loss 0.1146 | Mean activity 0.2105
DMS Iter 1400 | Accuracy 0.9645 | Perf loss 0.0171 | Spike loss 0.8679 | Weight loss 0.1142 | Mean activity 0.2143
DMS Iter 1405 | Accuracy 0.9613 | Perf loss 0.0194 | Spike loss 0.8436 | Weight loss 0.1140 | Mean activity 0.2101
DMS Iter 1410 | Accuracy 0.9596 | Perf loss 0.0201 | Spike loss 0.8148 | Weight loss 0.1135 | Mean activity 0.1999
DMS Iter 1415 | Accuracy 0.9576 | Perf loss 0.0204 | Spike loss 0.8096 | Weight loss 0.1127 | Mean activity 0.2089
DMS Iter 1420 | Accuracy 0.9631 | Perf loss 0.0182 | Spike loss 0.8169 | Weight loss 0.1127 | Mean activity 0.2145
DMS Iter 1425 | Accuracy 0.9645 | Perf loss 0.0180 | Spike loss 0.8101 | Weight loss 0.1126 | Mean activity 0.2188
DMS Iter 1430 | Accuracy 0.9635 | Perf loss 0.0187 | Spike loss 0.8028 | Weight loss 0.1127 | Mean activity 0.2143
DMS Iter 1435 | Accuracy 0.9596 | Perf loss 0.0191 | Spike loss 0.8156 | Weight loss 0.1135 | Mean activity 0.2054
DMS Iter 1440 | Accuracy 0.9648 | Perf loss 0.0187 | Spike loss 0.8341 | Weight loss 0.1143 | Mean activity 0.2148
DMS Iter 1445 | Accuracy 0.9689 | Perf loss 0.0192 | Spike loss 0.8380 | Weight loss 0.1146 | Mean activity 0.2115
DMS Iter 1450 | Accuracy 0.9600 | Perf loss 0.0202 | Spike loss 0.8435 | Weight loss 0.1150 | Mean activity 0.2156
DMS Iter 1455 | Accuracy 0.9578 | Perf loss 0.0209 | Spike loss 0.8924 | Weight loss 0.1161 | Mean activity 0.2215
DMS Iter 1460 | Accuracy 0.9623 | Perf loss 0.0182 | Spike loss 0.8875 | Weight loss 0.1166 | Mean activity 0.2158
DMS Iter 1465 | Accuracy 0.9580 | Perf loss 0.0208 | Spike loss 0.9091 | Weight loss 0.1172 | Mean activity 0.2109
DMS Iter 1470 | Accuracy 0.9588 | Perf loss 0.0179 | Spike loss 0.9209 | Weight loss 0.1175 | Mean activity 0.2048
DMS Iter 1475 | Accuracy 0.9678 | Perf loss 0.0167 | Spike loss 0.9268 | Weight loss 0.1177 | Mean activity 0.2073
DMS Iter 1480 | Accuracy 0.9641 | Perf loss 0.0176 | Spike loss 0.9199 | Weight loss 0.1178 | Mean activity 0.2083
DMS Iter 1485 | Accuracy 0.9639 | Perf loss 0.0173 | Spike loss 0.8908 | Weight loss 0.1178 | Mean activity 0.2164
DMS Iter 1490 | Accuracy 0.9578 | Perf loss 0.0196 | Spike loss 0.8575 | Weight loss 0.1176 | Mean activity 0.2109
DMS Iter 1495 | Accuracy 0.9639 | Perf loss 0.0165 | Spike loss 0.8525 | Weight loss 0.1177 | Mean activity 0.2117
DMS Iter 1500 | Accuracy 0.9676 | Perf loss 0.0158 | Spike loss 0.8359 | Weight loss 0.1171 | Mean activity 0.2040
DMS Iter 1505 | Accuracy 0.9613 | Perf loss 0.0182 | Spike loss 0.8243 | Weight loss 0.1170 | Mean activity 0.2112
DMS Iter 1510 | Accuracy 0.9592 | Perf loss 0.0174 | Spike loss 0.8195 | Weight loss 0.1173 | Mean activity 0.2075
DMS Iter 1515 | Accuracy 0.9639 | Perf loss 0.0171 | Spike loss 0.8180 | Weight loss 0.1177 | Mean activity 0.2046
DMS Iter 1520 | Accuracy 0.9666 | Perf loss 0.0169 | Spike loss 0.8242 | Weight loss 0.1178 | Mean activity 0.2081
DMS Iter 1525 | Accuracy 0.9609 | Perf loss 0.0172 | Spike loss 0.8321 | Weight loss 0.1184 | Mean activity 0.2012
DMS Iter 1530 | Accuracy 0.9617 | Perf loss 0.0176 | Spike loss 0.8266 | Weight loss 0.1186 | Mean activity 0.2057
DMS Iter 1535 | Accuracy 0.9668 | Perf loss 0.0162 | Spike loss 0.8740 | Weight loss 0.1194 | Mean activity 0.2095
DMS Iter 1540 | Accuracy 0.9607 | Perf loss 0.0216 | Spike loss 0.8984 | Weight loss 0.1201 | Mean activity 0.2094
DMS Iter 1545 | Accuracy 0.9602 | Perf loss 0.0186 | Spike loss 0.8961 | Weight loss 0.1209 | Mean activity 0.2056
DMS Iter 1550 | Accuracy 0.9600 | Perf loss 0.0254 | Spike loss 0.8728 | Weight loss 0.1216 | Mean activity 0.2052
DMS Iter 1555 | Accuracy 0.9598 | Perf loss 0.0212 | Spike loss 0.8902 | Weight loss 0.1228 | Mean activity 0.2036
DMS Iter 1560 | Accuracy 0.9582 | Perf loss 0.0221 | Spike loss 0.9120 | Weight loss 0.1241 | Mean activity 0.2131
DMS Iter 1565 | Accuracy 0.9535 | Perf loss 0.0230 | Spike loss 0.8988 | Weight loss 0.1242 | Mean activity 0.2163
DMS Iter 1570 | Accuracy 0.9563 | Perf loss 0.0234 | Spike loss 0.9593 | Weight loss 0.1249 | Mean activity 0.2230
DMS Iter 1575 | Accuracy 0.9551 | Perf loss 0.0220 | Spike loss 1.0544 | Weight loss 0.1264 | Mean activity 0.2237
DMS Iter 1580 | Accuracy 0.9486 | Perf loss 0.0342 | Spike loss 1.0935 | Weight loss 0.1277 | Mean activity 0.2217
DMS Iter 1585 | Accuracy 0.9621 | Perf loss 0.0195 | Spike loss 1.1112 | Weight loss 0.1280 | Mean activity 0.2241
DMS Iter 1590 | Accuracy 0.9615 | Perf loss 0.0198 | Spike loss 1.0739 | Weight loss 0.1275 | Mean activity 0.2263
DMS Iter 1595 | Accuracy 0.9623 | Perf loss 0.0200 | Spike loss 1.0368 | Weight loss 0.1270 | Mean activity 0.2160
DMS Iter 1600 | Accuracy 0.9563 | Perf loss 0.0193 | Spike loss 1.0115 | Weight loss 0.1268 | Mean activity 0.2078
DMS Iter 1605 | Accuracy 0.9631 | Perf loss 0.0181 | Spike loss 0.9856 | Weight loss 0.1264 | Mean activity 0.2050
DMS Iter 1610 | Accuracy 0.9633 | Perf loss 0.0179 | Spike loss 0.9625 | Weight loss 0.1259 | Mean activity 0.2071
DMS Iter 1615 | Accuracy 0.9633 | Perf loss 0.0175 | Spike loss 0.9268 | Weight loss 0.1253 | Mean activity 0.2140
DMS Iter 1620 | Accuracy 0.9588 | Perf loss 0.0214 | Spike loss 0.9385 | Weight loss 0.1259 | Mean activity 0.2098
DMS Iter 1625 | Accuracy 0.9676 | Perf loss 0.0171 | Spike loss 1.0057 | Weight loss 0.1272 | Mean activity 0.2155
DMS Iter 1630 | Accuracy 0.9580 | Perf loss 0.0209 | Spike loss 1.0043 | Weight loss 0.1276 | Mean activity 0.2070
DMS Iter 1635 | Accuracy 0.9615 | Perf loss 0.0177 | Spike loss 1.0109 | Weight loss 0.1278 | Mean activity 0.2061
DMS Iter 1640 | Accuracy 0.9613 | Perf loss 0.0197 | Spike loss 1.0107 | Weight loss 0.1283 | Mean activity 0.2072
DMS Iter 1645 | Accuracy 0.9680 | Perf loss 0.0160 | Spike loss 1.0006 | Weight loss 0.1282 | Mean activity 0.2114
DMS Iter 1650 | Accuracy 0.9627 | Perf loss 0.0167 | Spike loss 0.9525 | Weight loss 0.1277 | Mean activity 0.2022
DMS Iter 1655 | Accuracy 0.9602 | Perf loss 0.0190 | Spike loss 0.9282 | Weight loss 0.1274 | Mean activity 0.2034
DMS Iter 1660 | Accuracy 0.9660 | Perf loss 0.0161 | Spike loss 0.9054 | Weight loss 0.1271 | Mean activity 0.2124
DMS Iter 1665 | Accuracy 0.9680 | Perf loss 0.0150 | Spike loss 0.8919 | Weight loss 0.1267 | Mean activity 0.2075
DMS Iter 1670 | Accuracy 0.9701 | Perf loss 0.0154 | Spike loss 0.8714 | Weight loss 0.1264 | Mean activity 0.2108
DMS Iter 1675 | Accuracy 0.9650 | Perf loss 0.0182 | Spike loss 0.8894 | Weight loss 0.1261 | Mean activity 0.2144
DMS Iter 1680 | Accuracy 0.9682 | Perf loss 0.0172 | Spike loss 0.8823 | Weight loss 0.1261 | Mean activity 0.2129
DMS Iter 1685 | Accuracy 0.9670 | Perf loss 0.0164 | Spike loss 0.9009 | Weight loss 0.1269 | Mean activity 0.2084
DMS Iter 1690 | Accuracy 0.9664 | Perf loss 0.0156 | Spike loss 0.9136 | Weight loss 0.1277 | Mean activity 0.2111
DMS Iter 1695 | Accuracy 0.9609 | Perf loss 0.0198 | Spike loss 0.9154 | Weight loss 0.1278 | Mean activity 0.2100
DMS Iter 1700 | Accuracy 0.9666 | Perf loss 0.0149 | Spike loss 0.9216 | Weight loss 0.1275 | Mean activity 0.2079
DMS Iter 1705 | Accuracy 0.9674 | Perf loss 0.0154 | Spike loss 0.9027 | Weight loss 0.1271 | Mean activity 0.2043
DMS Iter 1710 | Accuracy 0.9639 | Perf loss 0.0181 | Spike loss 0.8879 | Weight loss 0.1270 | Mean activity 0.2094
DMS Iter 1715 | Accuracy 0.9625 | Perf loss 0.0167 | Spike loss 0.8706 | Weight loss 0.1265 | Mean activity 0.2025
DMS Iter 1720 | Accuracy 0.9629 | Perf loss 0.0181 | Spike loss 0.8676 | Weight loss 0.1265 | Mean activity 0.1984
DMS Iter 1725 | Accuracy 0.9652 | Perf loss 0.0159 | Spike loss 0.8568 | Weight loss 0.1265 | Mean activity 0.1971
DMS Iter 1730 | Accuracy 0.9686 | Perf loss 0.0148 | Spike loss 0.8430 | Weight loss 0.1263 | Mean activity 0.1966
DMS Iter 1735 | Accuracy 0.9646 | Perf loss 0.0195 | Spike loss 0.8329 | Weight loss 0.1260 | Mean activity 0.1966
DMS Iter 1740 | Accuracy 0.9662 | Perf loss 0.0163 | Spike loss 0.8172 | Weight loss 0.1259 | Mean activity 0.1943
DMS Iter 1745 | Accuracy 0.9639 | Perf loss 0.0163 | Spike loss 0.8191 | Weight loss 0.1260 | Mean activity 0.1986
DMS Iter 1750 | Accuracy 0.9688 | Perf loss 0.0151 | Spike loss 0.8169 | Weight loss 0.1259 | Mean activity 0.1961
DMS Iter 1755 | Accuracy 0.9703 | Perf loss 0.0144 | Spike loss 0.8091 | Weight loss 0.1258 | Mean activity 0.1986
DMS Iter 1760 | Accuracy 0.9592 | Perf loss 0.0193 | Spike loss 0.8076 | Weight loss 0.1257 | Mean activity 0.1952
DMS Iter 1765 | Accuracy 0.9645 | Perf loss 0.0172 | Spike loss 0.7946 | Weight loss 0.1256 | Mean activity 0.1965
DMS Iter 1770 | Accuracy 0.9625 | Perf loss 0.0171 | Spike loss 0.7859 | Weight loss 0.1256 | Mean activity 0.1962
DMS Iter 1775 | Accuracy 0.9639 | Perf loss 0.0183 | Spike loss 0.7740 | Weight loss 0.1258 | Mean activity 0.1944
DMS Iter 1780 | Accuracy 0.9662 | Perf loss 0.0156 | Spike loss 0.7814 | Weight loss 0.1262 | Mean activity 0.1977
DMS Iter 1785 | Accuracy 0.9625 | Perf loss 0.0162 | Spike loss 0.8024 | Weight loss 0.1267 | Mean activity 0.1944
DMS Iter 1790 | Accuracy 0.9719 | Perf loss 0.0138 | Spike loss 0.8086 | Weight loss 0.1273 | Mean activity 0.1952
DMS Iter 1795 | Accuracy 0.9672 | Perf loss 0.0151 | Spike loss 0.8010 | Weight loss 0.1276 | Mean activity 0.1906
DMS Iter 1800 | Accuracy 0.9680 | Perf loss 0.0148 | Spike loss 0.7924 | Weight loss 0.1277 | Mean activity 0.1936
DMS Iter 1805 | Accuracy 0.9699 | Perf loss 0.0137 | Spike loss 0.7918 | Weight loss 0.1275 | Mean activity 0.1901
DMS Iter 1810 | Accuracy 0.9672 | Perf loss 0.0152 | Spike loss 0.7841 | Weight loss 0.1272 | Mean activity 0.1907
DMS Iter 1815 | Accuracy 0.9684 | Perf loss 0.0147 | Spike loss 0.7764 | Weight loss 0.1266 | Mean activity 0.1949
DMS Iter 1820 | Accuracy 0.9641 | Perf loss 0.0170 | Spike loss 0.7545 | Weight loss 0.1262 | Mean activity 0.1955
DMS Iter 1825 | Accuracy 0.9654 | Perf loss 0.0175 | Spike loss 0.7483 | Weight loss 0.1261 | Mean activity 0.1876
DMS Iter 1830 | Accuracy 0.9680 | Perf loss 0.0169 | Spike loss 0.7479 | Weight loss 0.1263 | Mean activity 0.1868
DMS Iter 1835 | Accuracy 0.9631 | Perf loss 0.0177 | Spike loss 0.7709 | Weight loss 0.1277 | Mean activity 0.1898
DMS Iter 1840 | Accuracy 0.9662 | Perf loss 0.0155 | Spike loss 0.8514 | Weight loss 0.1294 | Mean activity 0.1925
DMS Iter 1845 | Accuracy 0.9658 | Perf loss 0.0191 | Spike loss 0.8877 | Weight loss 0.1302 | Mean activity 0.1952
DMS Iter 1850 | Accuracy 0.9572 | Perf loss 0.0198 | Spike loss 0.8889 | Weight loss 0.1305 | Mean activity 0.1948
DMS Iter 1855 | Accuracy 0.9645 | Perf loss 0.0170 | Spike loss 0.8962 | Weight loss 0.1304 | Mean activity 0.1962
DMS Iter 1860 | Accuracy 0.9641 | Perf loss 0.0163 | Spike loss 0.9061 | Weight loss 0.1308 | Mean activity 0.1955
DMS Iter 1865 | Accuracy 0.9652 | Perf loss 0.0161 | Spike loss 0.9028 | Weight loss 0.1311 | Mean activity 0.1890
DMS Iter 1870 | Accuracy 0.9613 | Perf loss 0.0167 | Spike loss 0.8960 | Weight loss 0.1311 | Mean activity 0.1936
DMS Iter 1875 | Accuracy 0.9631 | Perf loss 0.0168 | Spike loss 0.8865 | Weight loss 0.1312 | Mean activity 0.1906
DMS Iter 1880 | Accuracy 0.9688 | Perf loss 0.0154 | Spike loss 0.8781 | Weight loss 0.1314 | Mean activity 0.1909
DMS Iter 1885 | Accuracy 0.9648 | Perf loss 0.0166 | Spike loss 0.8425 | Weight loss 0.1312 | Mean activity 0.1904
DMS Iter 1890 | Accuracy 0.9715 | Perf loss 0.0149 | Spike loss 0.8410 | Weight loss 0.1314 | Mean activity 0.1846
DMS Iter 1895 | Accuracy 0.9643 | Perf loss 0.0153 | Spike loss 0.8335 | Weight loss 0.1312 | Mean activity 0.1834
DMS Iter 1900 | Accuracy 0.9684 | Perf loss 0.0146 | Spike loss 0.8169 | Weight loss 0.1310 | Mean activity 0.1786
DMS Iter 1905 | Accuracy 0.9646 | Perf loss 0.0166 | Spike loss 0.8116 | Weight loss 0.1310 | Mean activity 0.1794
DMS Iter 1910 | Accuracy 0.9715 | Perf loss 0.0149 | Spike loss 0.8409 | Weight loss 0.1313 | Mean activity 0.1780
DMS Iter 1915 | Accuracy 0.9611 | Perf loss 0.0183 | Spike loss 0.8462 | Weight loss 0.1313 | Mean activity 0.1881
DMS Iter 1920 | Accuracy 0.9627 | Perf loss 0.0215 | Spike loss 0.8177 | Weight loss 0.1311 | Mean activity 0.1832
DMS Iter 1925 | Accuracy 0.9631 | Perf loss 0.0203 | Spike loss 0.8071 | Weight loss 0.1312 | Mean activity 0.1819
DMS Iter 1930 | Accuracy 0.9697 | Perf loss 0.0135 | Spike loss 0.7942 | Weight loss 0.1309 | Mean activity 0.1781
DMS Iter 1935 | Accuracy 0.9674 | Perf loss 0.0156 | Spike loss 0.7923 | Weight loss 0.1307 | Mean activity 0.1771
DMS Iter 1940 | Accuracy 0.9699 | Perf loss 0.0130 | Spike loss 0.7848 | Weight loss 0.1304 | Mean activity 0.1755
DMS Iter 1945 | Accuracy 0.9660 | Perf loss 0.0151 | Spike loss 0.7687 | Weight loss 0.1304 | Mean activity 0.1756
DMS Iter 1950 | Accuracy 0.9717 | Perf loss 0.0134 | Spike loss 0.7760 | Weight loss 0.1305 | Mean activity 0.1797
DMS Iter 1955 | Accuracy 0.9658 | Perf loss 0.0149 | Spike loss 0.7787 | Weight loss 0.1305 | Mean activity 0.1841
DMS Iter 1960 | Accuracy 0.9670 | Perf loss 0.0184 | Spike loss 0.7772 | Weight loss 0.1306 | Mean activity 0.1826
DMS Iter 1965 | Accuracy 0.9641 | Perf loss 0.0193 | Spike loss 0.7668 | Weight loss 0.1308 | Mean activity 0.1853
DMS Iter 1970 | Accuracy 0.9609 | Perf loss 0.0163 | Spike loss 0.7810 | Weight loss 0.1319 | Mean activity 0.1779
DMS Iter 1975 | Accuracy 0.9707 | Perf loss 0.0163 | Spike loss 0.7959 | Weight loss 0.1327 | Mean activity 0.1697
DMS Iter 1980 | Accuracy 0.9623 | Perf loss 0.0163 | Spike loss 0.8059 | Weight loss 0.1326 | Mean activity 0.1691
DMS Iter 1985 | Accuracy 0.9680 | Perf loss 0.0154 | Spike loss 0.7976 | Weight loss 0.1324 | Mean activity 0.1717
DMS Iter 1990 | Accuracy 0.9697 | Perf loss 0.0140 | Spike loss 0.7889 | Weight loss 0.1322 | Mean activity 0.1747
DMS Iter 1995 | Accuracy 0.9635 | Perf loss 0.0159 | Spike loss 0.7953 | Weight loss 0.1324 | Mean activity 0.1737