Esempio n. 1
0
def main(train_loc,
         model_loc,
         train_oracle="static",
         n_iter=15,
         beam_width=1,
         feat_thresh=10,
         allow_reattach=False,
         allow_reduce=False,
         unlabelled=False,
         n_sents=0,
         seed=0):
    random.seed(seed)
    if beam_width >= 2:
        parser = BeamParser(model_loc,
                            clean=True,
                            train_alg=train_oracle,
                            feat_thresh=feat_thresh,
                            allow_reduce=allow_reduce,
                            allow_reattach=allow_reattach,
                            beam_width=beam_width)
    else:
        parser = GreedyParser(model_loc,
                              clean=True,
                              train_alg=train_oracle,
                              feat_thresh=feat_thresh,
                              allow_reduce=allow_reduce,
                              allow_reattach=allow_reattach)
    train_str = get_train_str(train_loc, n_sents)
    train_data = redshift.io_parse.read_conll(train_str, unlabelled=unlabelled)
    parser.train(train_data, n_iter=n_iter)
    parser.save()
Esempio n. 2
0
 def wrapped(l1):
     parser = redshift.parser.Parser(parser_dir, solver_type=solver_type,
                                     clean=True, C=l1)
     dev_gold = redshift.io_parse.read_conll(dev_loc.open().read())
     train = redshift.io_parse.read_conll(train_loc.open().read())
     parser.train(train)
     dev = redshift.io_parse.read_pos(get_pos(dev_loc.open().read()))
     acc = parser.add_parses(dev, gold=dev_gold) * 100
     wrapped.models[l1] = acc
     return acc
Esempio n. 3
0
def main(train_loc, model_loc, train_oracle="static", n_iter=15, beam_width=1,
         feat_thresh=10, allow_reattach=False, allow_reduce=False, unlabelled=False,
         n_sents=0, seed=0):
    random.seed(seed)
    if beam_width >= 2:
        parser = BeamParser(model_loc, clean=True,
                            train_alg=train_oracle,
                            feat_thresh=feat_thresh, allow_reduce=allow_reduce,
                            allow_reattach=allow_reattach, beam_width=beam_width)
    else:
        parser = GreedyParser(model_loc, clean=True, train_alg=train_oracle,
                              feat_thresh=feat_thresh,
                              allow_reduce=allow_reduce,
                              allow_reattach=allow_reattach)
    train_str = get_train_str(train_loc, n_sents)
    train_data = redshift.io_parse.read_conll(train_str, unlabelled=unlabelled)
    parser.train(train_data, n_iter=n_iter)
    parser.save()