远程竞技场是对有效变压器模型进行系统评估的努力。该项目旨在通过评估其概括能力,计算效率,内存足迹等,以系统的方式评估基于变形金刚的模型来建立基准任务/DTASET。
远程竞技场还使用亚麻在JAX中实现了变压器模型的不同变体。
第一个初始版本包括纸张“远程领域:有效变压器的基准”的基准。
目前,我们发布了所有必要的代码,以开始并在Vanilla Transformers上运行我们的基准测试。
更新我们已经发布了实验中使用的Xformer模型。
我们正在研究第二个更新,该更新将为此基准套件发布更多模型和基线。敬请关注。
请参阅下面的更多示例,了解如何入门。
当前所有Xformer结果的排行榜结果在我们的基准结果上。 (截至2020年11月8日)
| 模型 | ListOps | 文本 | 检索 | 图像 | 小路 | path-x | avg |
|---|---|---|---|---|---|---|---|
| 本地att | 15.82 | 52.98 | 53.39 | 41.46 | 66.63 | 失败 | 46.06 |
| 线性译。 | 16.13 | 65.90 | 53.09 | 42.34 | 75.30 | 失败 | 50.55 |
| 改革家 | 37.27 | 56.10 | 53.40 | 38.07 | 68.50 | 失败 | 50.67 |
| 稀疏的反式。 | 17.07 | 63.58 | 59.59 | 44.24 | 71.71 | 失败 | 51.24 |
| sindhorn trans。 | 33.67 | 61.20 | 53.83 | 41.23 | 67.45 | 失败 | 51.29 |
| Linformer | 35.70 | 53.94 | 52.27 | 38.56 | 76.34 | 失败 | 51.36 |
| 演员 | 18.01 | 65.40 | 53.82 | 42.77 | 77.05 | 失败 | 51.41 |
| 合成器 | 36.99 | 61.68 | 54.67 | 41.61 | 69.45 | 失败 | 52.88 |
| longformer | 35.63 | 62.85 | 56.89 | 42.22 | 69.71 | 失败 | 53.46 |
| 变压器 | 36.37 | 64.27 | 57.46 | 42.44 | 71.40 | 失败 | 54.39 |
| 大鸟 | 36.05 | 64.02 | 59.29 | 40.83 | 74.87 | 失败 | 55.01 |
我们列出了使用LRA基准测试的其他论文和提交的条目。
| 模型 | ListOps | 文本 | 检索 | 图像 | 小路 | path-x | avg |
|---|---|---|---|---|---|---|---|
| 冰屋 | 39.23 | 82 | 75.5 | 47.0 | 67.50 | na | 62.25 |
| TLB | 37.05 | 81.88 | 76.91 | 57.51 | 79.06 | 失败 | 66.48 |
Igloo提交(由Vsevolod Sourkov)-https://github.com/redna11/lra-igloo
TLB(暂时潜在瓶颈)-Transformer_TLB
如果您发现工作有用,请引用我们的论文:
@inproceedings{
tay2021long,
title={Long Range Arena : A Benchmark for Efficient Transformers },
author={Yi Tay and Mostafa Dehghani and Samira Abnar and Yikang Shen and Dara Bahri and Philip Pham and Jinfeng Rao and Liu Yang and Sebastian Ruder and Donald Metzler},
booktitle={International Conference on Learning Representations},
year={2021},
url={https://openreview.net/forum?id=qVyeW-grC2k}
}
**注意:请参考这些数据集的原始来源! **
请将论文(ARXIV或已发布)的链接发送到Yi Tay或Mostafa Dehghani(纸上的电子邮件),以将您的新结果包括在排行榜上。就像上面一样,我们将为排行榜的外部提交部分添加结果。这样一来,我们就不会鼓励在排行榜上攀爬爬山,而是并排比较。
我们打算让您的基准作为检查模型行为的工具和套件。因此,如果您正在运行新的设置并且已经调整了HPARAMS,请考虑运行所有其他型号。
此设置适用于希望直接与我们发布的结果进行比较的人们。
默认的超参数设置(每个基准测试现在应该具有一个配置文件)。不允许您更改超参数,例如嵌入尺寸,隐藏尺寸,新模型的层数。
与提供的配置文件中的基本变压器模型相比,新模型应在参数方面最多在10%之内。
您可以运行任何型号大小并更改模型的任何超参数。但是,最终,您不允许您报告我们的排行榜结果,因为它们不再可比。您可以在可比较的环境中选择从我们的库重新运行模型。
如果您开发或可以从广泛的Xformer基线中受益,请随时让我们知道您是否有兴趣构建新的基准测试。我们欢迎为现有套件中未涵盖的新型号做出贡献。
在本文中,我们没有优先考虑进行HPARAM扫描。如果您碰巧找到与实现相关的问题或更好的HPARAM,该问题允许模型在某个任务上做得更好,请发送PR(或新的配置文件),我们将在内部再次运行该模型,并为现有模型报告新的结果。
官方结果仅用于已在我们的代码库中验证和运行的代码。我们将所有外部提交报告为外部。要么提交PR,要么向我们展示如何在代码库中运行您的模型,我们将相应地更新结果。 (请注意,由于带宽的约束,此过程将花费大量时间)。
要运行任务,请在相应的任务目录中运行train.py文件。 (如果适用,请查看如何获取某些任务的数据)。
PYTHONPATH="$(pwd)":"$PYTHON_PATH" python lra_benchmarks/listops/train.py
--config=lra_benchmarks/listops/configs/transformer_base.py
--model_dir=/tmp/listops
--task_name=basic
--data_dir=$HOME/lra_data/listops/
本节介绍获取数据集并在LRA中运行任务的方法。
要下载数据集,请从gs://long-range-arena/lra_release下载它。如果权限失败,您可以在https://storage.googleapis.com/long-range-arena/lra_release.gz上下载整个GZIPED文件。
可以在/listops找到此任务。我们实验中使用的数据集可以在这些Google Cloud Bucket上找到,并以TSV格式找到。
如果您想延长/较短的序列长度,我们还支持生成自己的拆分,请运行以下评论:
PYTHONPATH="$(pwd)":"$PYTHON_PATH" python lra_benchmarks/data/listops.py --
--output_dir=$HOME/lra_data/listops/
可以在/text_classification找到此任务。不需要操作,因为此任务已经在TensorFlow数据集中找到。代码应按原样运行。
请在(http://aan.how/download/)下载数据集。请从我们的Google Cloud Bucket下载火车/测试/开发拆分。不幸的是,我们无法重新分配此数据集,并且仅在格式label paper1_id paper2_id中释放ID。您可以从原始源下载数据并提取文本数据。
可以在/image中找到此任务。不需要操作,因为此任务已经在TensorFlow数据集中找到。它应该开箱即用。
请参阅./data目录,其中可以找到探路者数据集的TFDS构建器。我们使用此处提供的脚本生成了用于探路者任务的不同数据集,但难度不同。您可以在./data/pathfinder中找到有关用于生成数据中数据的参数的信息。我们正在准备目前发布的确切数据拆分。
这不是官方的Google产品。