Ejemplo n.º 1
0
    def __init__(self,
                 n_input,
                 n_output,
                 is_cuda,
                 n_neurons_per_layer=3,
                 n_hidden_layers=2):
        super(ProbabilisticFeedForwardAlternative, self).__init__()
        self.n_input = n_input
        self.n_output = n_output
        self.n_neurons_per_layer = n_neurons_per_layer
        self.n_hidden_layers = n_hidden_layers
        self.is_cuda = is_cuda
        self.activation = get_activation()
        self.n_layers = n_hidden_layers
        in_features = n_input

        # hidden layers
        for i in range(n_hidden_layers, 0, -1):
            layer = Linear(in_features=in_features,
                           out_features=n_neurons_per_layer,
                           is_cuda=is_cuda)
            setattr(self, f'layer_{i}', layer)
            setattr(self, f'activation_{i}', self.activation)
            in_features = n_neurons_per_layer

        layer = Linear(in_features=in_features,
                       out_features=n_output,
                       is_cuda=is_cuda)
        setattr(self, f'layer_0', layer)
Ejemplo n.º 2
0
    def __init__(self, genome: Genome):
        super(StochasticNetworkOld, self).__init__()
        self.n_output = genome.n_output
        self.n_input = genome.n_input
        self.nodes = genome.node_genes
        self.connections = genome.connection_genes

        self.activation = get_activation()
        layers_dict = _transform_genome_to_layers(nodes=self.nodes,
                                                  connections=self.connections,
                                                  n_output=self.n_output)
        self.n_layers = len(layers_dict)
        self._set_network_layers(layers=layers_dict)
Ejemplo n.º 3
0
 def __init__(self, genome: dict, n_input, n_output, activation_type):
     super(ComplexStochasticNetworkJupyneat, self).__init__()
     self.n_output = n_output
     self.n_input = n_input
     self.nodes = genome['nodes']
     self.connections = genome['connections']
     self.activation = get_activation(activation=activation_type)
     self.layers = transform_genome_to_layers(genome=genome,
                                              n_input=n_input,
                                              n_output=n_output)
     self.n_layers = len(self.layers)
     self._set_network_layers(layers=self.layers)
     self._cache = {}
Ejemplo n.º 4
0
    def __init__(self, n_input, n_output, n_neurons_per_layer=3, n_hidden_layers=2):
        super(FeedForward, self).__init__()
        self.n_input = n_input
        self.n_output = n_output
        self.n_neurons_per_layer = n_neurons_per_layer
        self.n_hidden_layers = n_hidden_layers
        self.activation = get_activation()
        self.n_layers = n_hidden_layers
        in_features = n_input

        # hidden layers
        for i in range(n_hidden_layers, 0, -1):
            layer = nn.Linear(in_features=in_features, out_features=n_neurons_per_layer)
            setattr(self, f'layer_{i}', layer)
            setattr(self, f'activation_{i}', self.activation)
            in_features = n_neurons_per_layer

        # output layer
        layer = nn.Linear(in_features=in_features, out_features=n_output)
        setattr(self, f'layer_0', layer)
Ejemplo n.º 5
0
 def __init__(self, genome: Genome, is_trainable=False, is_cuda=False):
     super(ComplexStochasticNetwork, self).__init__()
     self.is_trainable = is_trainable
     self.is_cuda = is_cuda
     self.genome = genome
     self.n_output = genome.n_output
     self.n_input = genome.n_input
     self.nodes = genome.node_genes
     self.connections = genome.connection_genes
     self.config = genome.genome_config
     self.activation = get_activation(
         activation=self.config.node_activation)
     self.layers = transform_genome_to_layers(genome=genome)
     self.layers_masks = generate_layer_masks(self.layers,
                                              genome,
                                              fix_std=self.config.fix_std)
     self.n_layers = len(self.layers)
     self._set_network_layers(layers=self.layers,
                              layers_masks=self.layers_masks)
     self._cache = {}