예제 #1
0
 def set_save(self, save):
     previous_neurons = 0
     index = 0
     index_weights = 0
     self.layers = []
     for i in range(len(save['neurons'])):
         # Create and populate layers.
         layer = Layer(index, self.neuro_options)
         layer.populate(save['neurons'][i], previous_neurons)
         for j in range(len(layer.neurons)):
             for k in range(len(layer.neurons[j].weights)):
                 # Apply neurons weights to each Neuron.
                 layer.neurons[j].weights[k] = save['weights'][index_weights]
                 index_weights += 1  # Increment index of flat array.
         previous_neurons = save['neurons'][i]
         index += 1
         self.layers.append(layer)
예제 #2
0
 def perceptron_generation(self, input, hiddens, output):
     index = 0
     previous_neurons = 0
     layer = Layer(index, self.neuro_options)
     # Number of Inputs will be set to 0 since it is an input layer.
     layer.populate(input, previous_neurons)
     # number of input is size of previous layer.
     previous_neurons = input
     self.layers.append(layer)
     index += 1
     for i in range(len(hiddens)):
         # Repeat same process as first layer for each hidden layer.
         layer = Layer(index, self.neuro_options)
         layer.populate(hiddens[i], previous_neurons)
         previous_neurons = hiddens[i]
         self.layers.append(layer)
         index += 1
     layer = Layer(index, self.neuro_options)
     # Number of input is equal to the size of the last hidden layer.
     layer.populate(output, previous_neurons)
     self.layers.append(layer)