ccdv's picture
small fix
7e46f92
metadata
language:
  - en
tags:
  - summarization
datasets:
  - ccdv/mediasum
metrics:
  - rouge
model-index:
  - name: ccdv/lsg-bart-base-4096-mediasum
    results: []

Transformers >= 4.36.1
This model relies on a custom modeling file, you need to add trust_remote_code=True
See #13467

LSG ArXiv paper.
Github/conversion script is available at this link.

from transformers import AutoTokenizer, AutoModelForSeq2SeqLM, pipeline

tokenizer = AutoTokenizer.from_pretrained("ccdv/lsg-bart-base-4096-mediasum", trust_remote_code=True)
model = AutoModelForSeq2SeqLM.from_pretrained("ccdv/lsg-bart-base-4096-mediasum", trust_remote_code=True)

text = "Replace by what you want."
pipe = pipeline("text2text-generation", model=model, tokenizer=tokenizer, device=0)
generated_text = pipe(
  text, 
  truncation=True, 
  max_length=64, 
  no_repeat_ngram_size=7,
  num_beams=2,
  early_stopping=True
  )

ccdv/lsg-bart-base-4096-mediasum

This model is a fine-tuned version of ccdv/lsg-bart-base-4096 on the ccdv/mediasum roberta_prepended dataset.
It achieves the following results on the test set:

Length Sparse Type Block Size Sparsity Connexions R1 R2 RL RLsum
4096 Local 256 0 768 35.16 18.13 31.54 32.20
4096 Local 128 0 384 34.16 17.61 30.75 31.41
4096 Pooling 128 4 644 34.52 17.71 31.01 31.67
4096 Stride 128 4 644 35.05 18.11 31.47 32.13
4096 Block Stride 128 4 644 34.72 17.81 31.13 31.82
4096 Norm 128 4 644 34.75 17.86 31.10 31.77
4096 LSH 128 4 644 34.54 17.81 31.05 31.71

With smaller block size (lower ressources):

Length Sparse Type Block Size Sparsity Connexions R1 R2 RL RLsum
4096 Local 64 0 192 32.55 16.66 29.36 30.00
4096 Local 32 0 96 30.98 15.41 27.84 28.46
4096 Pooling 32 4 160 31.84 16.02 28.68 29.30
4096 Stride 32 4 160 32.67 16.68 29.47 30.10
4096 Block Stride 32 4 160 32.51 16.64 29.33 29.94
4096 Norm 32 4 160 32.44 16.48 29.20 29.79
4096 LSH 32 4 160 31.79 16.04 28.67 29.31

Model description

The model relies on Local-Sparse-Global attention to handle long sequences: attn

The model has about ~145 millions parameters (6 encoder layers - 6 decoder layers).
The model is warm started from BART-base, converted to handle long sequences (encoder only) and fine tuned.

Intended uses & limitations

More information needed

Training and evaluation data

More information needed

Training procedure

Training hyperparameters

The following hyperparameters were used during training:

  • learning_rate: 8e-05
  • train_batch_size: 8
  • seed: 42
  • gradient_accumulation_steps: 4
  • total_train_batch_size: 32
  • optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08
  • lr_scheduler_type: linear
  • lr_scheduler_warmup_ratio: 0.1
  • num_epochs: 6.0

Generate hyperparameters

The following hyperparameters were used during generation:

  • dataset_name: ccdv/mediasum
  • dataset_config_name: roberta_prepended
  • eval_batch_size: 8
  • eval_samples: 10000
  • early_stopping: True
  • ignore_pad_token_for_loss: True
  • length_penalty: 2.0
  • max_length: 128
  • min_length: 3
  • num_beams: 5
  • no_repeat_ngram_size: None
  • seed: 123

Framework versions

  • Transformers 4.18.0
  • Pytorch 1.10.1+cu102
  • Datasets 2.1.0
  • Tokenizers 0.11.6