語言建模(Language Modeling)是什麼?

透過統計或神經網路方法,學習文字序列的機率分布,用於預測下一個詞或評估句子合理性的模型。|本頁含完整原理、應用場景、iPAS 考試重點與 3 個常見問答。

英文
Language Modeling
主題標籤
自然語言處理、深度學習、Transformer
考點定位
非 iPAS 核心術語
最後更新
2026/06/23
語言建模(Language Modeling)是什麼? 自然語言處理深度學習
術語快查

搜尋意圖: 如果你在找「語言建模 是什麼」或「語言建模 和相近概念差在哪」,先看這頁的短定義、完整說明與延伸比較。

TL;DR: 透過統計或神經網路方法,學習文字序列的機率分布,用於預測下一個詞或評估句子合理性的模型。

實用情境: 適合用在閱讀 AI 文章、產品文件或和同事討論時,先用一頁快速對齊概念。

下一步: 先讀完定義,再往下看延伸比較與對應工具,把概念轉成實際應用。

透過統計或神經網路方法,學習文字序列的機率分布,用於預測下一個詞或評估句子合理性的模型。

語言模型(Language Modeling)是自然語言處理中最基礎且影響最深遠的任務,涉及對文字序列統計規律的理解與建模。從 n-gram 時代到近期的 LLM,語言建模推動了 NLP 的每一次技術革新。

語言建模的數學定義

給定詞彙表 V 與文本序列 w = (w₁, w₂, ..., wₙ),語言模型估計該序列的機率: P(w) = P(w₁) × P(w₂|w₁) × P(w₃|w₁,w₂) × ... × P(wₙ|w₁,...,wₙ₋₁)

核心挑戰是估計條件機率 P(wᵢ|w₁,...,wᵢ₋₁),特別是當上文長度任意時。

技術發展階段

  1. n-gram 模型(1980-2010 年)

    • 馬可夫假設:P(wᵢ|w₁,...,wᵢ₋₁) ≈ P(wᵢ|wᵢ₋ₙ₊₁,...,wᵢ₋₁),即當前詞只依賴前 n-1 個詞。
    • 訓練:詞序列計數,用最大似然估計(MLE)或加平滑技術。
    • 優點:計算簡單,訓練快速。
    • 缺點:無法捕捉長程依賴,高階 n(n>5)時稀疏性問題嚴重,詞表未見序列機率為零。
  2. 類別模型(Class-based Models)

    • 將詞分組為語義或語法類別,減少參數數量。
    • 例如:Brown Clustering、簇聚方法。
    • 改善稀疏性但喪失詞彙細粒度資訊。
  3. 神經網路語言模型(2003 年之後) Bengio 等人提出將詞嵌入到連續向量空間,用神經網路建模 P(wᵢ|w₁,...,wᵢ₋₁)。

    • 架構:詞嵌入層 → 前饋隱層 → softmax 輸出層。
    • 優點:自動學習詞向量,能捕捉詞彙間的語義相似性;無需手工特徵。
    • 缺點:上文長度固定(窗口大小),無法模型化任意長上文。
  4. 循環神經網路語言模型(2010-2017 年)

    • LSTM 與 GRU 的引入解決了長程依賴問題,通過記憶機制與門機制保留重要上文信息。
    • 雙向模型:在訓練時可同時利用前向與後向上文。
    • 表現大幅超越 n-gram,成為當時的標準。
    • 應用:機器翻譯、語音辨識 rescoring、文本生成。
  5. Transformer 與自注意力模型(2017 年至今)

    • 自注意力(self-attention)允許模型同時關注序列中所有位置,無需遞迴。
    • 並列計算效率高,可訓練更深的模型。
    • 預訓練範式:在大規模未標注文本上進行預訓練,得到上下文感知的詞表示(如 BERT、GPT)。
    • 現代 LLM(GPT-3, GPT-4, Claude)均基於 Transformer 語言模型,展現驚人的少樣本學習能力。

訓練目標與損失函數

  1. 下一詞預測(Causal Language Modeling)

    • 損失:只根據過去上文預測當前詞,交叉熵損失函數。
    • 用途:文本生成、自迴歸解碼。
    • 實現:遮罩未來位置的注意力(因果遮罩)。
  2. 遮罩語言建模(Masked Language Modeling)

    • 方法:隨機遮罩輸入序列的某些詞,模型預測遮罩詞。
    • 優勢:可同時利用雙向上文,預訓練效率更高。
    • 限制:預訓練與微調存在「token mismatch」(預訓練時有 [MASK] token,微調時沒有)。
    • 應用:BERT、RoBERTa 等雙向模型。
  3. 其他目標

    • 句子排序預測(Sentence Ordering Prediction)
    • 下一句預測(Next Sentence Prediction)
    • 對比學習目標(Contrastive Learning)

