def setUp(self):
     self.lock = torch.multiprocessing.get_context('spawn').Lock()
     self.model = LSTMLayer(num_classes=5)
     cardinality = Cardinality(3, "", "")
     cardinality.list_classes = [1,1,1,2,2,3,4,5,6]
     cardinality.counter= {1:10, 2:100, 3:100, 4:100, 6:1000, 5:1000}
     cardinality.compute_position()
     self.result = Result(cardinality)
Пример #2
0
    def test_compute_position(self):
        cardinality = Cardinality(3, "", "")
        cardinality.list_classes = [1, 1, 1, 2, 2, 3, 4, 5, 6]
        cardinality.counter = {1: 10, 2: 100, 3: 100, 4: 100, 6: 1000, 5: 1000}
        cardinality.compute_position()
        self.assertEqual(len(cardinality.set_classes_kept), 3)
        self.assertEqual(list(cardinality.list_position), [3, 4, 5, 6])
        self.assertEqual(cardinality.number_of_classes, 5)

        self.assertEqual(len(cardinality), 4)
Пример #3
0
    def test_compute_position_one_model(self):
        cardinality = Cardinality(3,
                                  "",
                                  "",
                                  one_model=True,
                                  set_cardinalities=[1, 2, 3, 4, 5])
        cardinality.list_classes = [1, 1, 1, 2, 2, 3, 4, 5, 6]
        cardinality.counter = {1: 10, 2: 100, 3: 100, 4: 100, 6: 1000, 5: 1000}
        cardinality.compute_position()
        self.assertEqual(len(cardinality.set_classes_kept), 6)
        self.assertEqual(list(cardinality.list_position),
                         [0, 1, 2, 3, 4, 5, 6, 7, 8])
        self.assertEqual(cardinality.number_of_classes, 7)

        self.assertEqual(len(cardinality), 9)
Пример #4
0
    def test_getitem(self):
        cardinality = Cardinality(3, "", "")
        cardinality.size_windows = 4
        cardinality.list_classes = [
            1, 1, 1, 2, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 3,
            4, 5, 6
        ]
        cardinality.counter = {1: 10, 2: 100, 3: 100, 4: 100, 6: 1000, 5: 1000}
        cardinality.w2v = {
            "1": [1] * 20,
            "2": [2] * 20,
            "3": [3] * 20,
            "4": [4] * 20,
            "5": [5] * 20,
            "6": [6] * 20,
            "7": [7] * 20
        }
        cardinality.list_position = range(len(cardinality.list_classes))

        # Normal
        output_getitem = cardinality.__getitem__(
            len(cardinality.list_classes) - 1)
        self.assertEqual(output_getitem['output'], 6)
        self.assertEqual(len(list(output_getitem['input'][0])), 20)
        self.assertEqual(len(list(output_getitem['input'])), 4)

        # Invalid
        output_getitem = cardinality.__getitem__(0)
        self.assertListEqual(list(output_getitem['input']), [-1])
        self.assertEqual(output_getitem['output'], -1)

        # Invalid due to the same pattern
        output_getitem = cardinality.__getitem__(1)
        self.assertEqual(output_getitem['output'], -1)
        self.assertListEqual(list(output_getitem['input']), [-1])
        self.assertEqual(output_getitem['output'], -1)

        # Padding
        output_getitem = cardinality.__getitem__(5)
        self.assertEqual(output_getitem['output'], 1)
        self.assertEqual(len(list(output_getitem['input'][0])), 20)
        self.assertEqual(len(list(output_getitem['input'])), 4)
Пример #5
0
 def test_compute_position_void(self):
     cardinality = Cardinality(3, "", "")
     cardinality.list_classes = []
     cardinality.counter = {1: 10, 2: 100, 3: 100, 4: 100, 6: 1000, 5: 1000}
     cardinality.compute_position()
     self.assertEqual(cardinality.number_of_classes, 0)