論文閱讀筆記——Multi-Token Attention

MTA 論文
在 Transformer 中計算注意力權重時,僅依賴單個 Q 和 K 的相似度,無法有效捕捉多標記組合信息。(對于 A、B 兩個詞,單標記注意力需要分別計算兩個詞的注意力分數,再通過后處理定位共同出現的位置或通過多層隱式堆疊,增加模型深度和容量)。MTA 顯示建模多標記依賴,同時不犧牲全局交互和額外參數。(通過卷積運算讓他能夠看到鄰近的Q、K 以及其他注意力頭的信息)

在 Transformer 其他部分,如 FFN 的輸入/輸出加卷積,主要是為了捕捉詞元表示之間的局部依賴關系,不直接改變注意力機制本身如何計算相關性
MTA 的卷積直接作用在 Q K T / A QK^T/A QKT/A,意味著卷積直接參與了決定哪些上下文位置應該被關注的過程,在處理詞元間的關系強度
在這里插入圖片描述
提出兩種方式:pre-softmax convolution 和 post-softmax convolution,MTA 默認采用 Pre-softmax Q-K Convolution 和 Post-softmax Head Mixing Convolution。二者區別在于是在 softmax 之前還是之后進行。

Q-K convolution

a i j = S o f t m a x ( ∑ i ′ = 0 c q ? 1 ∑ j ′ = ? ? c k / 2 ? ? c k / 2 ? ? 1 1 i ≥ j ? j ′ θ i ′ , j ′ q i ? i ′ k j ? j ′ ? / d ) ( 1 ) a_{ij}=\mathrm{Softmax}\left(\sum_{i^{\prime}=0}^{c_{q}-1}\sum_{j^{\prime}=-\lfloor c_{k}/2\rfloor}^{\lceil c_{k}/2\rceil-1}\mathbf{1}_{i\geq j- j^{\prime}}\theta_{i^{\prime},j^{\prime}}q_{i-i^{\prime}}k_{j-j^{\prime}}^{\top}/\sqrt{d}\right) \qquad \qquad(1) aij?=Softmax ?i=0cq??1?j=??ck?/2??ck?/2??1?1ij?j?θi,j?qi?i?kj?j??/d ? ?(1)
在卷積中,為防止未來信息泄露,需要做 Masking。理想的 Masking 比較復雜(見式(1)),采用一種簡化形式:用 0 Mask 掉未來的 Q K T QK^T QKT 值,做卷積,再用 ? ∞ -\infty ? Mask 掉結果中非法位置,再做 Softmax。
A = S o f t m a x ( M a s k ? ∞ ( C o n v 2 d θ ( M a s k 0 ( A ^ ) ) ) ) . A=\mathrm{Softmax}\left(\mathrm{Mask}_{-\infty}\left(\mathrm{Conv}2\mathrm{d}_\theta\left(\mathrm{Mask}_0(\hat{A})\right)\right)\right). A=Softmax(Mask??(Conv2dθ?(Mask0?(A^)))).

Head Mixing Convolution

允許不同注意力頭之間共享信息,放大重要信號。將 M 個頭分成 M / c h M/c_h M/ch? 個組,每組 c h c_h ch? 個頭。在每組的頭內左 1D 卷積。同樣可以在 softmax 之前或之后進行。

Group Normalization with depth scaling

改善梯度流,對抗深層網絡中殘差連接可能帶來的主導效應(讓模型更關注注意力部分輸出,而不是僅僅傳遞上一層信息)。
在每個頭的輸出上獨立應用組歸一化,并結合一個隨層數變化的縮放因子。

核心矛盾:在「增強注意力精度」和「保持計算效率」之間尚未找到完美平衡,當前更適合對計算資源不敏感的高精度場景。

實驗結果

1.找字母塊任務,驗證 MTA 能夠解決 [多條件匹配] 問題。
在這里插入圖片描述
MTA 錯誤率接近 0%,而 Transformer 失敗率超 50%

