장거리 경기장은 효율적인 변압기 모델의 체계적인 평가를위한 노력입니다. 이 프로젝트는 일반화 전력, 계산 효율성, 메모리 풋 프린트 등을 평가함으로써 변압기 기반 모델을 체계적인 방식으로 평가할 수있는 벤치 마크 작업/DTASET을 설정하는 것을 목표로합니다.
장거리 경기장은 또한 아마를 사용하여 JAX에서 다양한 변압기 모델을 구현합니다.
이 첫 번째 초기 릴리스에는 종이 "장거리 경기장 : 효율적인 변압기를위한 벤치 마크의 벤치 마크가 포함됩니다.
현재 우리는 바닐라 변압기에서 벤치 마크를 시작하고 실행하는 데 필요한 모든 코드를 발표했습니다.
업데이트 실험에 사용 된 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 |
| 싱크 호른 트랜스. | 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 또는 게시)의 링크 (Arxiv 또는 게시)를 Yi Tay 또는 Mostafa Dehghani (종이의 이메일)에 보내십시오. 위와 마찬가지로 리더 보드의 외부 제출 부분에 결과를 추가합니다. 이것은 우리가 리더 보드에서 언덕 클리밍을 장려하지 않고 나란히 비교하는 것입니다.
우리는 귀하의 벤치 마크가 모델 동작 검사를위한 도구 및 스위트 역할을 할 계획입니다. 따라서 새 설정을 실행하고 HPARAMS를 조정 한 경우 다른 모든 모델을 실행하는 것이 좋습니다.
이 설정은 출판 된 결과와 직접 비교하려는 사람들을위한 것입니다.
기본 하이퍼 파라미터 설정 (각 벤치 마크에는 이제 구성 파일이 있어야합니다). 삽입 크기, 숨겨진 치수, 새 모델의 층 수와 같은 하이퍼 파라미터를 변경할 수 없습니다.
새 모델은 제공된 구성 파일의 기본 변압기 모델과 비교하여 매개 변수 측면에서 최상의 10% 더 큰 내에 있어야합니다.
모델 크기를 실행하고 모델의 하이퍼 파라미터를 변경할 수 있습니다. 그러나 결국, 더 이상 비교할 수 없기 때문에 리더 보드에서 결과를보고 할 수 없습니다. 비슷한 설정에서 라이브러리에서 모델을 다시 실행하도록 선택할 수 있습니다.
광범위한 Xformer 기준선을 개발하거나 혜택을 볼 수 있다면 새로운 벤치 마크 구축에 관심이 있는지 알려주십시오. 기존 제품군에서 다루지 않은 신규 또는 오래된 모델에 대한 기여를 환영합니다.
이 백서에서는 HPARAM 스윕을 우선 순위로 삼지 않았습니다. 구현 관련 문제 또는 특정 작업에서 모델이 더 잘 수행 할 수있는 더 나은 HPARAM을 찾으면 PR (또는 새 구성 파일)을 보내면 모델을 다시 실행하고 기존 모델에 대한 새로운 결과를보고합니다.
공식 결과는 코드베이스에서 확인되고 실행되는 코드에만 해당 됩니다. 우리는 모든 외부 제출물을 외부 로보고합니다. Codebase에서 모델을 실행하는 방법을 보여주는 이메일을 제출하고 그에 따라 결과를 업데이트합니다. (대역폭 제약으로 인해이 프로세스는 상당한 시간이 걸립니다).
작업을 실행하려면 해당 작업 디렉토리에서 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/longrange-arena/lra_release.gz에서 전체 gziped 파일을 다운로드 할 수 있습니다.
이 작업은 /listops 에서 찾을 수 있습니다. 실험에 사용 된 데이터 세트는 이러한 Google 클라우드 버킷에서 찾을 수 있으며 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 클라우드 버킷에서 Train/Test/Dev Splits를 다운로드하십시오. 불행히도, 우리는이 데이터 세트를 다시 분배 할 수 없었으며 형식 label paper1_id paper2_id 형식으로 ID를 공개하고 있습니다. 원래 소스에서 데이터를 다운로드하고 텍스트 데이터를 추출 할 수 있습니다.
이 작업은 /image 에서 찾을 수 있습니다. 이 작업은 이미 Tensorflow 데이터 세트에서 발견되었으므로 조치가 필요하지 않습니다. 상자에서 작동해야합니다.
Pathfinder 데이터 세트의 TFDS 빌더를 찾을 수있는 ./data 디렉토리를 참조하십시오. 우리는 Pathfinder 작업을위한 다른 데이터 세트를 생성했으며 여기에 제공된 스크립트를 사용하여 다른 수준의 어려움을 겪었습니다. ./data/pathfinder 의 TFDS Builder 코드의 데이터를 생성하는 데 사용되는 매개 변수에 대한 정보를 찾을 수 있습니다. 우리는 현재 릴리스를위한 정확한 데이터 분할을 준비하고 있습니다.
이것은 공식적인 Google 제품이 아닙니다.