示例#1
0
 def evaluate(self):
     train_generator, val_generator = get_data(batch_size=batch_size)
     model_path = os.path.join(log_dir, 'mobilenetv1.h5')
     model = self.mobilenet_v1()
     if os.path.exists(model_path):
         model = keras.models.load_model(model_path)
     model.evaluate(val_generator)
示例#2
0
    def train(self):
        epochs = 100
        np.random.seed(200)

        model = self.xception()
        batch_size = 64
        train_generator, val_generator = get_data(batch_size=batch_size)
        if not os.path.exists(log_dir):
            os.system('mkdir -p {}'.format(log_dir))

        model_path = os.path.join(log_dir, 'xception_reluswish.h5')
        callbacks = [
            keras.callbacks.TensorBoard(log_dir),
            keras.callbacks.ModelCheckpoint(model_path, save_best_only=True),
        ]
        if os.path.exists(model_path):
            model = keras.models.load_model(model_path)

        history = model.fit_generator(
            train_generator,
            steps_per_epoch=train_generator.samples // batch_size,
            epochs=epochs,
            validation_data=val_generator,
            validation_steps=val_generator.samples // batch_size,
            callbacks=callbacks)
    def train(self):
        epochs = 500
        model = self.alexnet()
        batch_size = 220
        train_generator, val_generator = get_data(batch_size=batch_size)
        if not os.path.exists(log_dir):
            os.system('mkdir -p {}'.format(log_dir))
        else:
            os.system('rm -rf {}'.format(log_dir))

        model_path = os.path.join(log_dir, 'alexnet_relu6.h5')
        callbacks = [
            keras.callbacks.TensorBoard(log_dir),
            keras.callbacks.ModelCheckpoint(model_path, save_best_only=True),
        ]
        if os.path.exists(model_path):
            model = keras.models.load_model(model_path)

        history = model.fit_generator(
            train_generator,
            steps_per_epoch=train_generator.samples // batch_size,
            epochs=epochs,
            validation_data=val_generator,
            validation_steps=val_generator.samples // batch_size,
            callbacks=callbacks)
示例#4
0
 def evaluate(self):
     batch_size = 256
     train_generator, val_generator = get_data(batch_size=batch_size)
     model_path = os.path.join(log_dir, 'alexnet_reluswish.h5')
     model = self.alexnet()
     if os.path.exists(model_path):
         model = keras.models.load_model(model_path)
     model.evaluate(val_generator)
示例#5
0
    def train(self):
        epochs = 100
        model = self.vgg16()
        batch_size = 8
        train_generator, val_generator = get_data(batch_size=batch_size)

        model_path = os.path.join(log_dir, 'vgg16.h5')
        callbacks = [
            keras.callbacks.TensorBoard(log_dir),
            keras.callbacks.ModelCheckpoint(model_path, save_best_only=True),
        ]
        if os.path.exists(model_path):
            model = keras.models.load_model(model_path)
        history = model.fit_generator(train_generator, steps_per_epoch=train_generator.samples//batch_size,
                                      epochs=epochs,
                                      validation_data=val_generator,
                                      validation_steps=val_generator.samples//batch_size,
                                      callbacks=callbacks)
示例#6
0
    def train(self):
        epochs = 10
        np.random.seed(200)

        model = self.my_model()
        batch_size = 32
        train_generator, val_generator = get_data(batch_size=batch_size)
        model_path = os.path.join(log_dir, 'mymodel.h5')
        callbacks = [
            keras.callbacks.TensorBoard(log_dir),
            keras.callbacks.ModelCheckpoint(model_path),
        ]
        if os.path.exists(model_path):
            model = keras.models.load_model(model_path)

        history = model.fit_generator(
            train_generator,
            steps_per_epoch=train_generator.samples // batch_size,
            epochs=epochs,
            validation_data=val_generator,
            validation_steps=val_generator.samples // batch_size,
            callbacks=callbacks)
示例#7
0
    def train(self):
        epochs = 1
        np.random.seed(200)

        model = self.thrid_party_resnext_50()
        batch_size = 16
        train_generator, val_generator = get_data(batch_size=batch_size)
        model_path = os.path.join(log_dir, 'resnext50.h5')
        callbacks = [
            keras.callbacks.TensorBoard(log_dir),
            keras.callbacks.ModelCheckpoint(model_path, save_best_only=True),
        ]
        if os.path.exists(model_path):
            model = keras.models.load_model(model_path)

        history = model.fit_generator(
            train_generator,
            steps_per_epoch=train_generator.samples // batch_size,
            epochs=epochs,
            validation_data=val_generator,
            validation_steps=val_generator.samples // batch_size,
        )
        # callbacks=callbacks)
        model.summary()