iPAS 備考專區 登入

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

N-gram 語言模型為什麼生成的句子缺乏整體連貫性?

原題

某企業嘗試以 N-gram 語言模型(N-gram Language Model)建立客服自動回覆系統,但發現模型生成的句子雖在片段上合理,卻缺乏整體語意連貫性。此問題最可能源自 N-gram 模型的哪一項限制?

白話

一家企業用「N-gram 語言模型」來做客服自動回覆。這個模型會生成回覆句子。

但他們發現一個問題:模型生成的每一小段句子讀起來還算通順,但整句話連起來看,語意好像不太連貫,像拼湊出來的。

問你:這個問題最可能是因為 N-gram 模型的哪個限制造成的?

一句話總結

N-gram 模型的根本限制:它只看固定 N 個前面的詞來決定下一個詞,記憶窗口固定且短,所以無法捕捉到距離超過 N 的詞之間的依賴關係(Long-range Dependencies)。生成出來的句子每個「小片段」很合理,但整句意思前後不連貫。

情境

先感受問題:N-gram 就像只能記住前三個字的健忘症患者

假設「快問快答」保險公司要用 N-gram 模型自動回覆顧客的理賠問題。顧客問:

「我上個月提交了住院理賠申請,但理賠中心說文件不齊,要我補交診斷書,請問診斷書要去哪裡取得,還有補交之後理賠審核要多久?」

一個 3-gram 模型(每次只看前 2 個詞)生成回覆的方式:

看前 2 個字「請問」→ 猜下一個字:「您」(很常接在請問後面)

看「問您」→ 猜下一個字:「好」(「問您好」是常見組合)

看「您好」→ 猜下一個字:「我」(「您好我」…)

看「好我」→ 猜下一個字:「們」

…繼續拼下去,每一步局部都合理,但整句話根本答非所問。

問題的根源:模型在猜第 15 個字的時候,已經完全「忘了」一開始顧客問的是「診斷書」和「審核時間」,因為那些詞距離超過 N,它看不到。

舊方法

N-gram 的「固定視窗」有哪五個本質限制

N-gram 模型的運作邏輯:「給定前面 N-1 個詞,預測下一個詞的機率」。N 越大,視窗越大,但相應問題也越多。

  1. 記憶上限固定:3-gram 只看前 2 個詞,5-gram 只看前 4 個詞。不管 N 多大,超過 N 的詞就完全看不到。句子裡第 1 個詞決定的語境,到第 20 個詞時早已遺失。
  2. N 大了資料稀疏問題爆發:5-gram 需要在語料庫裡出現過「A B C D E」這個特定 5 詞組合,才有估計機率的依據。語料庫不夠大,絕大多數組合都是 0,模型幾乎沒辦法正常運作。
  3. 語境記憶不延伸:「快問快答公司」和「本公司」說的是同一件事,但 N-gram 沒有任何機制把這兩個詞串連起來,後面用「本公司」開頭的段落和前面說「快問快答公司」的段落語意完全斷連。
  4. 無法捕捉主詞與動詞的長距離一致性:「您的理賠申請…(20 個詞)…已經核准了」,N-gram 在生成「核准」時,已經忘記主詞是「申請」,可能生成語法錯誤的句子。
  5. 話題轉換無感:長段客服回覆可能涉及多個問題(診斷書取得、審核時間),N-gram 不知道「現在在回答哪個問題」,可能把兩個問題的回答混在一起。

新方法

「固定視窗」限制如何直接導致「缺乏整體連貫性」

回到「快問快答」的客服場景。顧客問的問題包含:

  • 主詞:「我」
  • 事件:「提交了住院理賠申請」
  • 問題 1:「診斷書要去哪裡取得」(距離問句開頭已有 20+ 字)
  • 問題 2:「理賠審核要多久」(距離問句開頭已有 35+ 字)

一個 3-gram 模型在生成回覆的時候,每步只看前 2 個詞,到了回答問題 2「審核多久」的時機,它早已「忘記」問題 1 是「診斷書」。每一小片段局部通順(因為 3-gram 統計下,「審核時間約」是合理接法),但整個回覆對問題 1 的答覆和問題 2 的答覆缺乏邏輯串連。

這就是「片段合理,整體不連貫」的直接原因:固定 N 的視窗無法捕捉長距離依賴關係。

這就是選項 B 講的:N-gram 模型僅根據固定長度的前序詞建立機率估計,難以捕捉長距離依賴關係(Long-range Dependencies)。

錯選項

為什麼其他選項是錯的

AN-gram 模型在訓練過程中需要龐大計算量,導致長句無法收斂

字面在說什麼

說 N-gram 模型訓練太耗費計算資源,長句子訓練時無法收斂(也就是模型沒辦法學好)。

為什麼不對

N-gram 模型的訓練其實非常輕量,只是統計語料庫裡各個 N-gram 的出現次數,再算條件機率,連梯度下降都不需要。它的問題不是計算量大,反而是太「輕量」,學的東西太少(只記得前 N 個詞)。「長句無法收斂」是深度神經網路可能遇到的問題,不是 N-gram 的問題。

誰會選錯

對「語言模型訓練」的印象是「需要大量 GPU 和算力」的考生,自然聯想 N-gram 也是。但 N-gram 是統計模型,不是神經網路,訓練本質上是計數而非梯度優化,計算量相對極低。

CN-gram 模型缺乏語意嵌入(Semantic Embedding)層,因此無法表徵詞語間的語意相似度

字面在說什麼

說 N-gram 沒有語意嵌入(Semantic Embedding)層,所以不知道「貓」和「狗」意思相近。

為什麼不對

這個說法正確,但它描述的是「詞語語意相似度」的問題,不是「整體語意連貫性」的問題。題目說的是「片段合理但整體不連貫」,這是因為視窗太短、捕捉不到長距離依賴,而不是因為不知道「貓」和「狗」相似。語意嵌入是另一個問題,解決方案是 Word2Vec,不是 N-gram 的主要限制。

誰會選錯

讀過 Word2Vec 或 BERT,知道「N-gram 沒有語意向量」這個概念,就誤以為這是本題的主要問題。要區分:「詞與詞之間的語意距離」是語意嵌入的問題;「句子前後邏輯連貫」是長距離依賴的問題。題目問的是後者。

DN-gram 模型假設詞與詞之間相互獨立,導致無法建構上下文語意關聯

字面在說什麼

說 N-gram 假設每個詞和其他詞都沒有關係(相互獨立),所以完全建不了上下文。

為什麼不對

這個描述誇大了 N-gram 的問題。N-gram 不是「完全假設詞與詞獨立」,而是「只看前 N-1 個詞的有限上下文」。Unigram(1-gram)才是假設每個詞完全獨立,Bigram、Trigram 確實有在看上下文,只是視窗有限。說「完全無法建構上下文語意關聯」是過度說法,正確說法是「只能建構固定長度的局部上下文」。

誰會選錯

選項 D 和 B 非常像,都在描述 N-gram 的上下文限制。差別在精確程度:B 準確描述了「固定長度」和「長距離依賴」的問題,D 過度誇大成「完全獨立」。考試看到 B 和 D 同時出現,選更精確的描述(B)。

變形題

同個考點下次怎麼變形

延伸

想再往下看,這 5 個

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

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

看官方原文 PDF

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