Faster Neighborhood Attention: Reducing the O(n^2) Cost of Self Attention at the Threadblock Level

要約

近隣注目は、各トークンの注目範囲をその最も近い隣接トークンに制限することで、自己注目のコストを削減します。
この制限は、ウィンドウ サイズと拡張係数によってパラメータ化され、線形投影と自己注意の間で考えられる注意パターンのスペクトルを描画します。
近隣の注意、より一般的にはスライディング ウィンドウの注意パターンは、特に上位空間 (2-D および 3-D) においてインフラストラクチャによって長い間制限されており、カスタム カーネルの開発が必要であり、いずれかの機能が制限されていました。
両方ではないにしても、パフォーマンス。
この研究では、まず、近隣アテンションが標準のアテンションと同様にバッチ処理された GEMM 問題として表現できることを示し、それを 1 次元および 2 次元の近隣アテンションに対して実装します。
これらのカーネルは、1 次元および 2 次元の近傍アテンションについて、既存の単純なカーネルと比較して、完全精度のレイテンシが平均してそれぞれ 895% および 272% 改善されます。
すべての未融合の近隣アテンション カーネルには、パフォーマンスと低精度のスケーラビリティを制限する特定の固有の非効率性が見つかりました。
私たちはまた、融合した近所の注目を育みました。
融合ドット積注意カーネルの適応により、さまざまな空間軸にわたる注意のきめ細かな制御が可能になります。
セルフ アテンションの 2 次時間計算量を線形計算量に削減することで知られている近隣アテンションは、削減された一定のメモリ フットプリントと記録破りの半精度レイテンシを享受できるようになりました。
融合されたカーネルが、非融合実装における避けられない非効率性の一部をうまく回避していることがわかります。
融合されていない GEMM ベースのカーネルは、ナイーブ カーネルと比較して、1 次元および 2 次元問題でそれぞれ平均 496% と 113% の半精度のパフォーマンスしか向上しませんが、融合カーネルは、ナイーブ カーネルを平均 1607% と 581 パーセント向上させます。
% は 1 次元問題と 2 次元問題でそれぞれ発生します。

要約(オリジナル)

Neighborhood attention reduces the cost of self attention by restricting each token’s attention span to its nearest neighbors. This restriction, parameterized by a window size and dilation factor, draws a spectrum of possible attention patterns between linear projection and self attention. Neighborhood attention, and more generally sliding window attention patterns, have long been bounded by infrastructure, particularly in higher-rank spaces (2-D and 3-D), calling for the development of custom kernels, which have been limited in either functionality, or performance, if not both. In this work, we first show that neighborhood attention can be represented as a batched GEMM problem, similar to standard attention, and implement it for 1-D and 2-D neighborhood attention. These kernels on average provide 895% and 272% improvement in full precision latency compared to existing naive kernels for 1-D and 2-D neighborhood attention respectively. We find certain inherent inefficiencies in all unfused neighborhood attention kernels that bound their performance and lower-precision scalability. We also developed fused neighborhood attention; an adaptation of fused dot-product attention kernels that allow fine-grained control over attention across different spatial axes. Known for reducing the quadratic time complexity of self attention to a linear complexity, neighborhood attention can now enjoy a reduced and constant memory footprint, and record-breaking half precision latency. We observe that our fused kernels successfully circumvent some of the unavoidable inefficiencies in unfused implementations. While our unfused GEMM-based kernels only improve half precision performance compared to naive kernels by an average of 496% and 113% in 1-D and 2-D problems respectively, our fused kernels improve naive kernels by an average of 1607% and 581% in 1-D and 2-D problems respectively.

arxiv情報

著者 Ali Hassani,Wen-Mei Hwu,Humphrey Shi
発行日 2024-03-07 17:35:58+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.AI, cs.CV, cs.LG パーマリンク