2.LLM,在 105B 詞元數據上訓練 880M 參數模型

  • MTA 僅在 1/4 的層 使用 Key-Query 卷積(核大小: c q = 6 , c k = 11 c_q=6,c_k=11 cq?=6,ck?=11)。
  • 所有層使用 Head 卷積(核大小 c h = 2 c_h=2 ch?=2)。
    在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/78763.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/78763.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/78763.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

301.找出3位偶數

2094. 找出 3 位偶數 - 力扣&#xff08;LeetCode&#xff09; class Solution {List<Integer> resnew ArrayList<>();List<Integer> linew ArrayList<>();public int[] findEvenNumbers(int[] digits) {Arrays.sort(digits);boolean[] numsnew boolea…

【KWDB 創作者計劃】第二卷:開發者實戰篇

?KWDB技術白皮書卷二&#xff1a;開發者實戰篇 ?1. 自然語言到量子查詢的編譯系統 1.1 NL2QSQL翻譯引擎架構 運行時流程圖解&#xff1a; ┌──────────────────────┐ ┌───────────────────┐ ┌─────────────…

前端工程化之新晉打包工具

新晉打包工具 新晉打包工具前端模塊工具的發展歷程分類初版構建工具grunt使用場景 gulp采用管道機制任務化配置與api簡潔 現代打包構建工具基石--webpack基于webpack改進的構建工具rollup 推薦舉例說明package.jsonrollup.config.mjsmy-extract-css-rollup-plugin.mjssrc/index…

ai軟件UI自動化

在AI與UI自動化結合的場景中,通常涉及計算機視覺(CV)、自然語言處理(NLP)和機器學習(ML)等技術。以下是實現AI驅動UI自動化的關鍵方向、工具和步驟: ?一、核心應用場景? ?元素定位增強? ?問題?:傳統工具依賴XPath/CSS選擇器,易因UI變化失效。?AI方案?:CV識別…

關于 C++ 中 cin 對象和 EOF 的詳細解釋

【DeepSeek提問】 給解釋一下下面這段話&#xff08;C編程&#xff09; cin是 iostream 類的一個對象實例&#xff0c;如果輸入正常&#xff0c; cin 將返回本身。 舉個例子&#xff1a;cin>x>>y, 如果 cin>>x 讀入正常&#xff0c;那么將返回cin, 相當于后面繼…

Vue 3 和 Vue 2 的區別及優點

Vue.js 是一個流行的 JavaScript 框架&#xff0c;廣泛用于構建用戶界面和單頁應用。自 Vue 3 發布以來&#xff0c;很多開發者開始探索 Vue 3 相較于 Vue 2 的新特性和優勢。Vue 3 引入了許多改進&#xff0c;優化了性能、增強了功能、提升了開發體驗。本文將詳細介紹 Vue 2 和…

【特權FPGA】之UART串口

