def test_confusion_matrix(self): annotations1 = Annotations(join(self.dataset.get_data_directory(), self.ann_files[0]), annotation_type='ann') annotations2 = Annotations(join(self.dataset.get_data_directory(), self.ann_files[1]), annotation_type='ann') annotations1.add_entity(*annotations2.get_entity_annotations()[0]) self.assertEqual(len(annotations1.compute_confusion_matrix(annotations2, self.entities)[0]), len(self.entities)) self.assertEqual(len(annotations1.compute_confusion_matrix(annotations2, self.entities)), len(self.entities))
def test_compute_ambiguity(self): annotations1 = Annotations(join(self.dataset.get_data_directory(), self.ann_files[0]), annotation_type='ann') annotations2 = Annotations(join(self.dataset.get_data_directory(), self.ann_files[0]), annotation_type='ann') label, start, end, text = annotations2.get_entity_annotations()[0] annotations2.add_entity('incorrect_label', start, end, text) self.assertEqual(len(annotations1.compute_ambiguity(annotations2)), 1)
def test_intersection(self): annotations1 = Annotations(join(self.dataset.get_data_directory(), self.ann_files[0]), annotation_type='ann') annotations2 = Annotations(join(self.dataset.get_data_directory(), self.ann_files[1]), annotation_type='ann') annotations1.add_entity(*annotations2.get_entity_annotations()[0]) annotations1.add_entity(*annotations2.get_entity_annotations()[1]) self.assertEqual( annotations1.intersection(annotations2), set([ annotations2.get_entity_annotations()[0], annotations2.get_entity_annotations()[1] ]))