Ejemplo n.º 1
0
    model = BiLSTM(params)
    model.setMappings(mappings, embeddings)
    model.setDataset(datasets, data)
    model.storeResults("/".join(
        [args.root_dir_result, args.directory_name,
         "performance.out"]))  #Path to store performance scores for dev / test
    model.predictionSavePath = "/".join([
        args.root_dir_result, args.directory_name, "predictions",
        "[ModelName]_[Data].conll"
    ])  #Path to store predictions
    model.modelSavePath = "/".join([
        args.root_dir_result, args.directory_name,
        "models/[ModelName]_model.h5"
    ])  #Path to store models
    model.fit(epochs=args.nb_epoch)
    model.saveParams("/".join(
        [args.root_dir_result, args.directory_name, "param"]))

else:
    print("Tuning")
    drop_out_tuning = [0.25, 0.35, 0.45, 0.5]
    for current_drop_out in drop_out_tuning:
        params['dropout'] = (current_drop_out, current_drop_out)
        model = BiLSTM(params)
        model.setMappings(mappings, embeddings)
        model.setDataset(datasets, data)
        model.storeResults("/".join([
            args.root_dir_result, args.directory_name, "performance.out"
        ]))  # Path to store performance scores for dev / test
        model.predictionSavePath = "/".join([
            args.root_dir_result, args.directory_name, "predictions",
            "[ModelName]_[Data].conll"
        model.setDataset(datasets, data,
                         mainModelName=args.target_task)  # KHUSUS MULTITSAK

        model.storeResults("/".join([
            args.root_dir_result, args.directory_name, "performance.out"
        ]))  #Path to store performance scores for dev / test
        model.predictionSavePath = "/".join([
            args.root_dir_result, args.directory_name, "predictions",
            "[ModelName]_[Data].conll"
        ])  #Path to store predictions
        model.modelSavePath = "/".join([
            args.root_dir_result, args.directory_name, "models/[ModelName].h5"
        ])  #Path to store models

        model.fit(epochs=args.nb_epoch)
        model.saveParams("/".join(
            [args.root_dir_result, args.directory_name, "param"]))
    else:

        for current_run in range(1, args.nb_run + 1):
            model = BiLSTM(params)
            if args.batch_range is not None:
                model.setBatchRangeLength(args.batch_range)
            model.setMappings(mappings, embeddings)
            model.setDataset(
                datasets, data,
                mainModelName=args.target_task)  # KHUSUS MULTITSAK

            model.storeResults("/".join([
                args.root_dir_result,
                args.directory_name + "_" + str(current_run), "performance.out"
            ]))  # Path to store performance scores for dev / test