zjunlp / MKG_Analogy

[ICLR 2023] Multimodal Analogical Reasoning over Knowledge Graphs
https://zjunlp.github.io/project/MKG_Analogy/
MIT License
99 stars 11 forks source link

KeyError:'label' #13

Closed wwhzyh closed 1 year ago

wwhzyh commented 1 year ago

作者您好,抱歉打扰,我在运行 bash scripts/run_pretrain_mkgformer.sh 时,遇到这样的问题: File "/home/zzz/zzz/miniconda3/envs/base_G/lib/python3.10/site-packages/torch/utils/data/dataloader.py", line 652, in next data = self._next_data() File "/home/zzz/zzz/miniconda3/envs/base_G/lib/python3.10/site-packages/torch/utils/data/dataloader.py", line 692, in _next_data data = self._dataset_fetcher.fetch(index) # may raise StopIteration File "/home/zzz/zzz/miniconda3/envs/base_G/lib/python3.10/site-packages/torch/utils/data/_utils/fetch.py", line 52, in fetch return self.collate_fn(data) File "/mnt/dataX/zzz/www/MKG_Analogy-main/MarT/data/data_module.py", line 98, in call label = [feature.pop("label") for feature in features] File "/mnt/dataX/zzz/www/MKG_Analogy-main/MarT/data/data_module.py", line 98, in label = [feature.pop("label") for feature in features] KeyError: 'label' Epoch 0: 67%|██████▋ | 1042/1562 [11:29<05:43, 1.51it/s, loss=10.5, v_num=12]

把data_module.py,line98行改成这样: label = [feature.pop("label") for feature in features] if "label" in features[0].keys() else None 它仍然报错: File "/home/zzz/zzz/miniconda3/envs/base_G/lib/python3.10/site-packages/torch/utils/data/dataloader.py", line 652, in next data = self._next_data() File "/home/zzz/zzz/miniconda3/envs/base_G/lib/python3.10/site-packages/torch/utils/data/dataloader.py", line 692, in _next_data data = self._dataset_fetcher.fetch(index) # may raise StopIteration File "/home/zzz/zzz/miniconda3/envs/base_G/lib/python3.10/site-packages/torch/utils/data/_utils/fetch.py", line 52, in fetch return self.collate_fn(data) File "/mnt/dataX/zzz/www/MKG_Analogy-main/MarT/data/data_module.py", line 130, in call for head, tail in zip(head_ent, tail_ent): TypeError: 'NoneType' object is not iterable Epoch 0: 67%|██████▋ | 1042/1562 [11:31<05:44, 1.51it/s, loss=10.5, v_num=13]

找不到原因 您方便的时候能解答一下吗?

flow3rdown commented 1 year ago

请问您有没有修改过脚本中的参数呢?比如batch_size,看样子是在测试时出现的问题。

Disheng23 commented 1 year ago

我也遇到了这样的问题,同样是读到67%时报了相同的错误,batch_size我没有修改,我在调试的时候发现,程序执行到代码报错的MKG_Analogy-main/MarT/data/data_module.py-->DataCollatorForSeq2Seq-->def call(self, features, return_tensors=None):, 此时的输入参数features中所有字典元素只有["input_ids", "attention_mask", @@"token_type_ids"]这三个key键,没有其它的key(label,head_ent等),我尝试修复此问题,但没有结果,我没有找到具体如何构造了这个输入参数features 怀疑是数据集读取sampler出现了问题,但我没有找到 @flow3rdown

wwhzyh commented 1 year ago

请问您有没有修改过脚本中的参数呢?比如batch_size,看样子是在测试时出现的问题。

我没修改过脚本中的参数,batch_size没动过哇

flow3rdown commented 1 year ago

请问您有没有修改过脚本中的参数呢?比如batch_size,看样子是在测试时出现的问题。

我没修改过脚本中的参数,batch_size没动过哇

能看一下运行脚本和运行日志细节吗?我重跑了一下没出现这个问题

wwhzyh commented 1 year ago

请问您有没有修改过脚本中的参数呢?比如batch_size,看样子是在测试时出现的问题。

我没修改过脚本中的参数,batch_size没动过哇

能看一下运行脚本和运行日志细节吗?我重跑了一下没出现这个问题

wwhzyh commented 1 year ago

请问您有没有修改过脚本中的参数呢?比如batch_size,看样子是在测试时出现的问题。

我没修改过脚本中的参数,batch_size没动过哇

能看一下运行脚本和运行日志细节吗?我重跑了一下没出现这个问题

log.txt requirements.txt run_pretrain_mkgformer.zip 这是相关文件。麻烦您帮忙看看问题

flow3rdown commented 1 year ago

你把运行脚本中的num_workers设为4试一下

wwhzyh commented 1 year ago

你把运行脚本中的num_workers设为4试一下

可以了,就是这个问题,感谢感谢!