From 99b8906100f5139469203a718f4f8b84805a9af6 Mon Sep 17 00:00:00 2001 From: Matthew Honnibal Date: Tue, 2 Feb 2016 22:59:06 +0100 Subject: [PATCH] * Accept punct_labels as an argument to the scorer --- spacy/scorer.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/spacy/scorer.py b/spacy/scorer.py index 8ec3617c6..043cf5b2c 100644 --- a/spacy/scorer.py +++ b/spacy/scorer.py @@ -70,7 +70,7 @@ class Scorer(object): def ents_f(self): return self.ner.fscore * 100 - def score(self, tokens, gold, verbose=False): + def score(self, tokens, gold, verbose=False, punct_labels=('p', 'punct')): assert len(tokens) == len(gold) gold_deps = set() @@ -78,7 +78,7 @@ class Scorer(object): gold_ents = set(tags_to_entities([annot[-1] for annot in gold.orig_annot])) for id_, word, tag, head, dep, ner in gold.orig_annot: gold_tags.add((id_, tag)) - if dep.lower() not in ('p', 'punct'): + if dep.lower() not in punct_labels: gold_deps.add((id_, head, dep.lower())) cand_deps = set() cand_tags = set() @@ -87,12 +87,12 @@ class Scorer(object): continue gold_i = gold.cand_to_gold[token.i] if gold_i is None: - if token.dep_.lower() not in ('p', 'punct'): + if token.dep_.lower() not in punct_labels: self.tokens.fp += 1 else: self.tokens.tp += 1 cand_tags.add((gold_i, token.tag_)) - if token.dep_.lower() not in ('p', 'punct') and token.orth_.strip(): + if token.dep_.lower() not in punct_labels and token.orth_.strip(): gold_head = gold.cand_to_gold[token.head.i] # None is indistinct, so we can't just add it to the set # Multiple (None, None) deps are possible