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)
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)