val_csv_paths = [ args.root_dir + '/Data' + str(i) + '.csv' for i in range(args.val_start_year, args.val_final_year + 1) ] if args.gamma_list is not None and len(args.gamma_list) > 1 and len( args.gamma_list) % 2 != 0 and args.loss == 'qr_loss': print('Invalid gamma list') exit(0) dataset_final_len = args.final_len #if args.loss!='qr_loss' else 1 #or len(args.gamma_list)<=1 else int(args.final_len/2) model_final_len = args.final_len * len( args.gamma_list) if args.gamma_list != None else args.final_len train_dataset = Dataset.SRdata(tr_csv_paths, seq_len, steps=args.steps, final_len=dataset_final_len) train_data_loader = DataLoader(train_dataset, batch_size=b_sz, num_workers=n_wrkrs, drop_last=True) test_dataset = Dataset.SRdata(val_csv_paths, seq_len, steps=args.steps, final_len=dataset_final_len) test_data_loader = DataLoader(test_dataset, batch_size=b_sz, num_workers=n_wrkrs, drop_last=True)
parser.add_argument('--times_to_run' , type=int, default=200, help='Times to run the model when mode is predict_list') parser.add_argument('--gamma_list', type=float, nargs='*', help='Gammas for calculating q-risk') parser.add_argument('--mask_gamma_list', type=int, nargs='*', help='Masks for Gamma values, e.g. use :- to calculate only p50 or p90 risk') args = parser.parse_args() from DataSet import Dataset if args.test_year != -1 : csv_paths = [args.root_dir+'/Data'+str(args.test_year)+'.csv'] else : csv_paths = [args.root_dir+'/Data'+str(i)+'.csv' for i in range(args.test_start_year, args.test_final_year+1)] model_final_len = args.final_len*len(args.gamma_list) if args.gamma_list!=None else args.final_len dataset_final_len = args.final_len #if not args.interval or args.final_len<=1 else int(args.final_len/2) test_dataset = Dataset.SRdata(csv_paths, seq_len = args.seq_len, steps = args.steps, final_len=dataset_final_len) if args.model=='ar_net' : from Models import AR_Net t = AR_Net.ar_nt(seq_len = args.seq_len, ini_len=args.ini_len, final_len=model_final_len).to(device) elif args.model=='cnn_lstm' : from Models import CNN_LSTM t = CNN_LSTM.cnn_lstm(seq_len = args.seq_len, ini_len=args.ini_len, final_len=model_final_len).to(device) elif args.model=='trfrmr' : from Models import Transformer t = Transformer.trnsfrmr_nt(seq_len = args.seq_len, ini_len=args.ini_len, final_len=model_final_len).to(device) elif args.model=='LSTM' :