{ "cells": [ { "cell_type": "markdown", "id": "fefaa3ad", "metadata": { "lines_to_next_cell": 0 }, "source": [ "# *(Masse, et al., 2019)*: RNN with STP for Working Memory \n", "\n", "[![Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/brainpy/examples/blob/main/recurrent_networks/Masse_2019_STP_RNN.ipynb)\n", "[![Open in Kaggle](https://kaggle.com/static/images/open-in-kaggle.svg)](https://kaggle.com/kernels/welcome?src=https://github.com/brainpy/examples/blob/main/recurrent_networks/Masse_2019_STP_RNN.ipynb)" ] }, { "cell_type": "markdown", "id": "11868e2f", "metadata": {}, "source": [ "Re-implementation of the paper with BrainPy:\n", "\n", "- Masse, Nicolas Y., Guangyu R. Yang, H. Francis Song,\n", " Xiao-Jing Wang, and David J. Freedman. \"Circuit mechanisms for\n", " the maintenance and manipulation of information in working\n", " memory.\" Nature neuroscience 22, no. 7 (2019): 1159-1167.\n", "\n", "Thanks the original GitHub code: https://github.com/nmasse/Short-term-plasticity-RNN\n", "\n", "The code for the implementation of Task please refer to the [Masse_2019_STP_RNN_tasks.py](https://github.com/PKU-NIP-Lab/BrainPyExamples/blob/main/recurrent_networks/Masse_2019_STP_RNN_tasks.py).\n", "\n", "The analysis methods please refer to the original repository: https://github.com/nmasse/Short-term-plasticity-RNN/blob/master/analysis.py" ] }, { "cell_type": "code", "execution_count": 11, "id": "fc28b98e", "metadata": {}, "outputs": [], "source": [ "import brainpy as bp\n", "import brainpy.math as bm\n", "bp.math.set_platform('cpu')" ] }, { "cell_type": "code", "execution_count": 12, "id": "7b1a9279", "metadata": {}, "outputs": [], "source": [ "import os\n", "import math\n", "import pickle\n", "import numpy as np\n", "from Masse_2019_STP_RNN_tasks import Task" ] }, { "cell_type": "code", "execution_count": 13, "id": "5177ce22", "metadata": {}, "outputs": [], "source": [ "# Time parameters\n", "dt = 100 # ms\n", "dt_sec = dt / 1000\n", "time_constant = 100 # ms\n", "alpha = dt / time_constant" ] }, { "cell_type": "code", "execution_count": 14, "id": "9f4913c7", "metadata": {}, "outputs": [], "source": [ "# Loss parameters\n", "spike_regularization = 'L2' # 'L1' or 'L2'\n", "spike_cost = 2e-2\n", "weight_cost = 0.\n", "clip_max_grad_val = 0.1" ] }, { "cell_type": "code", "execution_count": 15, "id": "2e7cb412", "metadata": {}, "outputs": [], "source": [ "# Training specs\n", "batch_size = 1024\n", "learning_rate = 2e-2" ] }, { "cell_type": "code", "execution_count": 16, "id": "3ab0625b", "metadata": {}, "outputs": [], "source": [ "def initialize(shape, prob, size):\n", " w = bm.random.gamma(shape, size=size)\n", " w *= (bm.random.random(size) < prob)\n", " return bm.asarray(w, dtype=bm.float32)" ] }, { "cell_type": "markdown", "id": "7f15cb3b", "metadata": {}, "source": [ "## Model" ] }, { "cell_type": "code", "execution_count": 17, "id": "091b401f", "metadata": {}, "outputs": [], "source": [ "class Model(bp.DynamicalSystem):\n", " def __init__(self, task, num_hidden=100, name=None):\n", " super(Model, self).__init__(name=name)\n", "\n", " assert isinstance(task, Task)\n", " self.task = task\n", "\n", " # Network configuration\n", " self.exc_inh_prop = 0.8 # excitatory/inhibitory ratio\n", " self.conn_prob = 0.2\n", "\n", " # Network shape\n", " self.num_output = task.num_output\n", " self.num_hidden = num_hidden\n", " self.num_input = task.num_input\n", "\n", " # EI\n", " self.num_exc = int(self.num_hidden * self.exc_inh_prop)\n", " self.num_inh = self.num_hidden - self.num_exc\n", " self.EI_list = bm.ones(self.num_hidden)\n", " self.EI_list[self.num_exc:] = -1.\n", " self.EI_matrix = bm.diag(self.EI_list)\n", " self.inh_index = bm.arange(self.num_exc, self.num_hidden)\n", "\n", " # Input and noise\n", " self.noise_rnn = math.sqrt(2 * alpha) * 0.5\n", "\n", " # Synaptic plasticity specs\n", " self.tau_fast = 200 # ms\n", " self.tau_slow = 1500 # ms\n", " self.U_stf = 0.15\n", " self.U_std = 0.45\n", "\n", " # Initial hidden values\n", " self.init_h = bm.TrainVar(bm.ones((batch_size, self.num_hidden)) * 0.1)\n", " self.h = bm.Variable(bm.ones((batch_size, self.num_hidden)) * 0.1)\n", "\n", " # Input/recurrent/output weights\n", " # 1. w_ir (input => recurrent)\n", " prob = self.conn_prob * task.num_receptive_fields\n", " self.w_ir = bm.TrainVar(initialize(0.2, prob, (self.num_input, self.num_hidden)))\n", " self.w_ir_mask = bm.ones((self.num_input, self.num_hidden))\n", " if task.trial_type == 'location_DMS':\n", " self.w_ir_mask *= 0.\n", " target_ind = [range(0, self.num_hidden, 3), range(1, self.num_hidden, 3), range(2, self.num_hidden, 3)]\n", " for n in range(self.num_input):\n", " u = int(n // (self.num_input / 3))\n", " self.w_ir_mask[n, target_ind[u]] = 1.\n", " self.w_ir *= self.w_ir_mask # only preserve\n", " # 2. w_rr (recurrent => recurrent)\n", " self.w_rr = bm.TrainVar(initialize(0.1, self.conn_prob, (self.num_hidden, self.num_hidden)))\n", " self.w_rr[:, self.num_exc:] = initialize(0.2, self.conn_prob, (self.num_hidden, self.num_inh))\n", " self.w_rr[self.num_exc:, :] = initialize(0.2, self.conn_prob, (self.num_inh, self.num_hidden))\n", " self.w_rr_mask = bm.ones((self.num_hidden, self.num_hidden)) - bm.eye(self.num_hidden)\n", " self.w_rr *= self.w_rr_mask # remove self-connections\n", " self.b_rr = bm.TrainVar(bm.zeros((1, self.num_hidden)))\n", " # 3. w_ro (input => recurrent)\n", " self.w_ro = bm.TrainVar(initialize(0.1, self.conn_prob, (self.num_hidden, self.num_output)))\n", " self.w_ro_mask = bm.ones((self.num_hidden, self.num_output))\n", " self.w_ro_mask[self.num_exc:, :] = 0.\n", " self.w_ro *= self.w_ro_mask # remove inhibitory-to-output connections\n", " # 4. b_ro (bias)\n", " self.b_ro = bm.TrainVar(bm.zeros((1, self.num_output)))\n", "\n", " # Synaptic variables\n", " # - The first row (first half neurons) are facilitating synapses\n", " # - The second row (last half neurons) are depressing synapses\n", " alpha_stf = bm.ones((2, int(self.num_hidden / 2)))\n", " alpha_stf[0] = dt / self.tau_slow\n", " alpha_stf[1] = dt / self.tau_fast\n", " alpha_std = bm.ones((2, int(self.num_hidden / 2)))\n", " alpha_std[0] = dt / self.tau_fast\n", " alpha_std[1] = dt / self.tau_slow\n", " U = bm.ones((2, int(self.num_hidden / 2)))\n", " U[0] = 0.15\n", " U[1] = 0.45\n", " u = bm.ones((batch_size, 2, int(self.num_hidden / 2))) * 0.3\n", " u[:, 0] = 0.15\n", " u[:, 1] = 0.45\n", " # - final\n", " self.alpha_stf = alpha_stf.reshape((1, -1))\n", " self.alpha_std = alpha_std.reshape((1, -1))\n", " self.U = U.reshape((1, -1))\n", " self.u = bm.Variable(u.reshape((batch_size, -1)))\n", " self.x = bm.Variable(bm.ones((batch_size, self.num_hidden)))\n", " self.y = bm.Variable(bm.ones((batch_size, self.num_output)))\n", " self.y_hist = bm.Variable(bm.zeros((task.num_steps, batch_size, task.num_output)))\n", "\n", " # Loss\n", " self.loss = bm.Variable(bm.zeros(1))\n", " self.perf_loss = bm.Variable(bm.zeros(1))\n", " self.spike_loss = bm.Variable(bm.zeros(1))\n", " self.weight_loss = bm.Variable(bm.zeros(1))\n", "\n", " def reset_state(self, batch_size):\n", " u = bm.ones((batch_size, 2, int(self.num_hidden / 2))) * 0.3\n", " u[:, 0] = 0.15\n", " u[:, 1] = 0.45\n", " self.u.value = u.reshape((batch_size, -1))\n", " self.x.value = bm.ones((batch_size, self.num_hidden))\n", " self.loss[:] = 0.\n", " self.perf_loss[:] = 0.\n", " self.spike_loss[:] = 0.\n", " self.weight_loss[:] = 0.\n", "\n", " def update(self, input):\n", " # update STP variables\n", " self.x += (self.alpha_std * (1 - self.x) - dt_sec * self.u * self.x * self.h)\n", " self.u += (self.alpha_stf * (self.U - self.u) + dt_sec * self.U * (1 - self.u) * self.h)\n", " self.x.value = bm.minimum(1., bm.relu(self.x))\n", " self.u.value = bm.minimum(1., bm.relu(self.u))\n", " h_post = self.u * self.x * self.h\n", "\n", " # Update the hidden state. Only use excitatory projections from input layer to RNN\n", " # All input and RNN activity will be non-negative\n", " state = alpha * (input @ bm.relu(self.w_ir) + h_post @ self.w_rr + self.b_rr)\n", " state += bm.random.normal(0, self.noise_rnn, self.h.shape)\n", " self.h.value = bm.relu(state) + self.h * (1 - alpha)\n", " self.y.value = self.h @ bm.relu(self.w_ro) + self.b_ro\n", "\n", " def predict(self, inputs):\n", " self.h[:] = self.init_h\n", " scan = bm.make_loop(body_fun=self.update,\n", " dyn_vars=[self.x, self.u, self.h, self.y],\n", " out_vars=[self.y, self.h])\n", " logits, hist_h = scan(inputs)\n", " self.y_hist[:] = logits\n", " return logits, hist_h\n", "\n", " def loss_func(self, inputs, targets, mask):\n", " logits, hist_h = self.predict(inputs)\n", "\n", " # Calculate the performance loss\n", " perf_loss = bp.losses.cross_entropy_loss(logits, targets, reduction='none') * mask\n", " self.perf_loss[:] = bm.mean(perf_loss)\n", "\n", " # L1/L2 penalty term on hidden state activity to encourage low spike rate solutions\n", " n = 2 if spike_regularization == 'L2' else 1\n", " self.spike_loss[:] = bm.mean(hist_h ** n)\n", " self.weight_loss[:] = bm.mean(bm.relu(self.w_rr) ** n)\n", "\n", " # final loss\n", " self.loss[:] = self.perf_loss + spike_cost * self.spike_loss + weight_cost * self.weight_loss\n", " return self.loss.mean()" ] }, { "cell_type": "markdown", "id": "fe0b66b0", "metadata": {}, "source": [ "## Analysis" ] }, { "cell_type": "code", "execution_count": 18, "id": "ef13c67a", "metadata": {}, "outputs": [], "source": [ "def get_perf(target, output, mask):\n", " \"\"\"Calculate task accuracy by comparing the actual network output to the desired output\n", " only examine time points when test stimulus is on, e.g. when y[:,:,0] = 0 \"\"\"\n", " target = target.numpy()\n", " output = output.numpy()\n", " mask = mask.numpy()\n", "\n", " mask_full = mask > 0\n", " mask_test = mask_full * (target[:, :, 0] == 0)\n", " mask_non_match = mask_full * (target[:, :, 1] == 1)\n", " mask_match = mask_full * (target[:, :, 2] == 1)\n", " target_max = np.argmax(target, axis=2)\n", " output_max = np.argmax(output, axis=2)\n", "\n", " match = target_max == output_max\n", " accuracy = np.sum(match * mask_test) / np.sum(mask_test)\n", " acc_non_match = np.sum(match * np.squeeze(mask_non_match)) / np.sum(mask_non_match)\n", " acc_match = np.sum(match * np.squeeze(mask_match)) / np.sum(mask_match)\n", " return accuracy, acc_non_match, acc_match" ] }, { "cell_type": "markdown", "id": "47dd6685", "metadata": { "lines_to_next_cell": 2 }, "source": [ "## Training" ] }, { "cell_type": "code", "execution_count": 19, "id": "c428bc37", "metadata": {}, "outputs": [], "source": [ "def trial(task_name, save_fn=None, num_iterations=2000, iter_between_outputs=5):\n", " task = Task(task_name, dt=dt, tau=time_constant, batch_size=batch_size)\n", " # trial_info = task.generate_trial(set_rule=None)\n", " # task.plot_neural_input(trial_info)\n", "\n", " model = Model(task)\n", " opt = bp.optim.Adam(learning_rate, train_vars=model.train_vars())\n", " grad_f = bm.grad(model.loss_func, \n", " grad_vars=model.train_vars(),\n", " return_value=True)\n", "\n", " @bm.jit\n", " def train_op(x, y, mask):\n", " grads, _ = grad_f(x, y, mask)\n", " capped_gs = dict()\n", " for key, grad in grads.items():\n", " if 'w_rr' in key: grad *= model.w_rr_mask\n", " elif 'w_ro' in key: grad *= model.w_ro_mask\n", " elif 'w_ri' in key: grad *= model.w_ir_mask\n", " capped_gs[key] = bm.clip_by_norm(grad, clip_max_grad_val)\n", " opt.update(grads=capped_gs)\n", "\n", " # keep track of the model performance across training\n", " model_performance = {'accuracy': [], 'loss': [], 'perf_loss': [],\n", " 'spike_loss': [], 'weight_loss': [], 'iteration': []}\n", "\n", " for i in range(num_iterations):\n", " model.reset_state(batch_size)\n", " # generate batch of batch_train_size\n", " trial_info = task.generate_trial(set_rule=None)\n", " inputs = bm.array(trial_info['neural_input'], dtype=bm.float32)\n", " targets = bm.array(trial_info['desired_output'], dtype=bm.float32)\n", " mask = bm.array(trial_info['train_mask'], dtype=bm.float32)\n", "\n", " # Run the model\n", " train_op(inputs, targets, mask)\n", "\n", " # get metrics\n", " accuracy, _, _ = get_perf(targets, model.y_hist, mask)\n", " model_performance['accuracy'].append(accuracy)\n", " model_performance['loss'].append(model.loss)\n", " model_performance['perf_loss'].append(model.perf_loss)\n", " model_performance['spike_loss'].append(model.spike_loss)\n", " model_performance['weight_loss'].append(model.weight_loss)\n", " model_performance['iteration'].append(i)\n", "\n", " # Save the network model and output model performance to screen\n", " if i % iter_between_outputs == 0:\n", " print(task_name +\n", " f' Iter {i:4d}' +\n", " f' | Accuracy {accuracy:0.4f}' +\n", " f' | Perf loss {model.perf_loss[0]:0.4f}' +\n", " f' | Spike loss {model.spike_loss[0]:0.4f}' +\n", " f' | Weight loss {model.weight_loss[0]:0.4f}' +\n", " f' | Mean activity {bm.mean(model.h):0.4f}')\n", "\n", " if save_fn:\n", " if not os.path.exists(os.path.dirname(save_fn)):\n", " os.makedirs(os.path.dirname(save_fn))\n", "\n", " # Save model and results\n", " weights = model.train_vars().unique().dict()\n", " results = {'weights': weights, 'parameters': {}}\n", " for k, v in model_performance.items():\n", " results[k] = v\n", " pickle.dump(results, open(save_fn, 'wb'))" ] }, { "cell_type": "code", "execution_count": 20, "id": "95b3e0fd", "metadata": { "scrolled": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "DMS Iter 0 | Accuracy 0.5211 | Perf loss 2.7038 | Spike loss 7.8653 | Weight loss 0.0315 | Mean activity 3.3380\n", "DMS Iter 5 | Accuracy 0.4184 | Perf loss 0.4879 | Spike loss 5.5533 | Weight loss 0.0315 | Mean activity 1.6523\n", "DMS Iter 10 | Accuracy 0.4473 | Perf loss 0.2892 | Spike loss 4.3892 | Weight loss 0.0312 | Mean activity 1.2179\n", "DMS Iter 15 | Accuracy 0.4654 | Perf loss 0.2386 | Spike loss 2.8176 | Weight loss 0.0308 | Mean activity 1.0014\n", "DMS Iter 20 | Accuracy 0.5000 | Perf loss 0.2102 | Spike loss 2.4600 | Weight loss 0.0309 | Mean activity 0.8940\n", "DMS Iter 25 | Accuracy 0.4783 | Perf loss 0.2018 | Spike loss 2.2587 | Weight loss 0.0311 | Mean activity 0.8501\n", "DMS Iter 30 | Accuracy 0.5119 | Perf loss 0.1815 | Spike loss 2.0880 | Weight loss 0.0313 | Mean activity 0.7721\n", "DMS Iter 35 | Accuracy 0.5340 | Perf loss 0.1697 | Spike loss 1.7911 | Weight loss 0.0318 | Mean activity 0.7324\n", "DMS Iter 40 | Accuracy 0.5469 | Perf loss 0.1640 | Spike loss 1.7178 | Weight loss 0.0324 | Mean activity 0.6913\n", "DMS Iter 45 | Accuracy 0.5764 | Perf loss 0.1524 | Spike loss 1.6305 | Weight loss 0.0332 | Mean activity 0.6684\n", "DMS Iter 50 | Accuracy 0.6229 | Perf loss 0.1436 | Spike loss 1.5921 | Weight loss 0.0339 | Mean activity 0.6497\n", "DMS Iter 55 | Accuracy 0.6301 | Perf loss 0.1382 | Spike loss 1.5635 | Weight loss 0.0346 | Mean activity 0.6360\n", "DMS Iter 60 | Accuracy 0.6254 | Perf loss 0.1392 | Spike loss 1.4905 | Weight loss 0.0353 | Mean activity 0.6193\n", "DMS Iter 65 | Accuracy 0.6494 | Perf loss 0.1325 | Spike loss 1.4990 | Weight loss 0.0360 | Mean activity 0.6177\n", "DMS Iter 70 | Accuracy 0.6910 | Perf loss 0.1232 | Spike loss 1.4614 | Weight loss 0.0365 | Mean activity 0.6192\n", "DMS Iter 75 | Accuracy 0.6977 | Perf loss 0.1206 | Spike loss 1.4657 | Weight loss 0.0372 | Mean activity 0.6092\n", "DMS Iter 80 | Accuracy 0.7135 | Perf loss 0.1178 | Spike loss 1.4238 | Weight loss 0.0377 | Mean activity 0.6133\n", "DMS Iter 85 | Accuracy 0.7240 | Perf loss 0.1133 | Spike loss 1.4442 | Weight loss 0.0383 | Mean activity 0.6201\n", "DMS Iter 90 | Accuracy 0.7273 | Perf loss 0.1093 | Spike loss 1.4717 | Weight loss 0.0390 | Mean activity 0.6170\n", "DMS Iter 95 | Accuracy 0.7404 | Perf loss 0.1055 | Spike loss 1.4073 | Weight loss 0.0395 | Mean activity 0.6214\n", "DMS Iter 100 | Accuracy 0.7670 | Perf loss 0.0974 | Spike loss 1.4685 | Weight loss 0.0403 | Mean activity 0.6321\n", "DMS Iter 105 | Accuracy 0.7639 | Perf loss 0.0996 | Spike loss 1.4525 | Weight loss 0.0410 | Mean activity 0.6321\n", "DMS Iter 110 | Accuracy 0.7947 | Perf loss 0.0879 | Spike loss 1.4711 | Weight loss 0.0416 | Mean activity 0.6412\n", "DMS Iter 115 | Accuracy 0.7881 | Perf loss 0.0893 | Spike loss 1.4721 | Weight loss 0.0426 | Mean activity 0.6400\n", "DMS Iter 120 | Accuracy 0.7902 | Perf loss 0.0853 | Spike loss 1.4998 | Weight loss 0.0433 | Mean activity 0.6495\n", "DMS Iter 125 | Accuracy 0.8094 | Perf loss 0.0775 | Spike loss 1.4819 | Weight loss 0.0440 | Mean activity 0.6519\n", "DMS Iter 130 | Accuracy 0.8127 | Perf loss 0.0780 | Spike loss 1.4739 | Weight loss 0.0446 | Mean activity 0.6535\n", "DMS Iter 135 | Accuracy 0.8295 | Perf loss 0.0725 | Spike loss 1.4526 | Weight loss 0.0452 | Mean activity 0.6481\n", "DMS Iter 140 | Accuracy 0.8303 | Perf loss 0.0702 | Spike loss 1.4571 | Weight loss 0.0458 | Mean activity 0.6508\n", "DMS Iter 145 | Accuracy 0.8248 | Perf loss 0.0719 | Spike loss 1.4244 | Weight loss 0.0463 | Mean activity 0.6533\n", "DMS Iter 150 | Accuracy 0.8318 | Perf loss 0.0707 | Spike loss 1.4362 | Weight loss 0.0468 | Mean activity 0.6520\n", "DMS Iter 155 | Accuracy 0.8227 | Perf loss 0.0718 | Spike loss 1.4525 | Weight loss 0.0476 | Mean activity 0.6625\n", "DMS Iter 160 | Accuracy 0.8293 | Perf loss 0.0687 | Spike loss 1.4380 | Weight loss 0.0481 | Mean activity 0.6525\n", "DMS Iter 165 | Accuracy 0.8318 | Perf loss 0.0672 | Spike loss 1.4201 | Weight loss 0.0484 | Mean activity 0.6538\n", "DMS Iter 170 | Accuracy 0.8379 | Perf loss 0.0639 | Spike loss 1.4193 | Weight loss 0.0488 | Mean activity 0.6541\n", "DMS Iter 175 | Accuracy 0.8297 | Perf loss 0.0673 | Spike loss 1.4213 | Weight loss 0.0494 | Mean activity 0.6478\n", "DMS Iter 180 | Accuracy 0.8422 | Perf loss 0.0619 | Spike loss 1.4273 | Weight loss 0.0497 | Mean activity 0.6586\n", "DMS Iter 185 | Accuracy 0.8475 | Perf loss 0.0614 | Spike loss 1.3814 | Weight loss 0.0500 | Mean activity 0.6567\n", "DMS Iter 190 | Accuracy 0.8451 | Perf loss 0.0628 | Spike loss 1.3811 | Weight loss 0.0505 | Mean activity 0.6565\n", "DMS Iter 195 | Accuracy 0.8518 | Perf loss 0.0601 | Spike loss 1.3828 | Weight loss 0.0511 | Mean activity 0.6549\n", "DMS Iter 200 | Accuracy 0.8529 | Perf loss 0.0569 | Spike loss 1.3763 | Weight loss 0.0515 | Mean activity 0.6515\n", "DMS Iter 205 | Accuracy 0.8508 | Perf loss 0.0577 | Spike loss 1.3716 | Weight loss 0.0520 | Mean activity 0.6461\n", "DMS Iter 210 | Accuracy 0.8514 | Perf loss 0.0579 | Spike loss 1.3755 | Weight loss 0.0524 | Mean activity 0.6428\n", "DMS Iter 215 | Accuracy 0.8512 | Perf loss 0.0573 | Spike loss 1.3652 | Weight loss 0.0529 | Mean activity 0.6437\n", "DMS Iter 220 | Accuracy 0.8521 | Perf loss 0.0559 | Spike loss 1.3662 | Weight loss 0.0533 | Mean activity 0.6355\n", "DMS Iter 225 | Accuracy 0.8609 | Perf loss 0.0540 | Spike loss 1.3805 | Weight loss 0.0535 | Mean activity 0.6425\n", "DMS Iter 230 | Accuracy 0.8682 | Perf loss 0.0520 | Spike loss 1.3702 | Weight loss 0.0541 | Mean activity 0.6354\n", "DMS Iter 235 | Accuracy 0.8682 | Perf loss 0.0522 | Spike loss 1.3818 | Weight loss 0.0544 | Mean activity 0.6353\n", "DMS Iter 240 | Accuracy 0.8629 | Perf loss 0.0529 | Spike loss 1.3609 | Weight loss 0.0548 | Mean activity 0.6275\n", "DMS Iter 245 | Accuracy 0.8494 | Perf loss 0.0576 | Spike loss 1.3546 | Weight loss 0.0555 | Mean activity 0.6225\n", "DMS Iter 250 | Accuracy 0.8623 | Perf loss 0.0535 | Spike loss 1.3358 | Weight loss 0.0557 | Mean activity 0.6133\n", "DMS Iter 255 | Accuracy 0.8684 | Perf loss 0.0512 | Spike loss 1.3440 | Weight loss 0.0562 | Mean activity 0.6131\n", "DMS Iter 260 | Accuracy 0.8705 | Perf loss 0.0520 | Spike loss 1.3385 | Weight loss 0.0566 | Mean activity 0.6083\n", "DMS Iter 265 | Accuracy 0.8678 | Perf loss 0.0519 | Spike loss 1.3221 | Weight loss 0.0567 | Mean activity 0.6024\n", "DMS Iter 270 | Accuracy 0.8740 | Perf loss 0.0492 | Spike loss 1.3103 | Weight loss 0.0571 | Mean activity 0.5915\n", "DMS Iter 275 | Accuracy 0.8762 | Perf loss 0.0465 | Spike loss 1.2993 | Weight loss 0.0574 | Mean activity 0.5922\n", "DMS Iter 280 | Accuracy 0.8723 | Perf loss 0.0489 | Spike loss 1.2954 | Weight loss 0.0578 | Mean activity 0.5907\n", "DMS Iter 285 | Accuracy 0.8660 | Perf loss 0.0495 | Spike loss 1.3016 | Weight loss 0.0583 | Mean activity 0.5868\n", "DMS Iter 290 | Accuracy 0.8783 | Perf loss 0.0478 | Spike loss 1.2908 | Weight loss 0.0589 | Mean activity 0.5819\n", "DMS Iter 295 | Accuracy 0.8711 | Perf loss 0.0487 | Spike loss 1.2881 | Weight loss 0.0591 | Mean activity 0.5714\n", "DMS Iter 300 | Accuracy 0.8666 | Perf loss 0.0502 | Spike loss 1.2648 | Weight loss 0.0594 | Mean activity 0.5663\n", "DMS Iter 305 | Accuracy 0.8715 | Perf loss 0.0476 | Spike loss 1.2757 | Weight loss 0.0599 | Mean activity 0.5588\n", "DMS Iter 310 | Accuracy 0.8713 | Perf loss 0.0486 | Spike loss 1.2846 | Weight loss 0.0603 | Mean activity 0.5546\n", "DMS Iter 315 | Accuracy 0.8686 | Perf loss 0.0498 | Spike loss 1.2558 | Weight loss 0.0604 | Mean activity 0.5455\n", "DMS Iter 320 | Accuracy 0.8760 | Perf loss 0.0485 | Spike loss 1.2669 | Weight loss 0.0610 | Mean activity 0.5511\n", "DMS Iter 325 | Accuracy 0.8746 | Perf loss 0.0500 | Spike loss 1.2692 | Weight loss 0.0613 | Mean activity 0.5438\n", "DMS Iter 330 | Accuracy 0.8809 | Perf loss 0.0441 | Spike loss 1.2730 | Weight loss 0.0615 | Mean activity 0.5410\n", "DMS Iter 335 | Accuracy 0.8809 | Perf loss 0.0454 | Spike loss 1.2474 | Weight loss 0.0619 | Mean activity 0.5316\n", "DMS Iter 340 | Accuracy 0.8803 | Perf loss 0.0442 | Spike loss 1.2417 | Weight loss 0.0623 | Mean activity 0.5207\n", "DMS Iter 345 | Accuracy 0.8844 | Perf loss 0.0444 | Spike loss 1.2522 | Weight loss 0.0626 | Mean activity 0.5163\n", "DMS Iter 350 | Accuracy 0.8924 | Perf loss 0.0418 | Spike loss 1.2379 | Weight loss 0.0631 | Mean activity 0.5123\n", "DMS Iter 355 | Accuracy 0.8795 | Perf loss 0.0457 | Spike loss 1.1955 | Weight loss 0.0632 | Mean activity 0.5204\n", "DMS Iter 360 | Accuracy 0.8844 | Perf loss 0.0438 | Spike loss 1.2291 | Weight loss 0.0637 | Mean activity 0.5052\n", "DMS Iter 365 | Accuracy 0.8867 | Perf loss 0.0446 | Spike loss 1.2282 | Weight loss 0.0642 | Mean activity 0.5023\n", "DMS Iter 370 | Accuracy 0.8916 | Perf loss 0.0419 | Spike loss 1.2145 | Weight loss 0.0645 | Mean activity 0.4940\n", "DMS Iter 375 | Accuracy 0.8951 | Perf loss 0.0407 | Spike loss 1.2218 | Weight loss 0.0651 | Mean activity 0.4938\n", "DMS Iter 380 | Accuracy 0.8928 | Perf loss 0.0445 | Spike loss 1.2002 | Weight loss 0.0654 | Mean activity 0.4889\n", "DMS Iter 385 | Accuracy 0.8953 | Perf loss 0.0413 | Spike loss 1.2121 | Weight loss 0.0656 | Mean activity 0.4712\n", "DMS Iter 390 | Accuracy 0.8969 | Perf loss 0.0414 | Spike loss 1.2223 | Weight loss 0.0663 | Mean activity 0.4747\n", "DMS Iter 395 | Accuracy 0.8936 | Perf loss 0.0415 | Spike loss 1.1969 | Weight loss 0.0664 | Mean activity 0.4663\n", "DMS Iter 400 | Accuracy 0.8949 | Perf loss 0.0417 | Spike loss 1.1999 | Weight loss 0.0667 | Mean activity 0.4605\n", "DMS Iter 405 | Accuracy 0.8977 | Perf loss 0.0417 | Spike loss 1.2007 | Weight loss 0.0666 | Mean activity 0.4563\n", "DMS Iter 410 | Accuracy 0.8984 | Perf loss 0.0400 | Spike loss 1.1890 | Weight loss 0.0669 | Mean activity 0.4540\n", "DMS Iter 415 | Accuracy 0.8967 | Perf loss 0.0408 | Spike loss 1.1682 | Weight loss 0.0672 | Mean activity 0.4449\n", "DMS Iter 420 | Accuracy 0.8969 | Perf loss 0.0408 | Spike loss 1.1809 | Weight loss 0.0681 | Mean activity 0.4277\n", "DMS Iter 425 | Accuracy 0.8932 | Perf loss 0.0405 | Spike loss 1.1743 | Weight loss 0.0683 | Mean activity 0.4309\n", "DMS Iter 430 | Accuracy 0.8910 | Perf loss 0.0416 | Spike loss 1.1341 | Weight loss 0.0684 | Mean activity 0.4317\n", "DMS Iter 435 | Accuracy 0.9074 | Perf loss 0.0386 | Spike loss 1.1491 | Weight loss 0.0686 | Mean activity 0.4341\n", "DMS Iter 440 | Accuracy 0.8957 | Perf loss 0.0398 | Spike loss 1.1909 | Weight loss 0.0693 | Mean activity 0.4319\n", "DMS Iter 445 | Accuracy 0.8938 | Perf loss 0.0407 | Spike loss 1.1691 | Weight loss 0.0694 | Mean activity 0.4270\n", "DMS Iter 450 | Accuracy 0.9043 | Perf loss 0.0377 | Spike loss 1.1948 | Weight loss 0.0698 | Mean activity 0.4231\n", "DMS Iter 455 | Accuracy 0.8969 | Perf loss 0.0411 | Spike loss 1.1601 | Weight loss 0.0700 | Mean activity 0.4285\n", "DMS Iter 460 | Accuracy 0.9043 | Perf loss 0.0369 | Spike loss 1.1469 | Weight loss 0.0705 | Mean activity 0.4100\n", "DMS Iter 465 | Accuracy 0.9037 | Perf loss 0.0378 | Spike loss 1.1253 | Weight loss 0.0711 | Mean activity 0.4051\n", "DMS Iter 470 | Accuracy 0.9025 | Perf loss 0.0377 | Spike loss 1.1440 | Weight loss 0.0718 | Mean activity 0.4085\n", "DMS Iter 475 | Accuracy 0.9043 | Perf loss 0.0376 | Spike loss 1.1172 | Weight loss 0.0720 | Mean activity 0.4043\n", "DMS Iter 480 | Accuracy 0.9043 | Perf loss 0.0368 | Spike loss 1.1174 | Weight loss 0.0725 | Mean activity 0.3943\n", "DMS Iter 485 | Accuracy 0.9133 | Perf loss 0.0339 | Spike loss 1.1094 | Weight loss 0.0729 | Mean activity 0.4056\n", "DMS Iter 490 | Accuracy 0.9012 | Perf loss 0.0386 | Spike loss 1.1034 | Weight loss 0.0733 | Mean activity 0.3849\n", "DMS Iter 495 | Accuracy 0.9037 | Perf loss 0.0377 | Spike loss 1.1030 | Weight loss 0.0735 | Mean activity 0.3882\n", "DMS Iter 500 | Accuracy 0.9082 | Perf loss 0.0361 | Spike loss 1.0884 | Weight loss 0.0740 | Mean activity 0.3877\n", "DMS Iter 505 | Accuracy 0.9098 | Perf loss 0.0352 | Spike loss 1.0988 | Weight loss 0.0743 | Mean activity 0.3768\n", "DMS Iter 510 | Accuracy 0.9088 | Perf loss 0.0348 | Spike loss 1.0985 | Weight loss 0.0744 | Mean activity 0.3860\n", "DMS Iter 515 | Accuracy 0.9053 | Perf loss 0.0370 | Spike loss 1.0939 | Weight loss 0.0746 | Mean activity 0.3713\n", "DMS Iter 520 | Accuracy 0.9172 | Perf loss 0.0343 | Spike loss 1.1245 | Weight loss 0.0750 | Mean activity 0.3869\n", "DMS Iter 525 | Accuracy 0.9039 | Perf loss 0.0362 | Spike loss 1.1007 | Weight loss 0.0754 | Mean activity 0.3688\n", "DMS Iter 530 | Accuracy 0.9111 | Perf loss 0.0355 | Spike loss 1.0753 | Weight loss 0.0756 | Mean activity 0.3803\n", "DMS Iter 535 | Accuracy 0.9064 | Perf loss 0.0361 | Spike loss 1.1138 | Weight loss 0.0761 | Mean activity 0.3709\n", "DMS Iter 540 | Accuracy 0.9160 | Perf loss 0.0343 | Spike loss 1.1043 | Weight loss 0.0764 | Mean activity 0.3653\n", "DMS Iter 545 | Accuracy 0.9195 | Perf loss 0.0323 | Spike loss 1.1468 | Weight loss 0.0772 | Mean activity 0.3768\n", "DMS Iter 550 | Accuracy 0.9115 | Perf loss 0.0336 | Spike loss 1.1138 | Weight loss 0.0775 | Mean activity 0.3667\n", "DMS Iter 555 | Accuracy 0.9125 | Perf loss 0.0343 | Spike loss 1.0900 | Weight loss 0.0775 | Mean activity 0.3603\n", "DMS Iter 560 | Accuracy 0.9193 | Perf loss 0.0323 | Spike loss 1.0804 | Weight loss 0.0775 | Mean activity 0.3686\n", "DMS Iter 565 | Accuracy 0.9209 | Perf loss 0.0317 | Spike loss 1.0787 | Weight loss 0.0778 | Mean activity 0.3531\n", "DMS Iter 570 | Accuracy 0.9199 | Perf loss 0.0322 | Spike loss 1.0756 | Weight loss 0.0781 | Mean activity 0.3547\n", "DMS Iter 575 | Accuracy 0.9135 | Perf loss 0.0340 | Spike loss 1.0826 | Weight loss 0.0782 | Mean activity 0.3441\n", "DMS Iter 580 | Accuracy 0.9203 | Perf loss 0.0333 | Spike loss 1.0866 | Weight loss 0.0788 | Mean activity 0.3429\n", "DMS Iter 585 | Accuracy 0.9219 | Perf loss 0.0335 | Spike loss 1.1002 | Weight loss 0.0795 | Mean activity 0.3590\n", "DMS Iter 590 | Accuracy 0.9244 | Perf loss 0.0302 | Spike loss 1.0977 | Weight loss 0.0799 | Mean activity 0.3601\n", "DMS Iter 595 | Accuracy 0.9254 | Perf loss 0.0317 | Spike loss 1.0713 | Weight loss 0.0804 | Mean activity 0.3472\n", "DMS Iter 600 | Accuracy 0.9271 | Perf loss 0.0307 | Spike loss 1.0641 | Weight loss 0.0804 | Mean activity 0.3495\n", "DMS Iter 605 | Accuracy 0.9217 | Perf loss 0.0315 | Spike loss 1.0845 | Weight loss 0.0808 | Mean activity 0.3475\n", "DMS Iter 610 | Accuracy 0.9273 | Perf loss 0.0308 | Spike loss 1.0668 | Weight loss 0.0809 | Mean activity 0.3464\n", "DMS Iter 615 | Accuracy 0.9299 | Perf loss 0.0301 | Spike loss 1.0581 | Weight loss 0.0810 | Mean activity 0.3463\n", "DMS Iter 620 | Accuracy 0.9311 | Perf loss 0.0292 | Spike loss 1.0662 | Weight loss 0.0813 | Mean activity 0.3406\n", "DMS Iter 625 | Accuracy 0.9271 | Perf loss 0.0301 | Spike loss 1.0467 | Weight loss 0.0815 | Mean activity 0.3372\n", "DMS Iter 630 | Accuracy 0.9264 | Perf loss 0.0307 | Spike loss 1.0596 | Weight loss 0.0816 | Mean activity 0.3505\n", "DMS Iter 635 | Accuracy 0.9287 | Perf loss 0.0316 | Spike loss 1.0671 | Weight loss 0.0818 | Mean activity 0.3264\n", "DMS Iter 640 | Accuracy 0.9295 | Perf loss 0.0289 | Spike loss 1.0595 | Weight loss 0.0822 | Mean activity 0.3410\n", "DMS Iter 645 | Accuracy 0.9375 | Perf loss 0.0290 | Spike loss 1.0762 | Weight loss 0.0826 | Mean activity 0.3229\n", "DMS Iter 650 | Accuracy 0.9303 | Perf loss 0.0300 | Spike loss 1.0576 | Weight loss 0.0822 | Mean activity 0.3397\n", "DMS Iter 655 | Accuracy 0.9340 | Perf loss 0.0278 | Spike loss 1.0979 | Weight loss 0.0827 | Mean activity 0.3331\n", "DMS Iter 660 | Accuracy 0.9328 | Perf loss 0.0274 | Spike loss 1.0629 | Weight loss 0.0830 | Mean activity 0.3175\n", "DMS Iter 665 | Accuracy 0.9381 | Perf loss 0.0261 | Spike loss 1.0790 | Weight loss 0.0833 | Mean activity 0.3261\n", "DMS Iter 670 | Accuracy 0.9350 | Perf loss 0.0271 | Spike loss 1.0582 | Weight loss 0.0834 | Mean activity 0.3257\n", "DMS Iter 675 | Accuracy 0.9350 | Perf loss 0.0263 | Spike loss 1.0180 | Weight loss 0.0833 | Mean activity 0.3198\n", "DMS Iter 680 | Accuracy 0.9412 | Perf loss 0.0250 | Spike loss 1.0213 | Weight loss 0.0836 | Mean activity 0.3153\n", "DMS Iter 685 | Accuracy 0.9391 | Perf loss 0.0272 | Spike loss 1.0157 | Weight loss 0.0838 | Mean activity 0.3290\n", "DMS Iter 690 | Accuracy 0.9355 | Perf loss 0.0280 | Spike loss 1.0102 | Weight loss 0.0841 | Mean activity 0.3112\n", "DMS Iter 695 | Accuracy 0.9357 | Perf loss 0.0272 | Spike loss 1.0224 | Weight loss 0.0847 | Mean activity 0.3169\n", "DMS Iter 700 | Accuracy 0.9373 | Perf loss 0.0267 | Spike loss 1.0023 | Weight loss 0.0850 | Mean activity 0.3212\n", "DMS Iter 705 | Accuracy 0.9395 | Perf loss 0.0256 | Spike loss 1.0093 | Weight loss 0.0854 | Mean activity 0.3088\n", "DMS Iter 710 | Accuracy 0.9389 | Perf loss 0.0270 | Spike loss 0.9992 | Weight loss 0.0852 | Mean activity 0.3150\n", "DMS Iter 715 | Accuracy 0.9396 | Perf loss 0.0248 | Spike loss 1.0078 | Weight loss 0.0856 | Mean activity 0.3174\n", "DMS Iter 720 | Accuracy 0.9404 | Perf loss 0.0256 | Spike loss 1.0017 | Weight loss 0.0862 | Mean activity 0.3120\n", "DMS Iter 725 | Accuracy 0.9459 | Perf loss 0.0250 | Spike loss 1.0026 | Weight loss 0.0867 | Mean activity 0.3089\n", "DMS Iter 730 | Accuracy 0.9354 | Perf loss 0.0262 | Spike loss 1.0120 | Weight loss 0.0868 | Mean activity 0.3107\n", "DMS Iter 735 | Accuracy 0.9387 | Perf loss 0.0261 | Spike loss 0.9864 | Weight loss 0.0867 | Mean activity 0.2896\n", "DMS Iter 740 | Accuracy 0.9406 | Perf loss 0.0270 | Spike loss 1.0056 | Weight loss 0.0873 | Mean activity 0.3082\n", "DMS Iter 745 | Accuracy 0.9443 | Perf loss 0.0236 | Spike loss 0.9958 | Weight loss 0.0875 | Mean activity 0.3037\n", "DMS Iter 750 | Accuracy 0.9434 | Perf loss 0.0238 | Spike loss 1.0074 | Weight loss 0.0875 | Mean activity 0.2983\n", "DMS Iter 755 | Accuracy 0.9479 | Perf loss 0.0227 | Spike loss 0.9761 | Weight loss 0.0874 | Mean activity 0.2986\n", "DMS Iter 760 | Accuracy 0.9424 | Perf loss 0.0240 | Spike loss 0.9849 | Weight loss 0.0879 | Mean activity 0.3040\n", "DMS Iter 765 | Accuracy 0.9471 | Perf loss 0.0233 | Spike loss 0.9560 | Weight loss 0.0883 | Mean activity 0.2987\n", "DMS Iter 770 | Accuracy 0.9453 | Perf loss 0.0247 | Spike loss 0.9739 | Weight loss 0.0887 | Mean activity 0.2964\n", "DMS Iter 775 | Accuracy 0.9445 | Perf loss 0.0240 | Spike loss 1.0132 | Weight loss 0.0887 | Mean activity 0.3047\n", "DMS Iter 780 | Accuracy 0.9447 | Perf loss 0.0230 | Spike loss 1.0303 | Weight loss 0.0893 | Mean activity 0.3056\n", "DMS Iter 785 | Accuracy 0.9451 | Perf loss 0.0232 | Spike loss 1.0083 | Weight loss 0.0894 | Mean activity 0.2938\n", "DMS Iter 790 | Accuracy 0.9514 | Perf loss 0.0232 | Spike loss 0.9913 | Weight loss 0.0896 | Mean activity 0.2990\n", "DMS Iter 795 | Accuracy 0.9465 | Perf loss 0.0242 | Spike loss 1.0077 | Weight loss 0.0900 | Mean activity 0.2884\n", "DMS Iter 800 | Accuracy 0.9465 | Perf loss 0.0230 | Spike loss 0.9780 | Weight loss 0.0897 | Mean activity 0.2900\n", "DMS Iter 805 | Accuracy 0.9422 | Perf loss 0.0254 | Spike loss 0.9774 | Weight loss 0.0902 | Mean activity 0.2843\n", "DMS Iter 810 | Accuracy 0.9461 | Perf loss 0.0255 | Spike loss 0.9957 | Weight loss 0.0903 | Mean activity 0.2958\n", "DMS Iter 815 | Accuracy 0.9488 | Perf loss 0.0239 | Spike loss 0.9833 | Weight loss 0.0907 | Mean activity 0.2843\n", "DMS Iter 820 | Accuracy 0.9557 | Perf loss 0.0214 | Spike loss 1.0125 | Weight loss 0.0907 | Mean activity 0.2788\n", "DMS Iter 825 | Accuracy 0.9504 | Perf loss 0.0232 | Spike loss 0.9782 | Weight loss 0.0907 | Mean activity 0.2872\n", "DMS Iter 830 | Accuracy 0.9484 | Perf loss 0.0241 | Spike loss 1.0000 | Weight loss 0.0909 | Mean activity 0.2910\n", "DMS Iter 835 | Accuracy 0.9479 | Perf loss 0.0232 | Spike loss 1.0095 | Weight loss 0.0911 | Mean activity 0.2851\n", "DMS Iter 840 | Accuracy 0.9563 | Perf loss 0.0207 | Spike loss 1.0116 | Weight loss 0.0911 | Mean activity 0.2792\n", "DMS Iter 845 | Accuracy 0.9521 | Perf loss 0.0226 | Spike loss 0.9752 | Weight loss 0.0912 | Mean activity 0.2781\n", "DMS Iter 850 | Accuracy 0.9367 | Perf loss 0.0310 | Spike loss 0.9490 | Weight loss 0.0914 | Mean activity 0.2766\n", "DMS Iter 855 | Accuracy 0.9434 | Perf loss 0.0261 | Spike loss 1.0368 | Weight loss 0.0929 | Mean activity 0.2730\n", "DMS Iter 860 | Accuracy 0.9529 | Perf loss 0.0222 | Spike loss 1.0724 | Weight loss 0.0933 | Mean activity 0.2844\n", "DMS Iter 865 | Accuracy 0.9504 | Perf loss 0.0234 | Spike loss 1.0631 | Weight loss 0.0938 | Mean activity 0.2806\n", "DMS Iter 870 | Accuracy 0.9473 | Perf loss 0.0234 | Spike loss 1.0414 | Weight loss 0.0940 | Mean activity 0.2765\n", "DMS Iter 875 | Accuracy 0.9490 | Perf loss 0.0230 | Spike loss 1.0663 | Weight loss 0.0946 | Mean activity 0.2675\n", "DMS Iter 880 | Accuracy 0.9527 | Perf loss 0.0210 | Spike loss 1.0612 | Weight loss 0.0950 | Mean activity 0.2682\n", "DMS Iter 885 | Accuracy 0.9563 | Perf loss 0.0204 | Spike loss 1.0489 | Weight loss 0.0951 | Mean activity 0.2637\n", "DMS Iter 890 | Accuracy 0.9564 | Perf loss 0.0208 | Spike loss 1.0035 | Weight loss 0.0946 | Mean activity 0.2539\n", "DMS Iter 895 | Accuracy 0.9547 | Perf loss 0.0207 | Spike loss 1.0087 | Weight loss 0.0948 | Mean activity 0.2553\n", "DMS Iter 900 | Accuracy 0.9477 | Perf loss 0.0230 | Spike loss 0.9910 | Weight loss 0.0949 | Mean activity 0.2516\n", "DMS Iter 905 | Accuracy 0.9557 | Perf loss 0.0221 | Spike loss 0.9653 | Weight loss 0.0950 | Mean activity 0.2548\n", "DMS Iter 910 | Accuracy 0.9541 | Perf loss 0.0216 | Spike loss 0.9534 | Weight loss 0.0953 | Mean activity 0.2559\n", "DMS Iter 915 | Accuracy 0.9557 | Perf loss 0.0194 | Spike loss 0.9345 | Weight loss 0.0950 | Mean activity 0.2515\n", "DMS Iter 920 | Accuracy 0.9486 | Perf loss 0.0233 | Spike loss 0.9277 | Weight loss 0.0951 | Mean activity 0.2611\n", "DMS Iter 925 | Accuracy 0.9553 | Perf loss 0.0231 | Spike loss 0.9238 | Weight loss 0.0951 | Mean activity 0.2570\n", "DMS Iter 930 | Accuracy 0.9574 | Perf loss 0.0205 | Spike loss 0.9232 | Weight loss 0.0952 | Mean activity 0.2584\n", "DMS Iter 935 | Accuracy 0.9545 | Perf loss 0.0219 | Spike loss 0.9053 | Weight loss 0.0956 | Mean activity 0.2516\n", "DMS Iter 940 | Accuracy 0.9518 | Perf loss 0.0212 | Spike loss 0.9380 | Weight loss 0.0963 | Mean activity 0.2494\n", "DMS Iter 945 | Accuracy 0.9557 | Perf loss 0.0200 | Spike loss 0.9615 | Weight loss 0.0968 | Mean activity 0.2467\n", "DMS Iter 950 | Accuracy 0.9488 | Perf loss 0.0231 | Spike loss 0.9416 | Weight loss 0.0972 | Mean activity 0.2489\n", "DMS Iter 955 | Accuracy 0.9553 | Perf loss 0.0201 | Spike loss 0.9724 | Weight loss 0.0975 | Mean activity 0.2519\n", "DMS Iter 960 | Accuracy 0.9572 | Perf loss 0.0198 | Spike loss 0.9679 | Weight loss 0.0974 | Mean activity 0.2542\n", "DMS Iter 965 | Accuracy 0.9578 | Perf loss 0.0188 | Spike loss 0.9389 | Weight loss 0.0972 | Mean activity 0.2496\n", "DMS Iter 970 | Accuracy 0.9563 | Perf loss 0.0207 | Spike loss 0.9153 | Weight loss 0.0973 | Mean activity 0.2544\n", "DMS Iter 975 | Accuracy 0.9596 | Perf loss 0.0205 | Spike loss 0.9059 | Weight loss 0.0972 | Mean activity 0.2454\n", "DMS Iter 980 | Accuracy 0.9549 | Perf loss 0.0203 | Spike loss 0.9092 | Weight loss 0.0971 | Mean activity 0.2442\n", "DMS Iter 985 | Accuracy 0.9523 | Perf loss 0.0236 | Spike loss 0.9461 | Weight loss 0.0975 | Mean activity 0.2440\n", "DMS Iter 990 | Accuracy 0.9543 | Perf loss 0.0211 | Spike loss 0.9405 | Weight loss 0.0982 | Mean activity 0.2470\n", "DMS Iter 995 | Accuracy 0.9605 | Perf loss 0.0198 | Spike loss 0.9788 | Weight loss 0.0992 | Mean activity 0.2469\n", "DMS Iter 1000 | Accuracy 0.9555 | Perf loss 0.0207 | Spike loss 0.9792 | Weight loss 0.1000 | Mean activity 0.2461\n", "DMS Iter 1005 | Accuracy 0.9541 | Perf loss 0.0207 | Spike loss 0.9978 | Weight loss 0.1002 | Mean activity 0.2378\n", "DMS Iter 1010 | Accuracy 0.9580 | Perf loss 0.0211 | Spike loss 0.9724 | Weight loss 0.1003 | Mean activity 0.2392\n", "DMS Iter 1015 | Accuracy 0.9502 | Perf loss 0.0214 | Spike loss 0.9557 | Weight loss 0.1001 | Mean activity 0.2403\n", "DMS Iter 1020 | Accuracy 0.9551 | Perf loss 0.0217 | Spike loss 0.9422 | Weight loss 0.0999 | Mean activity 0.2300\n", "DMS Iter 1025 | Accuracy 0.9590 | Perf loss 0.0203 | Spike loss 0.9418 | Weight loss 0.1002 | Mean activity 0.2368\n", "DMS Iter 1030 | Accuracy 0.9574 | Perf loss 0.0206 | Spike loss 0.9781 | Weight loss 0.1001 | Mean activity 0.2349\n", "DMS Iter 1035 | Accuracy 0.9627 | Perf loss 0.0194 | Spike loss 0.9598 | Weight loss 0.0998 | Mean activity 0.2411\n", "DMS Iter 1040 | Accuracy 0.9592 | Perf loss 0.0208 | Spike loss 0.9538 | Weight loss 0.0998 | Mean activity 0.2443\n", "DMS Iter 1045 | Accuracy 0.9578 | Perf loss 0.0201 | Spike loss 0.9230 | Weight loss 0.0996 | Mean activity 0.2371\n", "DMS Iter 1050 | Accuracy 0.9525 | Perf loss 0.0219 | Spike loss 0.9439 | Weight loss 0.1003 | Mean activity 0.2424\n", "DMS Iter 1055 | Accuracy 0.9578 | Perf loss 0.0204 | Spike loss 1.0266 | Weight loss 0.1015 | Mean activity 0.2359\n", "DMS Iter 1060 | Accuracy 0.9410 | Perf loss 0.0260 | Spike loss 1.0010 | Weight loss 0.1021 | Mean activity 0.2344\n", "DMS Iter 1065 | Accuracy 0.9602 | Perf loss 0.0201 | Spike loss 1.0120 | Weight loss 0.1031 | Mean activity 0.2487\n", "DMS Iter 1070 | Accuracy 0.9568 | Perf loss 0.0196 | Spike loss 1.0056 | Weight loss 0.1035 | Mean activity 0.2442\n", "DMS Iter 1075 | Accuracy 0.9563 | Perf loss 0.0197 | Spike loss 0.9897 | Weight loss 0.1033 | Mean activity 0.2477\n", "DMS Iter 1080 | Accuracy 0.9588 | Perf loss 0.0201 | Spike loss 0.9577 | Weight loss 0.1032 | Mean activity 0.2462\n", "DMS Iter 1085 | Accuracy 0.9516 | Perf loss 0.0208 | Spike loss 0.9455 | Weight loss 0.1034 | Mean activity 0.2504\n", "DMS Iter 1090 | Accuracy 0.9605 | Perf loss 0.0182 | Spike loss 0.9264 | Weight loss 0.1029 | Mean activity 0.2421\n", "DMS Iter 1095 | Accuracy 0.9641 | Perf loss 0.0180 | Spike loss 0.9008 | Weight loss 0.1024 | Mean activity 0.2502\n", "DMS Iter 1100 | Accuracy 0.9576 | Perf loss 0.0197 | Spike loss 0.8982 | Weight loss 0.1028 | Mean activity 0.2418\n", "DMS Iter 1105 | Accuracy 0.9551 | Perf loss 0.0217 | Spike loss 0.9124 | Weight loss 0.1040 | Mean activity 0.2322\n", "DMS Iter 1110 | Accuracy 0.9627 | Perf loss 0.0177 | Spike loss 0.9525 | Weight loss 0.1051 | Mean activity 0.2316\n", "DMS Iter 1115 | Accuracy 0.9596 | Perf loss 0.0185 | Spike loss 0.9270 | Weight loss 0.1055 | Mean activity 0.2248\n", "DMS Iter 1120 | Accuracy 0.9602 | Perf loss 0.0183 | Spike loss 0.9226 | Weight loss 0.1058 | Mean activity 0.2201\n", "DMS Iter 1125 | Accuracy 0.9607 | Perf loss 0.0206 | Spike loss 0.9030 | Weight loss 0.1056 | Mean activity 0.2226\n", "DMS Iter 1130 | Accuracy 0.9588 | Perf loss 0.0176 | Spike loss 0.9071 | Weight loss 0.1052 | Mean activity 0.2286\n", "DMS Iter 1135 | Accuracy 0.9594 | Perf loss 0.0185 | Spike loss 0.9155 | Weight loss 0.1056 | Mean activity 0.2299\n", "DMS Iter 1140 | Accuracy 0.9609 | Perf loss 0.0191 | Spike loss 0.9045 | Weight loss 0.1057 | Mean activity 0.2285\n", "DMS Iter 1145 | Accuracy 0.9643 | Perf loss 0.0176 | Spike loss 0.8940 | Weight loss 0.1052 | Mean activity 0.2287\n", "DMS Iter 1150 | Accuracy 0.9543 | Perf loss 0.0206 | Spike loss 0.8978 | Weight loss 0.1052 | Mean activity 0.2285\n", "DMS Iter 1155 | Accuracy 0.9594 | Perf loss 0.0186 | Spike loss 0.9168 | Weight loss 0.1056 | Mean activity 0.2298\n", "DMS Iter 1160 | Accuracy 0.9566 | Perf loss 0.0184 | Spike loss 0.9188 | Weight loss 0.1057 | Mean activity 0.2252\n", "DMS Iter 1165 | Accuracy 0.9641 | Perf loss 0.0170 | Spike loss 0.9011 | Weight loss 0.1057 | Mean activity 0.2345\n", "DMS Iter 1170 | Accuracy 0.9596 | Perf loss 0.0192 | Spike loss 0.8788 | Weight loss 0.1055 | Mean activity 0.2340\n", "DMS Iter 1175 | Accuracy 0.9568 | Perf loss 0.0186 | Spike loss 0.8635 | Weight loss 0.1054 | Mean activity 0.2299\n", "DMS Iter 1180 | Accuracy 0.9611 | Perf loss 0.0177 | Spike loss 0.8675 | Weight loss 0.1056 | Mean activity 0.2248\n", "DMS Iter 1185 | Accuracy 0.9625 | Perf loss 0.0167 | Spike loss 0.8573 | Weight loss 0.1056 | Mean activity 0.2284\n", "DMS Iter 1190 | Accuracy 0.9563 | Perf loss 0.0189 | Spike loss 0.8538 | Weight loss 0.1055 | Mean activity 0.2284\n", "DMS Iter 1195 | Accuracy 0.9641 | Perf loss 0.0178 | Spike loss 0.8566 | Weight loss 0.1054 | Mean activity 0.2249\n", "DMS Iter 1200 | Accuracy 0.9580 | Perf loss 0.0188 | Spike loss 0.8522 | Weight loss 0.1053 | Mean activity 0.2254\n", "DMS Iter 1205 | Accuracy 0.9604 | Perf loss 0.0184 | Spike loss 0.8308 | Weight loss 0.1052 | Mean activity 0.2275\n", "DMS Iter 1210 | Accuracy 0.9629 | Perf loss 0.0186 | Spike loss 0.8230 | Weight loss 0.1053 | Mean activity 0.2253\n", "DMS Iter 1215 | Accuracy 0.9633 | Perf loss 0.0176 | Spike loss 0.8264 | Weight loss 0.1052 | Mean activity 0.2207\n", "DMS Iter 1220 | Accuracy 0.9584 | Perf loss 0.0182 | Spike loss 0.8192 | Weight loss 0.1052 | Mean activity 0.2272\n", "DMS Iter 1225 | Accuracy 0.9641 | Perf loss 0.0170 | Spike loss 0.8148 | Weight loss 0.1053 | Mean activity 0.2230\n", "DMS Iter 1230 | Accuracy 0.9621 | Perf loss 0.0179 | Spike loss 0.8174 | Weight loss 0.1053 | Mean activity 0.2225\n", "DMS Iter 1235 | Accuracy 0.9588 | Perf loss 0.0189 | Spike loss 0.8043 | Weight loss 0.1053 | Mean activity 0.2274\n", "DMS Iter 1240 | Accuracy 0.9631 | Perf loss 0.0177 | Spike loss 0.8178 | Weight loss 0.1057 | Mean activity 0.2176\n", "DMS Iter 1245 | Accuracy 0.9637 | Perf loss 0.0166 | Spike loss 0.8162 | Weight loss 0.1059 | Mean activity 0.2195\n", "DMS Iter 1250 | Accuracy 0.9652 | Perf loss 0.0165 | Spike loss 0.8167 | Weight loss 0.1062 | Mean activity 0.2236\n", "DMS Iter 1255 | Accuracy 0.9590 | Perf loss 0.0190 | Spike loss 0.8093 | Weight loss 0.1065 | Mean activity 0.2233\n", "DMS Iter 1260 | Accuracy 0.9586 | Perf loss 0.0203 | Spike loss 0.8348 | Weight loss 0.1070 | Mean activity 0.2247\n", "DMS Iter 1265 | Accuracy 0.9621 | Perf loss 0.0187 | Spike loss 0.8456 | Weight loss 0.1071 | Mean activity 0.2237\n", "DMS Iter 1270 | Accuracy 0.9582 | Perf loss 0.0199 | Spike loss 0.8415 | Weight loss 0.1074 | Mean activity 0.2230\n", "DMS Iter 1275 | Accuracy 0.9602 | Perf loss 0.0180 | Spike loss 0.8544 | Weight loss 0.1078 | Mean activity 0.2218\n", "DMS Iter 1280 | Accuracy 0.9646 | Perf loss 0.0171 | Spike loss 0.8512 | Weight loss 0.1082 | Mean activity 0.2227\n", "DMS Iter 1285 | Accuracy 0.9566 | Perf loss 0.0218 | Spike loss 0.8360 | Weight loss 0.1081 | Mean activity 0.2254\n", "DMS Iter 1290 | Accuracy 0.9613 | Perf loss 0.0180 | Spike loss 0.8803 | Weight loss 0.1081 | Mean activity 0.2248\n", "DMS Iter 1295 | Accuracy 0.9654 | Perf loss 0.0172 | Spike loss 0.8958 | Weight loss 0.1080 | Mean activity 0.2216\n", "DMS Iter 1300 | Accuracy 0.9609 | Perf loss 0.0178 | Spike loss 0.8779 | Weight loss 0.1077 | Mean activity 0.2268\n", "DMS Iter 1305 | Accuracy 0.9631 | Perf loss 0.0170 | Spike loss 0.8719 | Weight loss 0.1079 | Mean activity 0.2253\n", "DMS Iter 1310 | Accuracy 0.9631 | Perf loss 0.0166 | Spike loss 0.8505 | Weight loss 0.1080 | Mean activity 0.2237\n", "DMS Iter 1315 | Accuracy 0.9652 | Perf loss 0.0168 | Spike loss 0.8249 | Weight loss 0.1082 | Mean activity 0.2165\n", "DMS Iter 1320 | Accuracy 0.9637 | Perf loss 0.0168 | Spike loss 0.8397 | Weight loss 0.1081 | Mean activity 0.2241\n", "DMS Iter 1325 | Accuracy 0.9645 | Perf loss 0.0164 | Spike loss 0.8215 | Weight loss 0.1082 | Mean activity 0.2139\n", "DMS Iter 1330 | Accuracy 0.9619 | Perf loss 0.0181 | Spike loss 0.7980 | Weight loss 0.1082 | Mean activity 0.2095\n", "DMS Iter 1335 | Accuracy 0.9648 | Perf loss 0.0157 | Spike loss 0.7928 | Weight loss 0.1080 | Mean activity 0.2122\n", "DMS Iter 1340 | Accuracy 0.9600 | Perf loss 0.0188 | Spike loss 0.8036 | Weight loss 0.1082 | Mean activity 0.2132\n", "DMS Iter 1345 | Accuracy 0.9596 | Perf loss 0.0176 | Spike loss 0.8062 | Weight loss 0.1082 | Mean activity 0.2136\n", "DMS Iter 1350 | Accuracy 0.9588 | Perf loss 0.0217 | Spike loss 0.8128 | Weight loss 0.1081 | Mean activity 0.2039\n", "DMS Iter 1355 | Accuracy 0.9605 | Perf loss 0.0230 | Spike loss 0.7970 | Weight loss 0.1081 | Mean activity 0.2139\n", "DMS Iter 1360 | Accuracy 0.9605 | Perf loss 0.0243 | Spike loss 0.8114 | Weight loss 0.1088 | Mean activity 0.2005\n", "DMS Iter 1365 | Accuracy 0.9475 | Perf loss 0.0305 | Spike loss 0.8264 | Weight loss 0.1094 | Mean activity 0.2037\n", "DMS Iter 1370 | Accuracy 0.9498 | Perf loss 0.0268 | Spike loss 0.9131 | Weight loss 0.1122 | Mean activity 0.2222\n", "DMS Iter 1375 | Accuracy 0.9627 | Perf loss 0.0213 | Spike loss 0.9920 | Weight loss 0.1148 | Mean activity 0.2216\n", "DMS Iter 1380 | Accuracy 0.9596 | Perf loss 0.0233 | Spike loss 0.9783 | Weight loss 0.1151 | Mean activity 0.2213\n", "DMS Iter 1385 | Accuracy 0.9600 | Perf loss 0.0208 | Spike loss 0.9487 | Weight loss 0.1151 | Mean activity 0.2169\n", "DMS Iter 1390 | Accuracy 0.9598 | Perf loss 0.0205 | Spike loss 0.9231 | Weight loss 0.1150 | Mean activity 0.2160\n", "DMS Iter 1395 | Accuracy 0.9627 | Perf loss 0.0188 | Spike loss 0.8971 | Weight loss 0.1146 | Mean activity 0.2105\n", "DMS Iter 1400 | Accuracy 0.9645 | Perf loss 0.0171 | Spike loss 0.8679 | Weight loss 0.1142 | Mean activity 0.2143\n", "DMS Iter 1405 | Accuracy 0.9613 | Perf loss 0.0194 | Spike loss 0.8436 | Weight loss 0.1140 | Mean activity 0.2101\n", "DMS Iter 1410 | Accuracy 0.9596 | Perf loss 0.0201 | Spike loss 0.8148 | Weight loss 0.1135 | Mean activity 0.1999\n", "DMS Iter 1415 | Accuracy 0.9576 | Perf loss 0.0204 | Spike loss 0.8096 | Weight loss 0.1127 | Mean activity 0.2089\n", "DMS Iter 1420 | Accuracy 0.9631 | Perf loss 0.0182 | Spike loss 0.8169 | Weight loss 0.1127 | Mean activity 0.2145\n", "DMS Iter 1425 | Accuracy 0.9645 | Perf loss 0.0180 | Spike loss 0.8101 | Weight loss 0.1126 | Mean activity 0.2188\n", "DMS Iter 1430 | Accuracy 0.9635 | Perf loss 0.0187 | Spike loss 0.8028 | Weight loss 0.1127 | Mean activity 0.2143\n", "DMS Iter 1435 | Accuracy 0.9596 | Perf loss 0.0191 | Spike loss 0.8156 | Weight loss 0.1135 | Mean activity 0.2054\n", "DMS Iter 1440 | Accuracy 0.9648 | Perf loss 0.0187 | Spike loss 0.8341 | Weight loss 0.1143 | Mean activity 0.2148\n", "DMS Iter 1445 | Accuracy 0.9689 | Perf loss 0.0192 | Spike loss 0.8380 | Weight loss 0.1146 | Mean activity 0.2115\n", "DMS Iter 1450 | Accuracy 0.9600 | Perf loss 0.0202 | Spike loss 0.8435 | Weight loss 0.1150 | Mean activity 0.2156\n", "DMS Iter 1455 | Accuracy 0.9578 | Perf loss 0.0209 | Spike loss 0.8924 | Weight loss 0.1161 | Mean activity 0.2215\n", "DMS Iter 1460 | Accuracy 0.9623 | Perf loss 0.0182 | Spike loss 0.8875 | Weight loss 0.1166 | Mean activity 0.2158\n", "DMS Iter 1465 | Accuracy 0.9580 | Perf loss 0.0208 | Spike loss 0.9091 | Weight loss 0.1172 | Mean activity 0.2109\n", "DMS Iter 1470 | Accuracy 0.9588 | Perf loss 0.0179 | Spike loss 0.9209 | Weight loss 0.1175 | Mean activity 0.2048\n", "DMS Iter 1475 | Accuracy 0.9678 | Perf loss 0.0167 | Spike loss 0.9268 | Weight loss 0.1177 | Mean activity 0.2073\n", "DMS Iter 1480 | Accuracy 0.9641 | Perf loss 0.0176 | Spike loss 0.9199 | Weight loss 0.1178 | Mean activity 0.2083\n", "DMS Iter 1485 | Accuracy 0.9639 | Perf loss 0.0173 | Spike loss 0.8908 | Weight loss 0.1178 | Mean activity 0.2164\n", "DMS Iter 1490 | Accuracy 0.9578 | Perf loss 0.0196 | Spike loss 0.8575 | Weight loss 0.1176 | Mean activity 0.2109\n", "DMS Iter 1495 | Accuracy 0.9639 | Perf loss 0.0165 | Spike loss 0.8525 | Weight loss 0.1177 | Mean activity 0.2117\n", "DMS Iter 1500 | Accuracy 0.9676 | Perf loss 0.0158 | Spike loss 0.8359 | Weight loss 0.1171 | Mean activity 0.2040\n", "DMS Iter 1505 | Accuracy 0.9613 | Perf loss 0.0182 | Spike loss 0.8243 | Weight loss 0.1170 | Mean activity 0.2112\n", "DMS Iter 1510 | Accuracy 0.9592 | Perf loss 0.0174 | Spike loss 0.8195 | Weight loss 0.1173 | Mean activity 0.2075\n", "DMS Iter 1515 | Accuracy 0.9639 | Perf loss 0.0171 | Spike loss 0.8180 | Weight loss 0.1177 | Mean activity 0.2046\n", "DMS Iter 1520 | Accuracy 0.9666 | Perf loss 0.0169 | Spike loss 0.8242 | Weight loss 0.1178 | Mean activity 0.2081\n", "DMS Iter 1525 | Accuracy 0.9609 | Perf loss 0.0172 | Spike loss 0.8321 | Weight loss 0.1184 | Mean activity 0.2012\n", "DMS Iter 1530 | Accuracy 0.9617 | Perf loss 0.0176 | Spike loss 0.8266 | Weight loss 0.1186 | Mean activity 0.2057\n", "DMS Iter 1535 | Accuracy 0.9668 | Perf loss 0.0162 | Spike loss 0.8740 | Weight loss 0.1194 | Mean activity 0.2095\n", "DMS Iter 1540 | Accuracy 0.9607 | Perf loss 0.0216 | Spike loss 0.8984 | Weight loss 0.1201 | Mean activity 0.2094\n", "DMS Iter 1545 | Accuracy 0.9602 | Perf loss 0.0186 | Spike loss 0.8961 | Weight loss 0.1209 | Mean activity 0.2056\n", "DMS Iter 1550 | Accuracy 0.9600 | Perf loss 0.0254 | Spike loss 0.8728 | Weight loss 0.1216 | Mean activity 0.2052\n", "DMS Iter 1555 | Accuracy 0.9598 | Perf loss 0.0212 | Spike loss 0.8902 | Weight loss 0.1228 | Mean activity 0.2036\n", "DMS Iter 1560 | Accuracy 0.9582 | Perf loss 0.0221 | Spike loss 0.9120 | Weight loss 0.1241 | Mean activity 0.2131\n", "DMS Iter 1565 | Accuracy 0.9535 | Perf loss 0.0230 | Spike loss 0.8988 | Weight loss 0.1242 | Mean activity 0.2163\n", "DMS Iter 1570 | Accuracy 0.9563 | Perf loss 0.0234 | Spike loss 0.9593 | Weight loss 0.1249 | Mean activity 0.2230\n", "DMS Iter 1575 | Accuracy 0.9551 | Perf loss 0.0220 | Spike loss 1.0544 | Weight loss 0.1264 | Mean activity 0.2237\n", "DMS Iter 1580 | Accuracy 0.9486 | Perf loss 0.0342 | Spike loss 1.0935 | Weight loss 0.1277 | Mean activity 0.2217\n", "DMS Iter 1585 | Accuracy 0.9621 | Perf loss 0.0195 | Spike loss 1.1112 | Weight loss 0.1280 | Mean activity 0.2241\n", "DMS Iter 1590 | Accuracy 0.9615 | Perf loss 0.0198 | Spike loss 1.0739 | Weight loss 0.1275 | Mean activity 0.2263\n", "DMS Iter 1595 | Accuracy 0.9623 | Perf loss 0.0200 | Spike loss 1.0368 | Weight loss 0.1270 | Mean activity 0.2160\n", "DMS Iter 1600 | Accuracy 0.9563 | Perf loss 0.0193 | Spike loss 1.0115 | Weight loss 0.1268 | Mean activity 0.2078\n", "DMS Iter 1605 | Accuracy 0.9631 | Perf loss 0.0181 | Spike loss 0.9856 | Weight loss 0.1264 | Mean activity 0.2050\n", "DMS Iter 1610 | Accuracy 0.9633 | Perf loss 0.0179 | Spike loss 0.9625 | Weight loss 0.1259 | Mean activity 0.2071\n", "DMS Iter 1615 | Accuracy 0.9633 | Perf loss 0.0175 | Spike loss 0.9268 | Weight loss 0.1253 | Mean activity 0.2140\n", "DMS Iter 1620 | Accuracy 0.9588 | Perf loss 0.0214 | Spike loss 0.9385 | Weight loss 0.1259 | Mean activity 0.2098\n", "DMS Iter 1625 | Accuracy 0.9676 | Perf loss 0.0171 | Spike loss 1.0057 | Weight loss 0.1272 | Mean activity 0.2155\n", "DMS Iter 1630 | Accuracy 0.9580 | Perf loss 0.0209 | Spike loss 1.0043 | Weight loss 0.1276 | Mean activity 0.2070\n", "DMS Iter 1635 | Accuracy 0.9615 | Perf loss 0.0177 | Spike loss 1.0109 | Weight loss 0.1278 | Mean activity 0.2061\n", "DMS Iter 1640 | Accuracy 0.9613 | Perf loss 0.0197 | Spike loss 1.0107 | Weight loss 0.1283 | Mean activity 0.2072\n", "DMS Iter 1645 | Accuracy 0.9680 | Perf loss 0.0160 | Spike loss 1.0006 | Weight loss 0.1282 | Mean activity 0.2114\n", "DMS Iter 1650 | Accuracy 0.9627 | Perf loss 0.0167 | Spike loss 0.9525 | Weight loss 0.1277 | Mean activity 0.2022\n", "DMS Iter 1655 | Accuracy 0.9602 | Perf loss 0.0190 | Spike loss 0.9282 | Weight loss 0.1274 | Mean activity 0.2034\n", "DMS Iter 1660 | Accuracy 0.9660 | Perf loss 0.0161 | Spike loss 0.9054 | Weight loss 0.1271 | Mean activity 0.2124\n", "DMS Iter 1665 | Accuracy 0.9680 | Perf loss 0.0150 | Spike loss 0.8919 | Weight loss 0.1267 | Mean activity 0.2075\n", "DMS Iter 1670 | Accuracy 0.9701 | Perf loss 0.0154 | Spike loss 0.8714 | Weight loss 0.1264 | Mean activity 0.2108\n", "DMS Iter 1675 | Accuracy 0.9650 | Perf loss 0.0182 | Spike loss 0.8894 | Weight loss 0.1261 | Mean activity 0.2144\n", "DMS Iter 1680 | Accuracy 0.9682 | Perf loss 0.0172 | Spike loss 0.8823 | Weight loss 0.1261 | Mean activity 0.2129\n", "DMS Iter 1685 | Accuracy 0.9670 | Perf loss 0.0164 | Spike loss 0.9009 | Weight loss 0.1269 | Mean activity 0.2084\n", "DMS Iter 1690 | Accuracy 0.9664 | Perf loss 0.0156 | Spike loss 0.9136 | Weight loss 0.1277 | Mean activity 0.2111\n", "DMS Iter 1695 | Accuracy 0.9609 | Perf loss 0.0198 | Spike loss 0.9154 | Weight loss 0.1278 | Mean activity 0.2100\n", "DMS Iter 1700 | Accuracy 0.9666 | Perf loss 0.0149 | Spike loss 0.9216 | Weight loss 0.1275 | Mean activity 0.2079\n", "DMS Iter 1705 | Accuracy 0.9674 | Perf loss 0.0154 | Spike loss 0.9027 | Weight loss 0.1271 | Mean activity 0.2043\n", "DMS Iter 1710 | Accuracy 0.9639 | Perf loss 0.0181 | Spike loss 0.8879 | Weight loss 0.1270 | Mean activity 0.2094\n", "DMS Iter 1715 | Accuracy 0.9625 | Perf loss 0.0167 | Spike loss 0.8706 | Weight loss 0.1265 | Mean activity 0.2025\n", "DMS Iter 1720 | Accuracy 0.9629 | Perf loss 0.0181 | Spike loss 0.8676 | Weight loss 0.1265 | Mean activity 0.1984\n", "DMS Iter 1725 | Accuracy 0.9652 | Perf loss 0.0159 | Spike loss 0.8568 | Weight loss 0.1265 | Mean activity 0.1971\n", "DMS Iter 1730 | Accuracy 0.9686 | Perf loss 0.0148 | Spike loss 0.8430 | Weight loss 0.1263 | Mean activity 0.1966\n", "DMS Iter 1735 | Accuracy 0.9646 | Perf loss 0.0195 | Spike loss 0.8329 | Weight loss 0.1260 | Mean activity 0.1966\n", "DMS Iter 1740 | Accuracy 0.9662 | Perf loss 0.0163 | Spike loss 0.8172 | Weight loss 0.1259 | Mean activity 0.1943\n", "DMS Iter 1745 | Accuracy 0.9639 | Perf loss 0.0163 | Spike loss 0.8191 | Weight loss 0.1260 | Mean activity 0.1986\n", "DMS Iter 1750 | Accuracy 0.9688 | Perf loss 0.0151 | Spike loss 0.8169 | Weight loss 0.1259 | Mean activity 0.1961\n", "DMS Iter 1755 | Accuracy 0.9703 | Perf loss 0.0144 | Spike loss 0.8091 | Weight loss 0.1258 | Mean activity 0.1986\n", "DMS Iter 1760 | Accuracy 0.9592 | Perf loss 0.0193 | Spike loss 0.8076 | Weight loss 0.1257 | Mean activity 0.1952\n", "DMS Iter 1765 | Accuracy 0.9645 | Perf loss 0.0172 | Spike loss 0.7946 | Weight loss 0.1256 | Mean activity 0.1965\n", "DMS Iter 1770 | Accuracy 0.9625 | Perf loss 0.0171 | Spike loss 0.7859 | Weight loss 0.1256 | Mean activity 0.1962\n", "DMS Iter 1775 | Accuracy 0.9639 | Perf loss 0.0183 | Spike loss 0.7740 | Weight loss 0.1258 | Mean activity 0.1944\n", "DMS Iter 1780 | Accuracy 0.9662 | Perf loss 0.0156 | Spike loss 0.7814 | Weight loss 0.1262 | Mean activity 0.1977\n", "DMS Iter 1785 | Accuracy 0.9625 | Perf loss 0.0162 | Spike loss 0.8024 | Weight loss 0.1267 | Mean activity 0.1944\n", "DMS Iter 1790 | Accuracy 0.9719 | Perf loss 0.0138 | Spike loss 0.8086 | Weight loss 0.1273 | Mean activity 0.1952\n", "DMS Iter 1795 | Accuracy 0.9672 | Perf loss 0.0151 | Spike loss 0.8010 | Weight loss 0.1276 | Mean activity 0.1906\n", "DMS Iter 1800 | Accuracy 0.9680 | Perf loss 0.0148 | Spike loss 0.7924 | Weight loss 0.1277 | Mean activity 0.1936\n", "DMS Iter 1805 | Accuracy 0.9699 | Perf loss 0.0137 | Spike loss 0.7918 | Weight loss 0.1275 | Mean activity 0.1901\n", "DMS Iter 1810 | Accuracy 0.9672 | Perf loss 0.0152 | Spike loss 0.7841 | Weight loss 0.1272 | Mean activity 0.1907\n", "DMS Iter 1815 | Accuracy 0.9684 | Perf loss 0.0147 | Spike loss 0.7764 | Weight loss 0.1266 | Mean activity 0.1949\n", "DMS Iter 1820 | Accuracy 0.9641 | Perf loss 0.0170 | Spike loss 0.7545 | Weight loss 0.1262 | Mean activity 0.1955\n", "DMS Iter 1825 | Accuracy 0.9654 | Perf loss 0.0175 | Spike loss 0.7483 | Weight loss 0.1261 | Mean activity 0.1876\n", "DMS Iter 1830 | Accuracy 0.9680 | Perf loss 0.0169 | Spike loss 0.7479 | Weight loss 0.1263 | Mean activity 0.1868\n", "DMS Iter 1835 | Accuracy 0.9631 | Perf loss 0.0177 | Spike loss 0.7709 | Weight loss 0.1277 | Mean activity 0.1898\n", "DMS Iter 1840 | Accuracy 0.9662 | Perf loss 0.0155 | Spike loss 0.8514 | Weight loss 0.1294 | Mean activity 0.1925\n", "DMS Iter 1845 | Accuracy 0.9658 | Perf loss 0.0191 | Spike loss 0.8877 | Weight loss 0.1302 | Mean activity 0.1952\n", "DMS Iter 1850 | Accuracy 0.9572 | Perf loss 0.0198 | Spike loss 0.8889 | Weight loss 0.1305 | Mean activity 0.1948\n", "DMS Iter 1855 | Accuracy 0.9645 | Perf loss 0.0170 | Spike loss 0.8962 | Weight loss 0.1304 | Mean activity 0.1962\n", "DMS Iter 1860 | Accuracy 0.9641 | Perf loss 0.0163 | Spike loss 0.9061 | Weight loss 0.1308 | Mean activity 0.1955\n", "DMS Iter 1865 | Accuracy 0.9652 | Perf loss 0.0161 | Spike loss 0.9028 | Weight loss 0.1311 | Mean activity 0.1890\n", "DMS Iter 1870 | Accuracy 0.9613 | Perf loss 0.0167 | Spike loss 0.8960 | Weight loss 0.1311 | Mean activity 0.1936\n", "DMS Iter 1875 | Accuracy 0.9631 | Perf loss 0.0168 | Spike loss 0.8865 | Weight loss 0.1312 | Mean activity 0.1906\n", "DMS Iter 1880 | Accuracy 0.9688 | Perf loss 0.0154 | Spike loss 0.8781 | Weight loss 0.1314 | Mean activity 0.1909\n", "DMS Iter 1885 | Accuracy 0.9648 | Perf loss 0.0166 | Spike loss 0.8425 | Weight loss 0.1312 | Mean activity 0.1904\n", "DMS Iter 1890 | Accuracy 0.9715 | Perf loss 0.0149 | Spike loss 0.8410 | Weight loss 0.1314 | Mean activity 0.1846\n", "DMS Iter 1895 | Accuracy 0.9643 | Perf loss 0.0153 | Spike loss 0.8335 | Weight loss 0.1312 | Mean activity 0.1834\n", "DMS Iter 1900 | Accuracy 0.9684 | Perf loss 0.0146 | Spike loss 0.8169 | Weight loss 0.1310 | Mean activity 0.1786\n", "DMS Iter 1905 | Accuracy 0.9646 | Perf loss 0.0166 | Spike loss 0.8116 | Weight loss 0.1310 | Mean activity 0.1794\n", "DMS Iter 1910 | Accuracy 0.9715 | Perf loss 0.0149 | Spike loss 0.8409 | Weight loss 0.1313 | Mean activity 0.1780\n", "DMS Iter 1915 | Accuracy 0.9611 | Perf loss 0.0183 | Spike loss 0.8462 | Weight loss 0.1313 | Mean activity 0.1881\n", "DMS Iter 1920 | Accuracy 0.9627 | Perf loss 0.0215 | Spike loss 0.8177 | Weight loss 0.1311 | Mean activity 0.1832\n", "DMS Iter 1925 | Accuracy 0.9631 | Perf loss 0.0203 | Spike loss 0.8071 | Weight loss 0.1312 | Mean activity 0.1819\n", "DMS Iter 1930 | Accuracy 0.9697 | Perf loss 0.0135 | Spike loss 0.7942 | Weight loss 0.1309 | Mean activity 0.1781\n", "DMS Iter 1935 | Accuracy 0.9674 | Perf loss 0.0156 | Spike loss 0.7923 | Weight loss 0.1307 | Mean activity 0.1771\n", "DMS Iter 1940 | Accuracy 0.9699 | Perf loss 0.0130 | Spike loss 0.7848 | Weight loss 0.1304 | Mean activity 0.1755\n", "DMS Iter 1945 | Accuracy 0.9660 | Perf loss 0.0151 | Spike loss 0.7687 | Weight loss 0.1304 | Mean activity 0.1756\n", "DMS Iter 1950 | Accuracy 0.9717 | Perf loss 0.0134 | Spike loss 0.7760 | Weight loss 0.1305 | Mean activity 0.1797\n", "DMS Iter 1955 | Accuracy 0.9658 | Perf loss 0.0149 | Spike loss 0.7787 | Weight loss 0.1305 | Mean activity 0.1841\n", "DMS Iter 1960 | Accuracy 0.9670 | Perf loss 0.0184 | Spike loss 0.7772 | Weight loss 0.1306 | Mean activity 0.1826\n", "DMS Iter 1965 | Accuracy 0.9641 | Perf loss 0.0193 | Spike loss 0.7668 | Weight loss 0.1308 | Mean activity 0.1853\n", "DMS Iter 1970 | Accuracy 0.9609 | Perf loss 0.0163 | Spike loss 0.7810 | Weight loss 0.1319 | Mean activity 0.1779\n", "DMS Iter 1975 | Accuracy 0.9707 | Perf loss 0.0163 | Spike loss 0.7959 | Weight loss 0.1327 | Mean activity 0.1697\n", "DMS Iter 1980 | Accuracy 0.9623 | Perf loss 0.0163 | Spike loss 0.8059 | Weight loss 0.1326 | Mean activity 0.1691\n", "DMS Iter 1985 | Accuracy 0.9680 | Perf loss 0.0154 | Spike loss 0.7976 | Weight loss 0.1324 | Mean activity 0.1717\n", "DMS Iter 1990 | Accuracy 0.9697 | Perf loss 0.0140 | Spike loss 0.7889 | Weight loss 0.1322 | Mean activity 0.1747\n", "DMS Iter 1995 | Accuracy 0.9635 | Perf loss 0.0159 | Spike loss 0.7953 | Weight loss 0.1324 | Mean activity 0.1737\n" ] } ], "source": [ "trial('DMS')" ] } ], "metadata": { "jupytext": { "cell_metadata_filter": "-all", "encoding": "# -*- coding: utf-8 -*-", "formats": "auto:percent,ipynb", "notebook_metadata_filter": "-all" }, "kernelspec": { "display_name": "brainpy", "language": "python", "name": "brainpy" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.7" }, "latex_envs": { "LaTeX_envs_menu_present": true, "autoclose": false, "autocomplete": true, "bibliofile": "biblio.bib", "cite_by": "apalike", "current_citInitial": 1, "eqLabelWithNumbers": true, "eqNumInitial": 1, "hotkeys": { "equation": "Ctrl-E", "itemize": "Ctrl-I" }, "labels_anchors": false, "latex_user_defs": false, "report_style_numbering": false, "user_envs_cfg": false }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": true, "sideBar": true, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": true } }, "nbformat": 4, "nbformat_minor": 5 }