描述bug
LayoutXLM
当使用以下内容时,问题会出现:
- 自己的修改过的脚本:(详细说明如下)
一个清晰简洁的描述bug是什么。
预期行为
一个清晰简洁的描述你期望会发生什么。
代码如下:
export CUDA_VISIBLE_DEVICES=3
python3.7 examples/run_funsd.py \
--model_name_or_path microsoft/layoutxlm-base \
--output_dir ./output_funsd_ser \
--do_train \
--pad_to_max_length 1 \
--max_steps 1000 \
--warmup_ratio 0.1 \
--fp16
- 平台:Ubuntu 16.04
- Python版本:3.7
- PyTorch版本(GPU?):1.7.1+cu101
错误如下。
File "/usr/local/lib/python3.7/site-packages/transformers/trainer.py", line 1101, in train
for step, inputs in enumerate(epoch_iterator):
File "/usr/local/lib/python3.7/site-packages/torch/utils/data/dataloader.py", line 435, in __next__
data = self._next_data()
File "/usr/local/lib/python3.7/site-packages/torch/utils/data/dataloader.py", line 475, in _next_data
data = self._dataset_fetcher.fetch(index) # may raise StopIteration
File "/usr/local/lib/python3.7/site-packages/torch/utils/data/_utils/fetch.py", line 47, in fetch
return self.collate_fn(data)
File "/paddle/code/unilm/layoutlmft/layoutlmft/data/data_collator.py", line 74, in __call__
sequence_length = torch.tensor(batch["input_ids"]).shape[1]
ValueError: expected sequence of length 512 at dim 1 (got 572)
我打印了所有批次输入数据,长度为512,这里出现了572,非常奇怪。
似乎某些配置没有设置正确,但我无法找到原因,你能帮忙看一下吗?
1条答案
按热度按时间h5qlskok1#
我将
max_length=512
添加到函数参数列表中,问题得到了解决,这可能是一个bug。unilm/layoutlmft/examples/run_funsd.py
第169行 8da9d55
| | truncation=True, |