Skip to content

Latest commit

 

History

History
176 lines (117 loc) · 6.79 KB

big_bird.md

File metadata and controls

176 lines (117 loc) · 6.79 KB

BigBird

Overview

BigBird モデルは、Big Bird: Transformers for Longer Sequences で提案されました。 ザヒール、マンジルとグルガネシュ、グルとダベイ、クマール・アヴィナヴァとエインズリー、ジョシュアとアルベルティ、クリスとオンタノン、 サンティアゴとファム、フィリップとラブラ、アニルードとワン、キーファンとヤン、リーなど。 BigBird は注目度が低い BERT などの Transformer ベースのモデルをさらに長いシーケンスに拡張する、Transformer ベースのモデル。まばらに加えて アテンションと同様に、BigBird は入力シーケンスにランダム アテンションだけでなくグローバル アテンションも適用します。理論的には、 まばらで全体的でランダムな注意を適用すると、完全な注意に近づくことが示されていますが、 長いシーケンスでは計算効率が大幅に向上します。より長いコンテキストを処理できる機能の結果として、 BigBird は、質問応答や BERT または RoBERTa と比較した要約。

論文の要約は次のとおりです。

BERT などのトランスフォーマーベースのモデルは、NLP で最も成功した深層学習モデルの 1 つです。 残念ながら、それらの中核的な制限の 1 つは、シーケンスに対する二次依存性 (主にメモリに関する) です。 完全な注意メカニズムによる長さです。これを解決するために、BigBird は、まばらな注意メカニズムを提案します。 この二次依存関係を線形に削減します。 BigBird がシーケンス関数の汎用近似器であることを示します。 チューリングは完全であるため、二次完全注意モデルのこれらの特性が保存されます。途中、私たちの 理論分析により、O(1) 個のグローバル トークン (CLS など) を持つ利点の一部が明らかになり、 スパース注意メカニズムの一部としてのシーケンス。提案されたスパース アテンションは、次の長さのシーケンスを処理できます。 同様のハードウェアを使用して以前に可能であったものの 8 倍。より長いコンテキストを処理できる機能の結果として、 BigBird は、質問応答や要約などのさまざまな NLP タスクのパフォーマンスを大幅に向上させます。私達も ゲノミクスデータへの新しいアプリケーションを提案します。

チップ:

  • BigBird の注意がどのように機能するかについての詳細な説明については、このブログ投稿 を参照してください。

  • BigBird には、original_fullblock_sparse の 2 つの実装が付属しています。シーケンス長が 1024 未満の場合、次を使用します。 block_sparse を使用してもメリットがないため、original_full を使用することをお勧めします。

  • コードは現在、3 ブロックと 2 グローバル ブロックのウィンドウ サイズを使用しています。

  • シーケンスの長さはブロック サイズで割り切れる必要があります。

  • 現在の実装では ITC のみがサポートされています。

  • 現在の実装では num_random_blocks = 0 はサポートされていません

  • BigBird は絶対位置埋め込みを備えたモデルであるため、通常は入力を右側にパディングすることをお勧めします。 左。

    このモデルは、vasudevgupta によって提供されました。元のコードが見つかる こちら

ドキュメント リソース

BigBirdConfig

[[autodoc]] BigBirdConfig

BigBirdTokenizer

[[autodoc]] BigBirdTokenizer - build_inputs_with_special_tokens - get_special_tokens_mask - create_token_type_ids_from_sequences - save_vocabulary

BigBirdTokenizerFast

[[autodoc]] BigBirdTokenizerFast

BigBird specific outputs

[[autodoc]] models.big_bird.modeling_big_bird.BigBirdForPreTrainingOutput

BigBirdModel

[[autodoc]] BigBirdModel - forward

BigBirdForPreTraining

[[autodoc]] BigBirdForPreTraining - forward

BigBirdForCausalLM

[[autodoc]] BigBirdForCausalLM - forward

BigBirdForMaskedLM

[[autodoc]] BigBirdForMaskedLM - forward

BigBirdForSequenceClassification

[[autodoc]] BigBirdForSequenceClassification - forward

BigBirdForMultipleChoice

[[autodoc]] BigBirdForMultipleChoice - forward

BigBirdForTokenClassification

[[autodoc]] BigBirdForTokenClassification - forward

BigBirdForQuestionAnswering

[[autodoc]] BigBirdForQuestionAnswering - forward

FlaxBigBirdModel

[[autodoc]] FlaxBigBirdModel - call

FlaxBigBirdForPreTraining

[[autodoc]] FlaxBigBirdForPreTraining - call

FlaxBigBirdForCausalLM

[[autodoc]] FlaxBigBirdForCausalLM - call

FlaxBigBirdForMaskedLM

[[autodoc]] FlaxBigBirdForMaskedLM - call

FlaxBigBirdForSequenceClassification

[[autodoc]] FlaxBigBirdForSequenceClassification - call

FlaxBigBirdForMultipleChoice

[[autodoc]] FlaxBigBirdForMultipleChoice - call

FlaxBigBirdForTokenClassification

[[autodoc]] FlaxBigBirdForTokenClassification - call

FlaxBigBirdForQuestionAnswering

[[autodoc]] FlaxBigBirdForQuestionAnswering - call