注意力頭維度

🧮 Attention Head Dimension Calculator

Compute the per-head dimension and the single-layer parameter count of multi-head attention from hidden size and head count.

📐 計算公式 / 原理
每頭維度 = d / heads;單層權重引數 ≈ 4d² + 2d·ffn
多頭注意力把 d 維切成 heads 份平行計算,每頭維度須整除,頭數過多會讓單頭維度過小、表達能力下降。單層引數由注意力四矩陣 4d² 與 FFN 兩層 2d·ffn 構成,是視訊記憶體與算力的主要來源。

📐 計算公式與說明

head_dim = d / heads

常見 head_dim 64,過大或過小均影響表達。

📚 深度解析:注意力頭維度

💡 常見使用場景

頭維度與引數量
d_model=768, h=12 → d_head=64。Q/K/V/O 各 768×768≈590k 引數,單層注意力≈4×590k=2.36M 引數;與 h 取值無關,只取決於 d_model。

❓ 常見問題(FAQ)

頭數越多越好嗎?
不一定。頭數增加提升並行關注不同子空間的能力,但 d_head 隨之變小、每頭容量受限;過大頭數收益遞減且增算力。
d_head 不整除怎麼辦?
需調整 d_model 或頭數使其整除,否則框架會報錯或 padding 引入冗餘;常見組合保證 d_model%h==0。

如何使用注意力頭維度

  1. 按頁面提示逐項填寫或選擇所需引數。
  2. 點選「計算」或「生成」按鈕執行。
  3. 在結果區檢視輸出,可複製結果或匯出使用。

引數說明

適用場景

每頭維度 d_head=d_model/h,需整除;常見 d_model=512,h=8→d_head=64。

常見問題

頭數越多越好嗎?
不一定。頭數增加提升並行關注不同子空間的能力,但 d_head 隨之變小、每頭容量受限;過大頭數收益遞減且增算力。
d_head 不整除怎麼辦?
需調整 d_model 或頭數使其整除,否則框架會報錯或 padding 引入冗餘;常見組合保證 d_model%h==0。