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