LibCity / Bigscity-LibCity

LibCity: An Open Library for Urban Spatial-temporal Data Mining
https://libcity.ai/
Apache License 2.0
934 stars 168 forks source link

STID 运行 PEMSD4 和 PEMSD8 数据集报错,但PEMSD7 没问题 #438

Open HelloDuoLA opened 2 months ago

HelloDuoLA commented 2 months ago

Traceback (most recent call last): File "run_model.py", line 36, in run_model(task=args.task, model_name=args.model, dataset_name=args.dataset, File "/home/xiezhicong/Code/ospp/Bigscity-LibCity/libcity/pipeline/pipeline.py", line 57, in run_model executor.train(train_data, valid_data) File "/home/xiezhicong/Code/ospp/Bigscity-LibCity/libcity/executor/traffic_state_executor.py", line 297, in train losses = self._train_epoch(train_dataloader, epoch_idx, self.loss_func) File "/home/xiezhicong/Code/ospp/Bigscity-LibCity/libcity/executor/traffic_state_executor.py", line 369, in _train_epoch loss = loss_func(batch) File "/home/xiezhicong/Code/ospp/Bigscity-LibCity/libcity/model/traffic_speed_prediction/STID.py", line 178, in calculate_loss y_predicted = self.predict(batch) File "/home/xiezhicong/Code/ospp/Bigscity-LibCity/libcity/model/traffic_speed_prediction/STID.py", line 184, in predict return self.forward(batch) File "/home/xiezhicong/Code/ospp/Bigscity-LibCity/libcity/model/traffic_speed_prediction/STID.py", line 138, in forward time_series_emb = self.time_series_emb_layer(time_series_2) File "/home/xiezhicong/anaconda3/envs/libcity_py38/lib/python3.8/site-packages/torch/nn/modules/module.py", line 727, in _call_impl result = self.forward(*input, **kwargs) File "/home/xiezhicong/anaconda3/envs/libcity_py38/lib/python3.8/site-packages/torch/nn/modules/conv.py", line 423, in forward return self._conv_forward(input, self.weight) File "/home/xiezhicong/anaconda3/envs/libcity_py38/lib/python3.8/site-packages/torch/nn/modules/conv.py", line 419, in _conv_forward return F.conv2d(input, weight, self.bias, self.stride, RuntimeError: Given groups=1, weight of size [32, 36, 1, 1], expected input[64, 12, 307, 1] to have 36 channels, but got 12 channels instead