Exemplo n.º 1
0
 def __init__ (self, source):
     Synapse.__init__ (self, source, None, None)
     
     # Remove some unused member variables.
     del self.source, self.layer, self.target
     
     # The lock owner ;). Who`s got the right to change the inputs.
     self.lockOwner = None
     
     # The starting point of the synapse.
     self.startPoint = source
     
     # The ending point of the synapse.
     self.endPoint = None
Exemplo n.º 2
0
    def __init__(self, source):
        Synapse.__init__(self, source, None, None)

        # Remove some unused member variables.
        del self.source, self.layer, self.target

        # The lock owner ;). Who`s got the right to change the inputs.
        self.lockOwner = None

        # The starting point of the synapse.
        self.startPoint = source

        # The ending point of the synapse.
        self.endPoint = None
Exemplo n.º 3
0
 def synapseFired (self, Synapse):
     self.numberOfSynapsesFired += 1
     
     if self.numberOfSynapsesFired <= self.numberOfInputs:
         prev = self.get_property ("value")
         self.set_property ("value", prev + Synapse.getValue ())
     
     # When _all_ incoming synapses have fired, activate the neuron!
     if self.numberOfSynapsesFired == self.numberOfInputs:
         val = StepActivation.sigmoid (self.get_property ("value"))
         self.set_property ("value", val)
         
         self.emit ("activation")
Exemplo n.º 4
0
 def createSynapse (self, Layer, Neuron):
     layer_id = None
     neuron_id= Neuron.Id
     
     # The layer id
     if isinstance (Layer, int):
         layer_id = Layer
     else:
         layer_id = Layer._Id
         
     if layer_id not in self.synapses.keys ():
         self.synapses [layer_id] = dict ()
             
     s = Synapse (self)
     s.connect ("input-updated", Neuron.synapseInputUpdated)
     s.connect ("weight-updated", Neuron.synapseWeightsUpdated)
     s.connect ("notify-src-connect", self.synapseConnectionEstablised)
     s.connect ("notify-target-connect", Neuron.synapseAddedAsTarget)
     s.connect ("notify-target-disconnect", Neuron.synapseConnectionDestroyed)
     s.connect ("fire", Neuron.synapseFired)
     s.connectTo (Layer, Neuron)
     
     if neuron_id not in self.synapses [layer_id].keys ():
         self.synapses [layer_id][neuron_id] = s
         
     self.numberOfSynapses += 1