iPAS 備考專區 登入

iPAS AI 應用規劃師 中級 科目一 AI 技術應用與規劃・114 年第二次・L21・第 18 題

Attention Collapse 怎麼解?

原題

當 Transformer 模型發生「注意力分布過於平均(Attention Collapse)」的情形時,導致模型無法有效聚焦於關鍵資訊,下列哪一項策略可有效改善此問題?

白話

Transformer 模型靠「注意力機制」(Attention)來判斷:這句話裡,哪個詞和哪個詞最有關係。

但有時候出問題,叫做「注意力崩塌」(Attention Collapse):模型對每個詞都給差不多的注意力,變成「誰都一樣重要」,就像一個人在開會時,對所有人說的話都半信半疑,結果什麼都沒聽進去。

問你:碰到這個問題,哪個做法能有效改善?

一句話總結

解決 Attention Collapse 的方法:對注意力權重施加稀疏化約束(Sparsity Constraint),強迫模型只把注意力集中在少數幾個最重要的位置,不能讓所有位置的注意力都差不多。

情境

先感受問題:開會時「對所有人都點頭」的人

假設「智閱」是一個 AI 文件摘要平台,系統用 Transformer 模型讀一份 500 字的合約,要找出「違約條款」在哪裡。

Attention 機制本來應該這樣運作:

「違約」:注意力 0.45(非常重要)

「賠償」:注意力 0.30(重要)

「的」:注意力 0.01(幾乎不看)

「了」:注意力 0.01(幾乎不看)

但發生 Attention Collapse 之後,變成:

「違約」:注意力 0.003

「賠償」:注意力 0.003

「的」:注意力 0.002

「了」:注意力 0.002

(500 個詞,每個詞大約 1/500,幾乎一樣)

模型「誰都看,誰都沒認真看」,最後生成的摘要抓不到違約條款,講了一堆無關緊要的詞。

這就是 Attention Collapse:注意力分布太平均,重要的東西反而淹沒在雜訊裡。

舊方法

為什麼注意力會「攤平」,原始 Softmax 撐不住

標準 Attention 機制用 Softmax 把分數轉成加總為 1 的機率分布,但有五個情況會讓它攤平:

  1. 序列太長:500 個位置,每個都能分到注意力,自然被稀釋。即使有幾個位置分數較高,Softmax 的平滑效果讓差距縮小。
  2. Query-Key 點積數值過大:點積太大進入 Softmax 的梯度飽和區,梯度消失後更新停滯,注意力分布凍結在某個平均狀態。
  3. 訓練初期參數隨機:早期 Q、K 矩陣還沒學好,點積結果接近隨機,Softmax 把隨機分數變成近似均勻分布。
  4. 深層 Transformer 的資訊混合過度:層數越深,每個位置都整合過越多其他位置的資訊,個別位置特徵被平均掉。
  5. Softmax 沒有「強制稀疏」的機制:Softmax 的輸出必定對所有位置都 > 0,無法讓不重要的位置真正歸零。

這五個問題的共同結果:模型沒有辦法強烈地說「我只看這幾個詞,其他不管」。

新方法

稀疏化約束:強迫模型做「選擇」

回到「智閱」的 500 字合約。稀疏化約束(Sparsity Constraint)的核心邏輯是:

加一個懲罰項,讓訓練過程中,注意力分布「太平均」就會被扣分,強迫模型把注意力集中在少數幾個位置。

具體做法有幾種:

  • Sparse Transformer(Sparsemax):用 Sparsemax 取代 Softmax,Sparsemax 允許輸出直接為 0,讓不重要的位置真的沒有注意力,而不是只有一點點。
  • Top-K Attention:每個查詢只保留點積分數最高的 K 個鍵,其他位置的注意力強制設為 0。
  • L1 正則化施加在注意力矩陣上:在損失函數中加入注意力矩陣的 L1 範數,讓模型學著讓大多數位置的注意力趨近 0。

用了稀疏化約束之後,「智閱」的模型在讀合約時,能明確地說:「我只看第 47、第 123、第 289 個詞」,其他位置幾乎不看。「違約條款」被聚焦,摘要品質提升。

這就是選項 D 講的:對注意力權重施加稀疏化約束(Sparsity Constraint)。

錯選項

為什麼其他選項是錯的

A提高 Query-Key 點積(Dot Product)的縮放常數

字面在說什麼

標準 Attention 會把 Q·K 的點積除以 √d_k 來縮放,這裡說把這個縮放的分母變更大。

為什麼不對

縮放常數越大,點積被壓縮得越小,進入 Softmax 的數值差距越小,輸出分布反而更平均,Attention Collapse 更嚴重。縮放常數原本設計是防止點積太大導致梯度消失,不是用來解決分布平均問題的。這個選項的方向完全反了。

誰會選錯

記得「Attention 需要縮放」這個知識點,但搞混縮放的方向和目的的考生。縮放是為了穩定訓練(避免梯度消失),不是為了讓分布更稀疏,兩件事不一樣。

B在 Softmax 前加入高斯雜訊(Gaussian Noise)

字面在說什麼

在計算出 Q·K 分數之後、進 Softmax 之前,加入隨機的高斯雜訊(常態分布的隨機數)。

為什麼不對

加入隨機雜訊是一種「資料增強」或「正則化」手段,目的是防止過擬合,讓模型更健壯。但它不會讓注意力分布「更稀疏」,反而可能讓原本就不夠集中的注意力更加隨機散亂。高斯雜訊解決的是不同問題。

誰會選錯

知道「雜訊可以改善模型泛化」這個概念,看到 Attention 出問題就想加雜訊解決的考生。雜訊是讓模型「更亂」,稀疏化約束是讓模型「更精準」,兩個方向相反。

C使用 ReLU 函數取代 Softmax

字面在說什麼

把 Attention 裡的 Softmax 換成 ReLU(線性整流函數),ReLU 的特性是輸入小於 0 就輸出 0,大於 0 就線性輸出。

為什麼不對

用 ReLU 取代 Softmax 會破壞 Attention 的基本性質:Softmax 保證所有位置的注意力加總為 1(機率分布),ReLU 沒有這個保證。注意力權重不加總為 1 會讓 Value 加權計算失去意義,模型訓練會極度不穩定。這個改動會製造更大的問題,不是解法。

誰會選錯

知道 ReLU 可以讓很多值歸零(有稀疏效果),以為用 ReLU 可以解決注意力攤平問題的考生。ReLU 的稀疏效果在激活函數上有意義,但在 Attention 權重計算裡會破壞機率分布的約束,是不同情境。

變形題

同個考點下次怎麼變形

延伸

想再往下看,這 5 個

答案、題目或解析有問題?回報這題

出處:iPAS 經濟部產業人才能力鑑定 ・ 114 年第二次 iPAS AI 應用規劃師 中級 科目一 第 18 題

看官方原文 PDF

原題 © 經濟部產業發展署,AITerms.tw 僅作教學解析使用,本站解析以 CC BY-NC-SA 4.0 授權。