File size: 1,314 Bytes
093b0a5 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | from data_provider.data_loader import (
Dataset_ETT_hour,
Dataset_ETT_minute,
Dataset_Custom,
Dataset_Pred,
)
from torch.utils.data import DataLoader
data_dict = {
"ETTh1": Dataset_ETT_hour,
"ETTh2": Dataset_ETT_hour,
"ETTm1": Dataset_ETT_minute,
"ETTm2": Dataset_ETT_minute,
"WTH": Dataset_Custom,
"ECL": Dataset_Custom,
"Solar": Dataset_Custom,
"custom": Dataset_Custom,
}
def data_provider(args, flag):
Data = data_dict[args.data]
assert (
not args.inverse
) or args.scale, "Can't enable inverse without enabling scale"
if flag == "test":
shuffle_flag = False
drop_last = True
batch_size = args.batch_size
# freq = args.freq
elif flag == "pred":
shuffle_flag = False
drop_last = False
batch_size = 1
# freq = args.detail_freq
Data = Dataset_Pred
else:
shuffle_flag = True
drop_last = True
batch_size = args.batch_size
# freq = args.freq
data_set = Data(args, flag=flag)
print(flag, len(data_set))
data_loader = DataLoader(
data_set,
batch_size=batch_size,
shuffle=shuffle_flag,
num_workers=args.num_workers,
drop_last=drop_last,
)
return data_set, data_loader
|