0.簡介 通用異步收發器(Universal Asynchronous Receiver&#xff0f;Transmitter&#xff0c;UART)可以和各種標準串行接口&#xff0c;如RS 232和RS 485等進行全雙工異步通信&#xff0c;具有傳輸距離遠、成本低、可靠性高等優點。一般UART由專用芯片如8250&#xff0c;1645…

Vue3中watch監視reactive對象方法詳解

在Vue3中&#xff0c;使用watch監視reactive對象時&#xff0c;需根據監視的目標選擇合適的方法。以下是詳細的步驟和說明&#xff1a; 1. 監視整個reactive對象 自動深度監視&#xff1a;直接監視reactive對象時&#xff0c;Vue3會默認啟用深度監視&#xff0c;無需設置deep:…

如何制定性能調優策略

目錄 性能測試攻略 微基準性能測試 宏基準性能測試 熱身問題 多 JVM 情況下的影響 合理分析結果&#xff0c;制定調優策略 推薦閱讀 性能測試攻略 性能測試是提前發現性能瓶頸&#xff0c;保障系統性能穩定的必要措施。下面我先給你介紹兩種常用 的測試方法&#xff0c;幫…

HarmonyOS-ArkUI V2裝飾器@Local裝飾器:組件內部狀態

@Local裝飾器的作用 @Local裝飾器是用來裝飾組件內的狀態的。而且它修飾的變量可以成為數據源。Local裝飾器,作用跟名字差不多,重點突出了“本地”的特性,也就是使用的范圍僅僅限制在組件內部。且它在初始化的時候必須是在本地進行初始化的,不能在外部組件,同時也禁止了外…

Linux線程屬性與多線程開發:API詳解與實戰代碼解析

Linux 線程的屬性 線程池 多線程的創建 線程的屬性 引入 我們設想一個場景&#xff0c;使用pthread_detach時&#xff0c;發現線程早就已經結束了&#xff0c;這時候pthread_detach還能正常發揮清理線程的 獨有空間 的作用嗎&#xff1f; 答案是可以的&#xff0c;但是這難…

測試第二課-------測試分類

作者前言 &#x1f382; ??????&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f382; ?&#x1f382; 作者介紹&#xff1a; &#x1f382;&#x1f382; &#x1f382; &#x1f389;&#x1f389;&#x1f389…

MySQL安裝實戰分享

一、在 Windows 上安裝 MySQL 1. 下載 MySQL 安裝包 訪問 MySQL 官方下載頁面。選擇適合你操作系統的版本。一般推薦下載 MySQL Installer。 2. 運行安裝程序 雙擊下載的安裝文件&#xff08;例如 mysql-installer-community-<version>.msi&#xff09;。如果出現安全…

數據庫預熱

介紹 Database Warm-up &#x1f9e0; 一句話理解 數據庫是在應用啟動階段&#xff0c;提前建立數據庫連接 或 執行輕量 SQL 操作&#xff0c;從而 加快首個請求的響應速度 的一種優化手段 &#x1f3af; 為什么需要數據庫預熱&#xff1f; 當 FastAPI 或其他 Web 服務剛啟…

SearXNG

SearXNG 什么是 SearXNG &#xff1f;說白了&#xff0c;其實就是一個免費開源的搜索引擎。那為什么要本地安裝它呢&#xff1f; 看它官網的解釋(翻譯)&#xff0c;當然&#xff0c;其中官方也有一篇文檔解釋了為什么需要部署使用私有示例&#xff1a;為什么使用私有實例&…

js 顏色轉換分析

一、十六進制轉RGB function hexToRgba(hex) {// 移除 # 字符hex hex.replace(#, );// 處理簡寫形式如 #fffif (hex.length 3) {hex hex[0] hex[0] hex[1] hex[1] hex[2] hex[2];}// 轉換為十進制const r parseInt(hex.substring(0, 2), 16); // 截圖前兩位&#xff0…

智能資源管理機制-重傳機制

一、發送端資源管理的核心機制 1. 滑動窗口&#xff08;Sliding Window&#xff09; 這是TCP協議的核心優化設計&#xff1a; 窗口動態滑動&#xff1a;發送端不需要保留所有已發送的分組&#xff0c;只需維護一個"發送窗口"窗口大小&#xff1a;由接收方通告的接…

基于SSM+Layui畢業設計選題系統源碼

項目介紹 基于SSM+Layui畢業設計選題系統源碼,可以作為課程設計項目參考,該系統分為三個角色: 管理員:用戶管理(對學生和老師的信息進行維護),統計分析(對老師課題情況以及學生選題情況信息進行維護),修改密碼 老師:個人信息維護,畢業設計題目管理,報名學生管理…

通過uri獲取文件路徑手機適配

青銅版本 return contentResolver.query(this, arrayOf(MediaStore.MediaColumns.DATA), null, null).let {if (it?.moveToFirst() true) {val columnIndex it.getColumnIndex(MediaStore.MediaColumns.DATA)val path it.getString(columnIndex)it.close()return path}&quo…

vue模擬撲克效果

vue模擬撲克效果 效果圖&#xff1a; step1:C:\Users\wangrusheng\PycharmProjects\untitled18\src\views\Home.vue <template><div class"poker-container"><!-- 使用復合數據對象實現雙行顯示 --><divv-for"(card, index) in POKER_…