def test_evaluate_evidence4(self): N = 4 expect = { 'TPs': [6, 5, 4, 3], 'FPs': [0, 0, 0, 0], 'FNs': [0, 0, 0, 0], 'precision': 1, 'recall': 1, 'F-measure': 1, 'BLEU': 1, 'ROUGE': 1, 'exact_match': 1, 'partial_match': 1 } self.assertEqual(eval.evaluate_evidence(self.test_chunk, 3, N), expect)
def test_evaluate_evidence5(self): # pred: [1, 1, 1, 0, 0, 1] # and: [0, 1, 1, 1, 1, 1] N = 4 expect = { 'TPs': [3, 1, 0, 0], 'FPs': [1, 1, 1, 0], 'FNs': [2, 3, 3, 2], 'precision': 3/4, 'recall': 3/5, 'F-measure': 2/3, 'BLEU': (1/8)**(1/4), 'ROUGE': (1/50)**(1/4), 'exact_match': 0, 'partial_match': 1 } result = eval.evaluate_evidence(self.test_chunk, 4, N) float_keys = ['precision', 'recall', 'F-measure', 'BLEU', 'ROUGE'] for key in float_keys: self.assertAlmostEqual(result[key], expect[key]) expect.pop(key) result.pop(key) self.assertEqual(result, expect)
def test_evaluate_evidence7(self): N = 4 self.assertIsNone(eval.evaluate_evidence(self.test_chunk, 6, N))