def choreograph_dance(model, save_location, out_file):
    if(not model):
        #loads the "best" model
        model = generator.load_trained_model(architecture_file, logs_save_dir)
        model = generator.compile_model(model, optimizer, loss_function, metrics)
        utils.write(generator.model_summary(model), out_file)
        print(generator.model_summary(model))
    generator.generate_dance(model, frames, out_file = out_file)
def evaluate_generator(model, eval_X, eval_Y, save_location, out_file):
    if(not model):
        #loads the "best" model
        model = generator.load_trained_model(architecture_file, logs_save_dir)
        model = generator.compile_model(model, optimizer, loss_function, metrics)
        utils.write(generator.model_summary(model), out_file)
        print(generator.model_summary(model))
        eval_X = np.load(evaluation_filepath+"_X.npy")
        eval_Y = np.load(evaluation_filepath+"_Y.npy")
    return generator.benchmark(model, eval_X, eval_Y, out_file)
def train_generator(out_file=sys.stdout):
    """ Trains the model with the dance data.
        The History object's History.history attribute is a record of training loss values and metrics values at successive epochs, 
            as well as cooresponding validation values (if applicable).  

    :param out_file: what to display/write the status information to
    :type output stream
    :return: the class containing the training metric information, the trained model, and the comprehensive evaluation data
    :type tuple
    """
    model = generator.establish_model(units, look_back, n_features, layer_activation, recurrent_activation, weight_initializer, recurrent_initializer, bias_initializer, output_activation, mixtures, use_mdn)
    generator.save_architecture(model, architecture_file)
    model = generator.compile_model(model, optimizer, loss_function, metrics)
    utils.write(generator.model_summary(model), out_file)
    print(generator.model_summary(model))
    return generator.train_model(model, out_file)
Beispiel #4
0
def choreograph_dance(model, save_location, out_file):
    if (not model):
        #loads the most recent saved model
        filename = [f for f in os.listdir(logs_save_dir) if "model" in f][-1]
        model = generator.load_trained_model(
            os.path.join(save_location, filename))
        utils.write(generator.model_summary(model), out_file)
    generator.generate_dance(model, frames, out_file=out_file)
Beispiel #5
0
def evaluate_generator(model, save_location, out_file):
    if (not model):
        #loads the most recent saved model
        filename = [f for f in os.listdir(logs_save_dir) if "model" in f][-1]
        model = generator.load_trained_model(
            os.path.join(save_location, filename))
        utils.write(generator.model_summary(model), out_file)
        eval_X = np.load(
            os.path.join(
                np_save_dir, "_comprehensive_evaluation_" + data_identifier +
                "_es-{}".format(evaluation_split) + "_X.npy"))
        eval_Y = np.load(
            os.path.join(
                np_save_dir, "_comprehensive_evaluation_" + data_identifier +
                "_es-{}".format(evaluation_split) + "_Y.npy"))
    return generator.benchmark(model, eval_X, eval_Y, out_file)