NielsRogge / Transformers-Tutorials

This repository contains demos I made with the Transformers library by HuggingFace.
MIT License
9.16k stars 1.42k forks source link

ValueError: too many values to unpack (expected 2) #341

Open madhavi1102 opened 1 year ago

madhavi1102 commented 1 year ago

@NielsRogge I have created custom dataset as below

class CustomFunsdDataset(Dataset): def init(self, filepath, processor): self.processor = processor self.df = create_df(filepath)

def __len__(self):
    return self.df.shape[0]

def __getitem__(self, idx):
    item = self.df.iloc[idx]
    image = Image.open(item['image']).convert("RGB")
    words = item['tokens']
    boxes = item['bboxes']
    word_labels = item['labels']

   encoding = self.processor(image, words, boxes=boxes, word_labels=word_labels,
                        max_length=512, truncation=True, padding = "max_length", return_tensors='pt')
    return encoding

and trading the model processor = LayoutLMv3Processor.from_pretrained("microsoft/layoutlmv3-base", apply_ocr=False) train_dataset = CustomFunsdDataset(os.path.join(path, "training_data"), processor) eval_dataset = CustomFunsdDataset(os.path.join(path, "testing_data"), processor)

model = LayoutLMv3ForTokenClassification.from_pretrained("microsoft/layoutlmv3-base") optimizer = AdamW(model.parameters(), lr=1e-5)

Throwing below error at line _, loss = model(**data)

File "/Users/Documents/projects_dl/ocr_layoutlmv3/core_layoutlmv3/data/main.py", line 23, in trainfn , loss = model(data) File "/Users//Documents/projects_dl/ocr_layoutlmv3/myenv/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl return forward_call(*args, *kwargs) File "/Users/Documents/projects_dl/ocr_layoutlmv3/myenv/lib/python3.9/site-packages/transformers/models/layoutlmv3/modeling_layoutlmv3.py", line 1103, in forward outputs = self.layoutlmv3( File "/Users/Documents/projects_dl/ocr_layoutlmv3/myenv/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl return forward_call(args, kwargs) File "/Users/Documents/projects_dl/ocr_layoutlmv3/myenv/lib/python3.9/site-packages/transformers/models/layoutlmv3/modeling_layoutlmv3.py", line 892, in forward batch_size, seq_length = input_shape ValueError: too many values to unpack (expected 2)

Please give some insights where, it is missing.

Thanks,