Exemplo n.º 1
0
def load_model(options):
    print("Model path:",options.params)
    with open(options.params, 'r') as paramsfp:
        words, w2i, c2i, pos, rels, stored_opt = pickle.load(paramsfp)
    stored_opt.external_embedding = None
    print 'Loading pre-trained model'
    parser = learner.jPosDepLearner(words, pos, rels, w2i, c2i, stored_opt)
    parser.Load(options.model)
    sys.setrecursionlimit(10000)
    return parser
                      dest="costaugFlag",
                      default=True)
    parser.add_option("--dynet-seed", type="int", dest="seed", default=0)
    parser.add_option("--dynet-mem", type="int", dest="mem", default=0)

    (options, args) = parser.parse_args()

    #print 'Using external embedding:', options.external_embedding

    if options.predictFlag:
        with open(options.params, 'r') as paramsfp:
            words, w2i, c2i, pos, rels, caps, stored_opt = pickle.load(
                paramsfp)
        stored_opt.external_embedding = None
        print 'Loading pre-trained model'
        parser = learner.jPosDepLearner(words, pos, rels, w2i, c2i, caps,
                                        stored_opt)
        parser.Load(options.model)

        testoutpath = os.path.join(options.output, options.conll_test_output)
        print 'Predicting POS tags and parsing dependencies'
        #ts = time.time()
        #test_pred = list(parser.Predict(options.conll_test))
        #te = time.time()
        #print 'Finished in', te-ts, 'seconds.'
        #utils.write_conll(testoutpath, test_pred)

        with open(testoutpath, 'w') as fh:
            for sentence in parser.Predict(options.conll_test):
                print sentence
                for entry in sentence[1:]:
                    fh.write(str(entry) + '\n')
Exemplo n.º 3
0
    (options, args) = parser.parse_args()

    #print 'Using external embedding:', options.external_embedding
    pretrained_flag = False

    if options.predictFlag:
        print("PREDICT...")
        with open(os.path.join(options.output, options.params),
                  'rb') as paramsfp:
            words, w2i, c2i, m2i, t2i, morph_dict, pos, rels, stored_opt = pickle.load(
                paramsfp)
        stored_opt.external_embedding = None

        print('Loading pre-trained model')
        parser = learner.jPosDepLearner(words, pos, rels, w2i, c2i, m2i, t2i,
                                        morph_dict, stored_opt)

        parser.Load(os.path.join(options.output, options.model))

        testoutpath = os.path.join(options.output, options.conll_test_output)
        print('Predicting POS tags and parsing dependencies')
        with open(testoutpath, 'w') as fh:
            for sentence in parser.Predict(options.conll_test):
                for entry in sentence[1:]:
                    fh.write(str(entry) + '\n')
                fh.write('\n')

    else:
        print("Training file: " + options.conll_train)
        highestScore = 0.0
        eId = 0