Exemplo n.º 1
0
    def create_model(self):

        # create a SET-MLP model for CIFAR10 with 3 hidden layers
        self.model = Sequential()
        self.model.add(Flatten(input_shape=(32, 32, 3)))
        self.model.add(
            Dense(4000,
                  name="sparse_1",
                  kernel_constraint=MaskWeights(self.wm1),
                  weights=self.w1))
        self.model.add(SReLU(name="srelu1", weights=self.wSRelu1))
        self.model.add(Dropout(0.3))
        self.model.add(
            Dense(1000,
                  name="sparse_2",
                  kernel_constraint=MaskWeights(self.wm2),
                  weights=self.w2))
        self.model.add(SReLU(name="srelu2", weights=self.wSRelu2))
        self.model.add(Dropout(0.3))
        self.model.add(
            Dense(4000,
                  name="sparse_3",
                  kernel_constraint=MaskWeights(self.wm3),
                  weights=self.w3))
        self.model.add(SReLU(name="srelu3", weights=self.wSRelu3))
        self.model.add(Dropout(0.3))
        self.model.add(
            Dense(self.num_classes, name="dense_4", weights=self.w4)
        )  #please note that there is no need for a sparse output layer as the number of classes is much smaller than the number of input hidden neurons
        self.model.add(Activation('softmax'))
    def create_model(self):

        # create a dense MLP model for CIFAR10 with 3 hidden layers
        self.model = Sequential()
        self.model.add(Flatten(input_shape=(32, 32, 3)))
        self.model.add(Dense(4000, name="dense_1", weights=self.w1))
        self.model.add(SReLU(name="srelu1", weights=self.wSRelu1))
        self.model.add(Dropout(0.3))
        self.model.add(Dense(1000, name="dense_2", weights=self.w2))
        self.model.add(SReLU(name="srelu2", weights=self.wSRelu2))
        self.model.add(Dropout(0.3))
        self.model.add(Dense(4000, name="dense_3", weights=self.w3))
        self.model.add(SReLU(name="srelu3", weights=self.wSRelu3))
        self.model.add(Dropout(0.3))
        self.model.add(Dense(self.num_classes, name="dense_4", weights=self.w4))
        self.model.add(Activation('softmax'))
Exemplo n.º 3
0
    def create_model(self):
        K.set_learning_phase(1)
        self.model = Sequential()
        if len(self.input_shape) > 2:
            self.model.add(Flatten(input_shape=self.input_shape))

        if (self.typemlp == "dense"):
            if len(self.input_shape) <= 2:
                self.model.add(
                    Dense(self.hidden_layer_sizes[0],
                          name="dense_1",
                          weights=self.w1,
                          input_shape=self.input_shape))
            else:
                self.model.add(
                    Dense(self.hidden_layer_sizes[0],
                          name="dense_1",
                          weights=self.w1))
            self.model.add(SReLU(name="srelu1", weights=self.wSRelu1))
            self.model.add(Dropout(0.3))
            self.model.add(
                Dense(self.hidden_layer_sizes[1],
                      name="dense_2",
                      weights=self.w2))
            self.model.add(SReLU(name="srelu2", weights=self.wSRelu2))
            self.model.add(Dropout(0.3))
            self.model.add(
                Dense(self.hidden_layer_sizes[2],
                      name="dense_3",
                      weights=self.w3))
            self.model.add(SReLU(name="srelu3", weights=self.wSRelu3))
            self.model.add(Dropout(0.3))
            self.model.add(
                Dense(self.num_classes, name="dense_4", weights=self.w4))
            self.model.add(Activation('softmax'))
        else:
            if len(self.input_shape) <= 2:
                self.model.add(
                    Dense(self.hidden_layer_sizes[0],
                          name="sparse_1",
                          kernel_constraint=MaskWeights(self.wm1),
                          weights=self.w1,
                          input_shape=self.input_shape))
            else:
                self.model.add(
                    Dense(self.hidden_layer_sizes[0],
                          name="sparse_1",
                          kernel_constraint=MaskWeights(self.wm1),
                          weights=self.w1))
            self.model.add(SReLU(name="srelu1", weights=self.wSRelu1))
            self.model.add(Dropout(0.3))
            self.model.add(
                Dense(self.hidden_layer_sizes[1],
                      name="sparse_2",
                      kernel_constraint=MaskWeights(self.wm2),
                      weights=self.w2))
            self.model.add(SReLU(name="srelu2", weights=self.wSRelu2))
            self.model.add(Dropout(0.3))
            self.model.add(
                Dense(self.hidden_layer_sizes[2],
                      name="sparse_3",
                      kernel_constraint=MaskWeights(self.wm3),
                      weights=self.w3))
            self.model.add(SReLU(name="srelu3", weights=self.wSRelu3))
            self.model.add(Dropout(0.3))
            self.model.add(
                Dense(self.num_classes, name="dense_4", weights=self.w4))
            self.model.add(Activation('softmax'))