評估指標

  1. 困惑度(Perplexity,PPL)

    • PPL = exp(-1/N ∑ log P(wᵢ|w₁,...,wᵢ₋₁))
    • 直觀含義:平均每個位置有多少「困惑」的選擇。
    • 越低越好,但與下游任務效能的相關性不完美。
  2. 下游任務表現

    • 微調後在具體任務(分類、回答、翻譯)的性能。
    • 是評估預訓練模型品質的最可靠方式。

語言模型的應用場景

  • 機器翻譯解碼:選擇語法合理、語義正確的翻譯候選。
  • 語音辨識 rescoring:降低 ASR 模型的同音詞誤率。
  • 文本自動完成與預測:輸入法、代碼補全(GitHub Copilot)。
  • 問題生成與摘要:條件語言模型 P(summary|document)。
  • 對話系統與 Chatbot:逐詞生成回應。
  • 語法檢查與錯誤修正。

當代挑戰與開放問題

  1. 長文本建模

    • Transformer 的二次複雜度限制了最大上文長度。
    • 解決方案:稀疏注意力、局部注意力、層次化建模、線性注意力近似。
    • 最新進展(2024):許多模型達到 100k-1M token 的上文窗口。
  2. 知識的隱式 vs. 顯式編碼

    • 語言模型在訓練資料中隱式習得世界知識,但無法更新或明確查詢。
    • RAG(檢索增強生成)與外部知識庫的結合是當前實踐方向。
  3. 幻覺與事實性

    • 語言模型有時生成聽起來合理但不正確的內容(幻覺)。
    • 改善方向:監督微調、人類反饋強化學習(RLHF)、事實檢驗機制。
  4. 多語言與低資源語言

    • 英文語言模型最成熟,非英文與低資源語言的預訓練資料稀缺。
    • 轉移學習與多語言預訓練模型(如 mBERT、XLM-R)逐漸改善此況。
  5. 效率與部署

    • LLM 的體型龐大,推論成本高。
    • 優化方向:模型蒸馏、量化、低秩適應(LoRA)、推機批處理。

與相關概念的區別

  • 語言模型 vs. 詞嵌入:嵌入只學習靜態詞向量,語言模型學習動態上下文相關表示。
  • 語言模型 vs. 機器翻譯:語言模型是翻譯系統的子組件(解碼階段)。
  • 語言模型 vs. 大型語言模型(LLM):LLM 是一類超大規模的語言模型,通常 > 1B 參數,並經過指令微調與對齐。

常見問題

語言模型能夠「理解」語言嗎?

這取決於如何定義「理解」。從機械角度,語言模型學習了文字序列的統計規律,能有效預測下一詞或生成連貫文本,但不具備意向性(intentionality)、不知道詞彙指向的真實對象。從應用角度,現代大型語言模型在許多任務上的表現(包括推理、解釋、翻譯)足以通過實用的「理解」測驗。哲學上的爭議仍在,但實踐中,我們可以說:語言模型學習到了語言的深層結構與世界知識的投影,這足以驅動許多下游應用的成功。

為什麼 n-gram 模型現在幾乎沒有人用了?

n-gram 的根本限制是無法捕捉長程依賴:前三個詞對第十個詞的影響被完全忽略。在實際文本中,遠距離的語義與句法相依性至關重要。此外,n-gram 對稀疏數據敏感,高階 n(n>5)時大部分序列未在訓練集出現,導致機率估計不可靠。神經網路與Transformer 的出現完全超越了這些限制,性能提升 10+ 倍。唯一 n-gram 仍有用武之地的是極低資源語言(標注資料極少),因為 n-gram 可以用少量資料快速訓練基線模型。

為什麼語言模型有時候會一本正經地說謊?

語言模型的訓練目標是最大化下一詞的條件機率,並非「說出事實」。當模型沒有看過某個專業知識(如最新研究發現、小眾事件),但詞彙組合聽起來合理時,它就會生成假資訊。這稱為「幻覺」(hallucination)。此外,訓練資料本身可能含有錯誤資訊,模型會學到並重複這些錯誤。改善方法:搭配事實檢索(RAG)、在訓練中加入事實核實任務、使用人類反饋強化學習,但目前沒有完全解決方案。根本上,語言模型擅長的是「模仿已見過的文本」,而非「推導客觀真理」。