for n in range(params.num_samples): mappings.append( sample_from_multivariate_gaussian(interpolated_mapping, var=params.var)) for m, sampled_mapping in enumerate(mappings): trainer.set_mapping_weights(weights=sampled_mapping) # compute the discriminator loss logger.info('----> COMPUTING DISCRIMINATOR LOSS <----\n\n') logger.info('alpha={}, m={}'.format(alpha, m)) losses = [] for n_iter in range(0, params.epoch_size, params.batch_size): loss = trainer.compute_loss() losses.append(loss.cpu().data.numpy()) #print(losses) logger.info('Discriminator loss {}: {}\n'.format(m, np.mean(losses))) evaluator = Evaluator(trainer) # run evaluations to_log = OrderedDict({'n_iter': 0}) evaluator.monolingual_wordsim(to_log) # evaluator.monolingual_wordanalogy(to_log) if params.tgt_lang: evaluator.crosslingual_wordsim(to_log) evaluator.word_translation(to_log) #evaluator.sent_translation(to_log) evaluator.dist_mean_cosine(to_log)
parser.add_argument("--src_emb", type=str, default="data/fastText/wiki.en.vec", help="Reload source embeddings") parser.add_argument("--tgt_emb", type=str, default="data/fastText/wiki.it.vec", help="Reload target embeddings") parser.add_argument("--max_vocab", type=int, default=200000, help="Maximum vocabulary size (-1 to disable)") parser.add_argument("--emb_dim", type=int, default=300, help="Embedding dimension") parser.add_argument("--normalize_embeddings", type=str, default="renorm", help="Normalize embeddings before training") parser.add_argument("--alpha", type=float, default=0.23, help="Reload the hyper-param alpha") parser.add_argument("--inv_K", type=int, default=4, help="Reload the hyper-param inv_K") # parse parameters params = parser.parse_args() # check parameters assert params.src_lang, "source language undefined" assert os.path.isfile(params.src_emb) assert not params.tgt_lang or os.path.isfile(params.tgt_emb) assert params.dico_eval == 'default' or os.path.isfile(params.dico_eval) # build logger / model / trainer / evaluator logger = initialize_exp(params) src_emb, tgt_emb, mapping, _ = build_model(params, False) trainer = Trainer(src_emb, tgt_emb, mapping, None, params) evaluator = Evaluator(trainer) # run evaluations to_log = OrderedDict({'n_iter': 0}) if params.tgt_lang: evaluator.crosslingual_wordsim(to_log, 'row') evaluator.word_translation(to_log, 'row') evaluator.dist_mean_cosine(to_log, 'row')