def set_linearized_response(self): """ Set the linearized response, which only uses the learned background. This is the matrix used for CS decoding. """ # The linear response is scaled same as the activity. # Ignore the threshold here: assume that system thinks everything # is firing. self.Rr = linear_gain(self.Ss0, self.Kk1, self.Kk2, self.eps, self.binding_competitive, self.num_binding_sites) # Apply temporal kernel if self.temporal_run == False: pass #self.Rr *= self.kernel_scale*(1 - 2*self.kernel_alpha) else: kernel_params = [ self.kernel_T, self.kernel_dt, self.kernel_tau_1, self.kernel_tau_2, self.kernel_shape_1, self.kernel_shape_2, self.kernel_alpha, self.kernel_scale ] self.Rr, self.memory_Rr = temporal_kernel(self.Rr, self.memory_Rr, self.signal_trace_Tt, kernel_params) # Apply nonlinear scaling (ignore threshold) self.Rr *= self.NL_scale if self.divisive_normalization == True: self.Rr = inhibitory_normalization_linear_gain( self.Yy0, self.Rr, self.inh_C, self.inh_D, self.inh_eta, self.inh_R)
def set_linearized_response(self): """ Set the linearized response, which only uses the learned background. This is the matrix used for CS decoding. """ self.Rr = linear_gain(self.Ss0, self.Kk1, self.Kk2, self.eps)
def set_linearized_response(self): """ Set the linearized response, which only uses the learned background. This is the matrix used for CS decoding. """ self.Rr = linear_gain(self.Ss0, self.Kk1, self.Kk2, self.eps) if self.divisive_normalization == True: self.Rr = inhibitory_normalization_linear_gain( self.Yy0, self.Rr, self.inh_C, self.inh_D, self.inh_eta, self.inh_R)
def set_linearized_response(self): # Linearized response can only use the learned background, or ignore # that knowledge self.Rr = linear_gain(self.Ss0, self.Kk1, self.Kk2, self.eps)