'--output',
                      action='store',
                      type='string',
                      dest='outputDir',
                      default='train_simple/',
                      help='output directory')
    parser.add_option('-c',
                      '--config',
                      action='store',
                      type='string',
                      dest='config',
                      default='train_config_threelayer.yml',
                      help='configuration file')
    (options, args) = parser.parse_args()

    yamlConfig = parse_config(options.config)

    if os.path.isdir(options.outputDir):
        #raise Exception('output directory must not exists yet')
        raw_input(
            "Warning: output directory exists. Press Enter to continue...")
    else:
        os.mkdir(options.outputDir)

    X_train_val, X_test, y_train_val, y_test, labels = get_features(
        options, yamlConfig)

    model_constraint = getattr(models, yamlConfig['KerasModelRetrain'])

    # Instantiate new model with added custom constraints
    if 'L1RegR' in yamlConfig:
Пример #2
0
    #X_test = X_test.reshape(10000, 784)
    X_test = X_test.astype('float32')
    X_test /= 255
    Y_test = to_categorical(y_test, nclasses)

    configs = [str(config) for config in options.configs.split(',')]

    df = pd.DataFrame()

    fpr = {}
    tpr = {}
    auc1 = {}

    for cfg in configs:

        config = parse_config(cfg)
        if 'cnn' in config['KerasModel']:
            img_rows, img_cols = 28, 28
            if config['DataFormat'] == 'channels_first':
                X_test = X_test.reshape(X_test.shape[0], 1, img_rows, img_cols)
            else:
                X_test = X_test.reshape(X_test.shape[0], img_rows, img_cols, 1)
        else:
            X_test = X_test.reshape(10000, 784)
        if config['KerasLoss'] == 'squared_hinge':
            Y_test = to_categorical(y_test, nclasses) * 2 - 1

        outdir = config['OutputDir']
        if options.fashionMNIST:
            outdir = 'fashionMNIST_' + outdir
        model_name = config['KerasModel']
    generated_image = G(
        [gan_input_particle, gan_input_energy, gan_input_noise])
    d_proba = D([generated_image, gan_input_particle, gan_input_energy])

    GAN = Model(input=[gan_input_particle, gan_input_energy, gan_input_noise],
                output=d_proba)

    # temporarily making D untrainable so the summary shows that D won't be trainale during the GAN.
    # We reset it during training, and the freeze it every cycle.
    train.make_trainable(D, False)
    GAN.compile(optimizer=train.optimizer(), loss=train.wasser_loss)
    print 'GAN'
    print GAN.summary()
    train.make_trainable(D, True)
    return GAN


if __name__ == '__main__':
    # parse args
    path2config = sys.argv[1]
    args = train.parse_config(path2config)
    # This model has 5x5 hard coded
    assert args['cropped_width'] == 5

    G = local_generator(args)
    D = local_discriminator(args)
    GAN = gan(G, D, args)

    train.train(G, D, GAN, args)
Пример #4
0
        uem_file = os.path.join(TEST_DATA_PATH, 'uem')
        der_uem = score_der_uem(
            hyp=os.path.join(args.model_dir,
                             'final_{}_hyp.rttm'.format(args.checkpoint)),
            ref=os.path.join(args.model_dir,
                             'final_{}_ref.rttm'.format(args.checkpoint)),
            outfile=os.path.join(args.model_dir, 'final_hyp_uem.derlog'),
            uem=uem_file,
            collar=0.25)
        rpkl['full_der_uem'] = der_uem
        print('({}) Full test DER (uem): {}'.format(args.cfg,
                                                    rpkl['full_der_uem']))
        pickle.dump(rpkl, open(results_pkl, 'wb'))


if __name__ == "__main__":
    args = parse_args()
    args = parse_config(args)
    uvloop.install()
    rpkl_path = os.path.join(args.model_dir, 'results.p')
    if not os.path.isfile(rpkl_path):
        print('No results.p found')
    else:
        device = torch.device('cuda')

        TEST_DATA_PATH = args.diar_data

        generator = setup()
        extract_and_diarize(generator, TEST_DATA_PATH, device)