| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| |
|
| | from .bleu_scorer import BleuScorer |
| |
|
| |
|
| | class Bleu: |
| | def __init__(self, n=4): |
| | |
| | self._n = n |
| | self._hypo_for_image = {} |
| | self.ref_for_image = {} |
| |
|
| | def compute_score(self, gts, res): |
| |
|
| | bleu_scorer = BleuScorer(n=self._n) |
| | for i in range(len(res)): |
| | hypo = res[i] |
| | ref = gts[i] |
| |
|
| | |
| | assert(type(hypo) is list) |
| | assert(len(hypo) == 1) |
| | assert(type(ref) is list) |
| | assert(len(ref) >= 1) |
| |
|
| | bleu_scorer += (hypo[0], ref) |
| |
|
| | |
| | score, scores = bleu_scorer.compute_score(option='closest', verbose=1) |
| | |
| |
|
| | |
| | return score, scores |
| |
|
| | def method(self): |
| | return "Bleu" |
| |
|