[論文レビュー] Funnel-Transformer: Filtering out Sequential Redundancy for Efficient Language Processing
Funnel-Transformer は トークン列を 逐次圧縮して 計算量を削減し、必要時に デコーダを用いて トークンレベルの表現を回復する。これにより、シーケンスレベルのタスクで 同等またはそれより良い性能を維持しつつ 効率を改善する。
With the success of language pretraining, it is highly desirable to develop more efficient architectures of good scalability that can exploit the abundant unlabeled data at a lower cost. To improve the efficiency, we examine the much-overlooked redundancy in maintaining a full-length token-level presentation, especially for tasks that only require a single-vector presentation of the sequence. With this intuition, we propose Funnel-Transformer which gradually compresses the sequence of hidden states to a shorter one and hence reduces the computation cost. More importantly, by re-investing the saved FLOPs from length reduction in constructing a deeper or wider model, we further improve the model capacity. In addition, to perform token-level predictions as required by common pretraining objectives, Funnel-Transformer is able to recover a deep representation for each token from the reduced hidden sequence via a decoder. Empirically, with comparable or fewer FLOPs, Funnel-Transformer outperforms the standard Transformer on a wide variety of sequence-level prediction tasks, including text classification, language understanding, and reading comprehension. The code and pretrained checkpoints are available at https://github.com/laiguokun/Funnel-Transformer.
研究の動機と目的
- Transformer ベースの言語モデルにおける全長トークン表現の冗長性を減らす動機付け。
- FLOPsとメモリを節約するために、ブロック間でシーケンス長を圧縮する階層型エンコーダを提案する。
- 節約した計算量を再投資して、より深くまたは広くモデルの容量を高めることを実証する。
- 前提学習目的を変更せずに、圧縮表現から全長表現をデコードしてトークンレベルの予測を可能にする。
提案手法
- Transformerのバックボーンを維持しつつ、プーリングによりブロック間でシーケンス長を段階的に半減させるエンコーダを追加する。
- クエリにのみプーリングを適用し、キー/バリューは非プール済みのシーケンスから取得する pool-query-only アテンション設計を用いる。
- ブロック境界でシーケンス長を半分にするため、単純なストライド平均プーリング(窓幅2、ストライド2)を適用する。
- 圧縮されたエンコーダ出力をアップサンプルし、最初のブロックの隠れ状態と融合させて、前 pretrained objectives のためのトークンレベル表現を回復するデコーダを実装する。
- MLM または ELECTRA の目的で訓練し、事前学習 paradigms の一般性を示す。
- 計算量の利点を議論する:各半減ステップはフロップの超線形削減をもたらし、同程度の計算資源下でより深いまたは広いモデルを実現できる。
実験結果
リサーチクエスチョン
- RQ1隠れ状態列を逐次圧縮することで、標準的な Transformer と同等またはそれ以上の性能を、より少ない FLOPs で達成できるか?
- RQ2エンコーダが短縮長のシーケンスで動作する場合、トークンレベルの表現をどのように回復できるか?
- RQ3節約した FLOPs を深さまたは幅に再投資することで、シーケンスレベルタスクのモデル容量は向上するか?
- RQ4Funnel-Transformer は、標準 Transformer と比較して、シーケンスレベルタスク(分類、GLUE、RACE)とトークンレベルタスク(SQuAD)でどのように性能を示すか?
主な発見
- F-TFM は、GLUEおよびテキスト分類で、同等または低い FLOPs の下で標準 Transformer を上回ることが多く、特に小型モデルで顕著だ。
- シーケンス長を短くしつつ深さを増やす(ブロックを増やす)ことで、節約された計算量で得られる追加容量により性能が向上する。
- 部分的なパラメータ共有は性能を損なう可能性がある;実際には慎重に設計された通常のレイアウトが最も良い性能を示す。
- 大規模事前学習では、F-TFM は GLUE の競争力あるスコアと RACE での強力な結果を達成し、同等の FLOPs でベースラインを上回ることが多い。
- トークンレベルの監督が不可欠な場合(デコーダ付きの SQuAD)、非常に大きな F-TFM モデルでもフルシーケンスの Transformer に遅れをとる可能性があり、トークンレベルタスクのトレードオフを示している。
- アブレーション研究は、pool-query-only設計、別個の [cls] トークン処理、相対的位置エンコーディングが性能にとって重要であることを示している。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。