Пример #1
0
 def test_temporal_loader(self):
     loa = TemporalLoader(["month", "day", "day_of_week", "hour"],
                          self.kwargs)
     result = loa[0]
     self.assertEqual(len(result), 2)
     # Test output has proper dimensions
     # print(loa[0][0].shape)
     self.assertEqual(result[0][0].shape[0], 5)
     self.assertEqual(result[0][1].shape[1], 4)
     self.assertEqual(result[0][0].shape[1], 3)
     self.assertEqual(result[0][1].shape[0], 5)
     # Test output right order
     temporal_src_embd = result[0][1]
     second = temporal_src_embd[2, :]
     self.assertEqual(second[0], 5)
     self.assertEqual(second[1], 1)
     self.assertEqual(second[3], 3)
     # Test data loading component
     d = DataEmbedding(3, 128)
     embedding = d(result[0][0].unsqueeze(0),
                   temporal_src_embd.unsqueeze(0))
     self.assertEqual(embedding.shape[2], 128)
     i = Informer(3, 3, 3, 5, 5, out_len=4, factor=1)
     r0 = result[0][0].unsqueeze(0)
     r1 = result[0][1].unsqueeze(0)
     r3 = result[1][1].unsqueeze(0)
     r2 = result[1][0].unsqueeze(0)
     res = i(r0, r1, r3, r2)
     self.assertEqual(res.shape[1], 1)
 def test_decoding_3(self):
     informer_model2 = Informer(3, 3, 3, 48, 24, 12, factor=1)
     src = torch.rand(1, 48, 3)
     trg = torch.rand(1, 362, 3)
     src1 = torch.rand(1, 48, 4)
     trg1 = torch.rand(1, 362, 4)
     d = decoding_function(informer_model2, src, trg, 12, src1, trg1, 1, 36,
                           336, "cpu")
     self.assertEqual(d.shape[0], 1)
     self.assertEqual(d.shape[1], 336)
Пример #3
0
 def setUp(self):
     self.informer = Informer(3, 3, 3, 20, 20, 20, factor=1)
     self.kwargs = {
         "file_path": "tests/test_data/keag_small.csv",
         "forecast_history": 5,
         "forecast_length": 1,
         "target_col": ["cfs"],
         "relevant_cols": ["cfs", "temp", "precip"],
         "sort_column": "date",
         "feature_params": {
             "datetime_params": {
                 "month": "numerical",
                 "day": "numerical",
                 "day_of_week": "numerical",
                 "hour": "numerical"
             }
         }
     }
Пример #4
0
 def test_temporal_loader(self):
     kwargs = {
         "file_path": "tests/test_data/keag_small.csv",
         "forecast_history": 5,
         "forecast_length": 1,
         "target_col": ["cfs"],
         "relevant_cols": ["cfs", "temp", "precip"],
         "sort_column": "date",
         "feature_params": {
             "datetime_params": {
                 "month": "numerical",
                 "day": "numerical",
                 "day_of_week": "numerical",
                 "hour": "numerical"
             }
         }
     }
     loa = TemporalLoader(["month", "day", "day_of_week", "hour"], kwargs)
     result = loa[0]
     self.assertEqual(len(result), 2)
     # Test output has proper dimensions
     # print(loa[0][0].shape)
     self.assertEqual(result[0][0].shape[0], 5)
     self.assertEqual(result[0][1].shape[1], 4)
     self.assertEqual(result[0][0].shape[1], 3)
     self.assertEqual(result[0][1].shape[0], 5)
     # Test output right order
     temporal_src_embd = result[0][1]
     second = temporal_src_embd[2, :]
     self.assertEqual(second[0], 5)
     self.assertEqual(second[1], 1)
     self.assertEqual(second[3], 3)
     # Test data loading component
     d = DataEmbedding(3, 128)
     embedding = d(result[0][0].unsqueeze(0),
                   temporal_src_embd.unsqueeze(0))
     self.assertEqual(embedding.shape[2], 128)
     i = Informer(3, 3, 3, 5, 5, out_len=4, factor=1)
     r0 = result[0][0].unsqueeze(0)
     r1 = result[0][1].unsqueeze(0)
     r3 = result[1][1].unsqueeze(0)
     r2 = result[1][0].unsqueeze(0)
     res = i(r0, r1, r3, r2)
     self.assertEqual(res.shape[1], 1)
Пример #5
0
 def setUp(self):
     self.informer = Informer(3, 3, 3, 20, 20, 20, factor=1)