From fbc40ccef4f3f0c0b21ece14d47a86790e86289c Mon Sep 17 00:00:00 2001 From: tonaerospace Date: Tue, 16 May 2023 23:24:56 +0700 Subject: [PATCH] refractoring --- src/forward.jl | 2 ++ src/learn.jl | 2 -- src/snn_utils.jl | 12 ++---------- 3 files changed, 4 insertions(+), 12 deletions(-) diff --git a/src/forward.jl b/src/forward.jl index bf5785a..f0b544e 100644 --- a/src/forward.jl +++ b/src/forward.jl @@ -166,6 +166,8 @@ function (n::alif_neuron)(kfn::knowledgeFn) n.phi = (n.gammaPd / n.v_th) * max(0, 1 - (n.v_t1 - n.av_th) / n.v_th) n.decayedEpsilonRec = n.alpha * n.epsilonRec n.epsilonRec = n.decayedEpsilonRec + n.z_i_t + n.epsilonRecA = (n.phi * n.epsilonRec) + + ((n.rho - (n.phi * n.beta)) * n.epsilonRecA) end end diff --git a/src/learn.jl b/src/learn.jl index 38b9d22..cc17e6f 100644 --- a/src/learn.jl +++ b/src/learn.jl @@ -140,8 +140,6 @@ end """ alif_neuron learn() """ function learn!(n::alif_neuron, error::Number) - n.epsilonRecA = (n.phi * n.epsilonRec) + - ((n.rho - (n.phi * n.beta)) * n.epsilonRecA) n.eRec_v = n.phi * n.epsilonRec n.eRec_a = -n.phi * n.beta * n.epsilonRecA n.eRec = n.eRec_v + n.eRec_a diff --git a/src/snn_utils.jl b/src/snn_utils.jl index 333ed96..5379163 100644 --- a/src/snn_utils.jl +++ b/src/snn_utils.jl @@ -274,14 +274,6 @@ function adjust_internal_learning_rate!(n::compute_neuron) n.internal_learning_rate * 1.005 end -function push_epsilon_rec_a!(n::lif_neuron) - # skip -end - -function push_epsilon_rec_a!(n::alif_neuron) - push!(n.epsilonRecA, 0) -end - """ compute synaptic connection strength. bias will shift currentStrength to fit into sigmoid operating range which centred at 0 and range is -37 to 37. # Example @@ -307,8 +299,8 @@ function synapticConnStrength(currentStrength::AbstractFloat, updown::String, bi end function synapticConnStrength(n::compute_neuron) - for connStrength in n.synapticStrength - + for (i, connStrength) in enumerate(n.synapticStrength) + n. synapticConnStrength