SHI-Labs/NATTEN
Fast Multi-dimensional Sparse Attention
What it solves
NATTEN 解決了標準自注意力機制的高計算成本問題,其計算量通常隨着 token 的數量呈平方級增長。它提供了一種在注意力機制中引入局部性和稀疏性的方法,使其對於圖像(2D)和體積數據(3D)等多維數據更加高效。
How it works
NATTEN 實施了鄰域注意力(Neighborhood Attention, NA),一種滑動窗口自注意力機制。與卷積(convolutions)類似,它允許用戶定義 kernel_size、stride 和 dilation 來控制每個維度中的注意力範圍。它也支持因果掩碼(causal masking)以防止 token 參與未來 token 的注意力計算。
為了實現高性能,該項目提供了針對 NVIDIA GPU 優化的 Fused Multi-Headed Attention (FMHA) 和 Fused Neighborhood Attention (FNA) 內核,包括針對 Hopper (SM90) 和 Blackwell (SM100, SM103) 架構的原生內核。
Who it’s for
它專為構建用於多維特徵圖的 Transformer 模型的研究人員和開發人員設計,特別是從事電腦視覺或 3D 數據處理的工作者。
Highlights
- Multi-dimensional support: 2D 和 3D token 佈局的原生支持。
- High-performance kernels: 針對從 Maxwell (SM50) 到 Blackwell (SM100/103) 的所有 NVIDIA 架構優化的融合內核。
- Flexible configuration: 可針對每個維度控制
kernel_size、stride和dilation。 - Causal masking: 為多維稀疏注意力提供切換因果注意力的能力。
相關
- 專案
- 專案
- 專案
- 專案
- 專案