英文

Transformers >= 4.23.1 这个模型依赖于自定义的建模文件,需要添加 trust_remote_code=True 查看 #13467

LSG ArXiv paper . Github/conversion 脚本可在此 link 找到。

from transformers import AutoTokenizer, AutoModelForSeq2SeqLM, pipeline

tokenizer = AutoTokenizer.from_pretrained("ccdv/lsg-bart-base-4096-wcep", trust_remote_code=True)
model = AutoModelForSeq2SeqLM.from_pretrained("ccdv/lsg-bart-base-4096-wcep", 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)

ccdv/lsg-bart-base-4096-wcep

这个模型是在 ccdv/lsg-bart-base-4096 的基础上经过微调得到的,使用了 ccdv/WCEP-10 roberta 数据集。 在测试集上取得了以下结果:

Length Sparse Type Block Size Sparsity Connexions R1 R2 RL RLsum
4096 Local 256 0 768 46.02 24.23 37.38 38.72
4096 Local 128 0 384 45.43 23.86 36.94 38.30
4096 Pooling 128 4 644 45.36 23.61 36.75 38.06
4096 Stride 128 4 644 45.87 24.31 37.41 38.70
4096 Block Stride 128 4 644 45.78 24.16 37.20 38.48
4096 Norm 128 4 644 45.34 23.39 36.47 37.78
4096 LSH 128 4 644 45.15 23.53 36.74 38.02

使用较小的块大小(较低的资源):

Length Sparse Type Block Size Sparsity Connexions R1 R2 RL RLsum
4096 Local 64 0 192 44.48 22.98 36.20 37.52
4096 Local 32 0 96 43.60 22.17 35.61 36.66
4096 Pooling 32 4 160 43.91 22.41 35.80 36.92
4096 Stride 32 4 160 44.62 23.11 36.32 37.53
4096 Block Stride 32 4 160 44.47 23.02 36.28 37.46
4096 Norm 32 4 160 44.45 23.03 36.10 37.33
4096 LSH 32 4 160 43.87 22.50 35.75 36.93

模型描述

该模型使用本地稀疏全局注意力机制处理长序列:

该模型约有145百万参数(6个编码器层 - 6个解码器层)。该模型从BART-base启动,转为处理长序列(仅编码器部分),并进行微调。

预期用途和限制

需要更多信息。

训练和评估数据

需要更多信息。

训练过程

训练超参数

训练过程中使用了以下超参数:

  • 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: 10.0

生成超参数

生成过程中使用了以下超参数:

  • dataset_name: ccdv/WCEP-10
  • dataset_config_name: roberta
  • eval_batch_size: 8
  • eval_samples: 1022
  • early_stopping: True
  • ignore_pad_token_for_loss: True
  • length_penalty: 2.0
  • max_length: 64
  • min_length: 0
  • num_beams: 5
  • no_repeat_ngram_size: None
  • seed: 123

框架版本

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