rubentito's picture
Update README.md
db7728d
|
raw
history blame
3.74 kB
metadata
license: gpl-3.0
tags:
  - DocVQA
  - Document Question Answering
  - Document Visual Question Answering
datasets:
  - rubentito/mp-docvqa
language:
  - en

BigBird base (ITC) fine-tuned on MP-DocVQA

This is BigBird-base trained on TriviaQA from Google hub and fine-tuned on Multipage DocVQA (MP-DocVQA) dataset.

  • Due to Huggingface implementation, the global tokens are defined according to the Internal Transformer Construction (ITC) strategy.

This model was used as a baseline in Hierarchical multimodal transformers for Multi-Page DocVQA.

  • Results on the MP-DocVQA dataset are reported in Table 2.
  • Training hyperparameters can be found in Table 8 of Appendix D.

How to use

How to use this model to perform inference on a sample question and context in PyTorch:

from transformers import BigBirdForQuestionAnswering, BigBirdTokenizerFast

# by default its in `block_sparse` mode with num_random_blocks=3, block_size=64
model = BigBirdForQuestionAnswering.from_pretrained("rubentito/bigbird-base-itc-mpdocvqa")

# you can change `attention_type` to full attention like this:
model = BigBirdForQuestionAnswering.from_pretrained("rubentito/bigbird-base-itc-mpdocvqa", attention_type="original_full")

# you can change `block_size` & `num_random_blocks` like this:
model = BigBirdForQuestionAnswering.from_pretrained("rubentito/bigbird-base-itc-mpdocvqa", block_size=16, num_random_blocks=2)

tokenizer = BigBirdTokenizerFast.from_pretrained("rubentito/bigbird-base-itc-mpdocvqa")

question = "Replace me by any text you'd like."
context = "Put some context for answering"

encoded_input = tokenizer(question, context, return_tensors='pt')
output = model(**encoded_input)

start_pos = torch.argmax(output.start_logits, dim=-1).item()
end_pos = torch.argmax(output.end_logits, dim=-1).item()

context_tokens = tokenizer.convert_ids_to_tokens(encoded_input["input_ids"][0].tolist())
answer_tokens = context_tokens[start_pos: end_pos]
answer = tokenizer.decode(tokenizer.convert_tokens_to_ids(answer_tokens))

Model results

Extended experimentation can be found in Table 2 of Hierarchical multimodal transformers for Multi-Page DocVQA. You can also check the live leaderboard at the RRC Portal.

Model HF name Parameters ANLS APPA
Bert large rubentito/bert-large-mpdocvqa 334M 0.4183 51.6177
Longformer base rubentito/longformer-base-mpdocvqa 148M 0.5287 71.1696
BigBird ITC base rubentito/bigbird-base-itc-mpdocvqa 131M 0.4929 67.5433
LayoutLMv3 base rubentito/layoutlmv3-base-mpdocvqa 125M 0.4538 51.9426
T5 base rubentito/t5-base-mpdocvqa 223M 0.5050 0.0000
Hi-VT5 TBA 316M 0.6201 79.23

Citation Information

@article{tito2022hierarchical,
  title={Hierarchical multimodal transformers for Multi-Page DocVQA},
  author={Tito, Rub{\`e}n and Karatzas, Dimosthenis and Valveny, Ernest},
  journal={arXiv preprint arXiv:2212.05935},
  year={2022}
}