示例#1
0
def main():
    t = Timer()
    t.reset_cpu_time()
    logging.info("PREPARE DATASET")
    train_X, train_Y, test_X, test_Y = load_light_dataset(
        images_root_dir,
        target=target,
        training_set_part=0.8,
        extension='jpeg')
    logging.info("CREATE MODEL")
    model = create_model(network['layers_and_filters'],
                         network['kernel_size'],
                         network['activation'], (IMG_SIZE, IMG_SIZE, levels),
                         network['dropout_rate'],
                         network['optimizer'],
                         network['learning_rate'],
                         output_size=train_Y.shape[1])
    t.get_cpu_time("PREPARATION")
    logging.info("TRAIN")
    try:
        if options.train == 'true':
            raise Exception('Force train model')
        model = models.load_model(model_name)
    except:
        fit_one_at_time(model, train_X, train_Y, epochs=network['epochs'])
        model.save(model_name)
    t.get_cpu_time("TRAIN")
    logging.info("TEST on TRAIN")
    score_one_at_time(model, train_X, train_Y)
    t.get_cpu_time("TEST on TRAIN")
    logging.info("TEST")
    score_one_at_time(model, test_X, test_Y)
    t.get_cpu_time("TEST")
示例#2
0
def main():
    t = Timer()

    logging.info("PREPARE DATASET")

    # Create train and test set
    train_X, train_Y, test_X, test_Y = load_dataset_properties(
        dataset, target=0, training_set_part=0.8)

    train_names = train_X[:, 0]
    train_X = train_X[:, 1:]
    test_names = test_X[:, 0]
    test_X = test_X[:, 1:]

    train_size = train_X.shape[0]
    test_size = test_X.shape[0]
    input_size = train_X.shape[1]
    output_size = train_Y.shape[1]

    try:
        if options.train == 'true':
            raise Exception('Force train model')
        model = models.load_model(model_name)
    except:
        # create the model
        logging.info("CREATE MODEL")
        model = create_model(input_size=input_size,
                             output_size=output_size,
                             n_layers=network['n_layers'],
                             n_neurons=network['n_neurons'],
                             activation_function=network['activation'],
                             learning_rate=network['learning_rate'],
                             dropout_rate=network['dropout_rate'],
                             optimizer=network['optimizer'])

        t.reset_cpu_time()

        # train the model
        results = model.fit(
            x=train_X,
            y=train_Y,
            epochs=network['epochs'],
        )

        t.get_cpu_time("TRAIN")

        model.save(model_name)

    logging.info("TEST on TRAIN")
    t.reset_cpu_time()
    predict_and_score(model, np.asarray(train_X).astype(np.float32), train_Y)
    t.get_cpu_time("TEST on TRAIN")
    logging.info("TEST")
    predict_and_score(model, np.asarray(test_X).astype(np.float32), test_Y)
    t.get_cpu_time("TEST")
示例#3
0
def main():
    t = Timer()
    t.reset_cpu_time()

    # Create traing and test set
    train_X, train_Y, test_X, test_Y = load_dataset(dataset, target=target)

    #dataset beging with the file name
    train_X = train_X[:, 1:]
    test_X = test_X[:, 1:]

    train_size = train_X.shape[0]
    test_size = test_X.shape[0]
    input_size = train_X.shape[1]
    output_size = train_Y.shape[1]

    try:
        if options.train == 'true':
            raise Exception('Force train model')
        model = models.load_model(model_name)
    except:
        # create the model
        model = create_model(input_size=input_size,
                             output_size=output_size,
                             n_layers=network['n_layers'],
                             n_neurons=network['n_neurons'],
                             activation_function=network['activation'],
                             learning_rate=network['learning_rate'],
                             dropout_rate=network['dropout_rate'],
                             optimizer=network['optimizer'])

        t.get_cpu_time("PREPARATION")

        # train the model
        results = model.fit(
            x=train_X,
            y=train_Y,
            epochs=network['epochs'],
            #validation_data= (test_X, test_Y)
        )

        model.save(model_name)

    logging.info("TEST on TRAIN")
    t.reset_cpu_time()
    test(model, np.asarray(train_X).astype(np.float32), train_Y)
    t.get_cpu_time("TEST on TRAIN")
    logging.info("TEST")
    test(model, np.asarray(test_X).astype(np.float32), test_Y)
    t.get_cpu_time("TEST")
示例#4
0
def main():
    t = Timer()
    t.reset_cpu_time()
    logging.info("PREPARE DATASET")
    train_X1, train_Y1, test_X1, test_Y1 = load_light_dataset(
        images_root_dir, training_set_part=0.8, extension='jpeg')
    train_X2, _, test_X2, _ = load_dataset(options.dataset_bow)
    train_X3, _, test_X3, _ = load_dataset(options.dataset_entropy)
    train_X4, _, test_X4, _ = load_dataset_properties(options.dataset_androdet)
    nlp_X = process_trainset(train_X2, test_X2, 'int')
    entropy_X = process_trainset(train_X3, test_X3, 'float')
    androdet_X = process_trainset(train_X4, test_X4, 'float')
    logging.info("CREATE MODEL")
    model = create_model(activation=network['activation'],
                         optimizer=network['optimizer'],
                         learning_rate=network['learning_rate'],
                         output_size=train_Y1.shape[1],
                         merged_layers=network['merged_layers'])
    t.get_cpu_time("PREPARATION")
    logging.info("TRAIN")
    try:
        if options.train == 'true':
            raise Exception('Force train model')
        model = models.load_model(model_name)
    except:
        fit_one_at_time(model,
                        train_X1,
                        train_Y1,
                        nlp_X,
                        entropy_X,
                        androdet_X,
                        epochs=network['epochs'])
        model.save(model_name)
    t.get_cpu_time("TRAIN")
    logging.info("TEST on TRAIN")
    score_one_at_time(model, train_X1, train_Y1, nlp_X, entropy_X, androdet_X)
    t.get_cpu_time("TEST on TRAIN")
    logging.info("TEST")
    score_one_at_time(model, test_X1, test_Y1, nlp_X, entropy_X, androdet_X)
    t.get_cpu_time("TEST")