mirror of
https://github.com/explosion/spaCy.git
synced 2024-11-10 19:57:17 +03:00
* Remove projectivity constraint in train.py, but raise Exception if non-projective sentence is encountered, since we've told GoldParse to projectivize
This commit is contained in:
parent
ee3e56f27b
commit
59e9f9153c
|
@ -130,14 +130,13 @@ def train(Language, gold_tuples, model_dir, n_iter=15, feat_set=u'basic',
|
||||||
raw_text = add_noise(raw_text, corruption_level)
|
raw_text = add_noise(raw_text, corruption_level)
|
||||||
tokens = nlp.tokenizer(raw_text)
|
tokens = nlp.tokenizer(raw_text)
|
||||||
nlp.tagger(tokens)
|
nlp.tagger(tokens)
|
||||||
gold = GoldParse(tokens, annot_tuples, make_projective=False)
|
gold = GoldParse(tokens, annot_tuples, make_projective=True)
|
||||||
if not gold.is_projective:
|
if not gold.is_projective:
|
||||||
raise Exception(
|
raise Exception(
|
||||||
"Non-projective sentence in training, after we should "
|
"Non-projective sentence in training, after we should "
|
||||||
"have enforced projectivity: %s" % annot_tuples
|
"have enforced projectivity: %s" % annot_tuples
|
||||||
)
|
)
|
||||||
loss += nlp.parser.train(tokens, gold)
|
loss += nlp.parser.train(tokens, gold)
|
||||||
|
|
||||||
nlp.entity.train(tokens, gold)
|
nlp.entity.train(tokens, gold)
|
||||||
nlp.tagger.train(tokens, gold.tags)
|
nlp.tagger.train(tokens, gold.tags)
|
||||||
random.shuffle(gold_tuples)
|
random.shuffle(gold_tuples)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user