xiaoman-zhang / KAD

MIT License
115 stars 9 forks source link

A2_KEBERT下的dataloader越界bug #16

Closed languandong closed 11 months ago

languandong commented 11 months ago

58行读取cui越界

`Traceback (most recent call last): File "main.py", line 271, in main() File "main.py", line 221, in main train_one_epoch(model, tokenizer, dataloader,num_batches,num_samples, epoch, optimizer, scaler, scheduler, args, writer) File "/media/cdrom1/lgd/KAD/A2_KEBERT/training/train.py", line 106, in train_one_epoch for i, batch in enumerate(dataloader): File "/media/cdrom1/lgd/anaconda3/envs/lgd/lib/python3.8/site-packages/torch/utils/data/dataloader.py", line 521, in next data = self._next_data() File "/media/cdrom1/lgd/anaconda3/envs/lgd/lib/python3.8/site-packages/torch/utils/data/dataloader.py", line 1203, in _next_data return self._process_data(data) File "/media/cdrom1/lgd/anaconda3/envs/lgd/lib/python3.8/site-packages/torch/utils/data/dataloader.py", line 1229, in _process_data data.reraise() File "/media/cdrom1/lgd/anaconda3/envs/lgd/lib/python3.8/site-packages/torch/_utils.py", line 425, in reraise raise self.exc_type(msg) KeyError: Caught KeyError in DataLoader worker process 0. Original Traceback (most recent call last): File "/media/cdrom1/lgd/anaconda3/envs/lgd/lib/python3.8/site-packages/pandas/core/indexes/range.py", line 385, in get_loc return self._range.index(new_key) ValueError: 141 is not in range

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/media/cdrom1/lgd/anaconda3/envs/lgd/lib/python3.8/site-packages/torch/utils/data/_utils/worker.py", line 287, in _worker_loop data = fetcher.fetch(index) File "/media/cdrom1/lgd/anaconda3/envs/lgd/lib/python3.8/site-packages/torch/utils/data/_utils/fetch.py", line 44, in fetch data = [self.dataset[idx] for idx in possibly_batched_index] File "/media/cdrom1/lgd/anaconda3/envs/lgd/lib/python3.8/site-packages/torch/utils/data/_utils/fetch.py", line 44, in data = [self.dataset[idx] for idx in possibly_batched_index] File "/media/cdrom1/lgd/KAD/A2_KEBERT/dataload.py", line 58, in getitem cui_h = self.umls_cui_source_list[select_idx] File "/media/cdrom1/lgd/anaconda3/envs/lgd/lib/python3.8/site-packages/pandas/core/series.py", line 942, in getitem return self._get_value(key) File "/media/cdrom1/lgd/anaconda3/envs/lgd/lib/python3.8/site-packages/pandas/core/series.py", line 1051, in _get_value loc = self.index.get_loc(label) File "/media/cdrom1/lgd/anaconda3/envs/lgd/lib/python3.8/site-packages/pandas/core/indexes/range.py", line 387, in get_loc raise KeyError(key) from err KeyError: 141 `

1benv commented 9 months ago

dataloader越界最后是怎么解决的呢