Stanford CS229 Machine Learning Spring 2026 Lecture 13: LLMs and Next-Word Prediction Loss

Representation Learning and Embeddings

表示學習(Representation learning)旨在建立一個映射(由 $\theta$ 參數化),將原始輸入 $x$(例如圖像、文本、音訊或影片)轉換為 $m$ 維歐幾里得空間中的向量 $v_{\theta}(x)$。這些向量通常被稱為嵌入(embeddings),其設計目的是讓相似的輸入被映射到相似的嵌入(在空間中彼此靠近的點),而不相似的輸入則被映射到遠離的嵌入。

嵌入實現了相似性搜尋(similarity search),系統可以透過尋找向量空間中查詢嵌入的最近鄰居來識別相似項目。雖然嵌入先前被用作線性分類(linear probing)的輸入,但現代應用更傾向於使用端到端模型或直接進行相似性搜尋。

Tuning Embeddings: Supervised vs. Unsupervised Learning

Supervised Pre-training

在監督式預訓練中,神經網路會在大型標註數據集(例如具有 1,000 個標籤的 ImageNet)上進行訓練,以預測離散類別。表示從倒數第二層(最後一個分類頭之前的層)提取,並捨棄分類頭以用於下游的相似性任務。

  • 局限性: 這種方法需要昂貴且大規模的標註數據集。如果標籤集不夠多樣化(例如僅有二元標籤),學習到的表示可能無法捕捉到足夠的複雜模式,以對其他任務產生作用。

Contrastive Learning (Unsupervised)

對比學習(Contrastive learning)在沒有標籤的情況下學習表示,方法是鼓勵模型將同一個輸入的不同版本識別為相似,並將不同的輸入識別為不相似。

  1. Augmentation: 使用隨機裁剪(最關鍵)、翻轉、模糊或添加高斯雜訊等技術,將單張圖像 $x$ 轉換為兩個不同的版本 $\hat{x}$ 和 $\tilde{x}$。
  2. Objective: 訓練模型以最小化同一圖像增強版本之間的嵌入距離($f_{\theta}(\hat{x})$ 和 $f_{\theta}(\tilde{x})$),同時最大化不同圖像增強版本之間的距離($x$ 和 $z$)。

處理偽負樣本(False Negatives): 當兩個不同的圖像(例如兩隻不同的貓)被視為負樣本對並被推開時,會產生一個潛在問題。然而,在大型數據集中,大多數隨機配對是真正不相似的(例如貓和椅子),這意味著推開隨機圖像所帶來的益處超過了推開相似但不相同的圖像所造成的「附帶損害」。

The SimCLR Objective Function

為了高效地實現對比學習,使用了像 SimCLR 這樣的批次(batch-based)方法。該過程涉及對 $B$ 張圖像進行採樣,為每張圖像創建兩個增強版本,並根據歸一化嵌入的內積(或餘弦相似度)構建相似性矩陣。

Mathematical Formulation

對於給定的增強版本 $\hat{x}_i$,損失函數將此任務視為多類分類問題:識別批次中其他 $2B-1$ 個嵌入中哪一個是對應的配對 $\tilde{x}_i$。

單個列 $i$ 的損失表示為: $$\mathcal{L}_i = -\log \frac{\exp(\text{sim}(\hat{x}_i, \tilde{x}i) / \tau)}{\sum{j=1}^{2B} \exp(\ ext{sim}(\hat{x}_i, x_j) / \tau)}$$

  • 分子: 鼓勵正樣本對(同一圖像的增強版本)的相似度盡可能大。
  • 分母: 鼓勵所有其他配對(負樣本對)的相似度盡可能小。

Practical Optimizations

  • Hard Negative Mining: 隨機採樣的負樣本對通常太容易區分。「硬負樣本」(Hard negatives)——即看起來相似但並非相同的範例(例如一張小孩踢足球的照片 vs. 一篇關於 FIFA 世界盃的文本)——被用來使損失函數更具挑戰性,並使生成的表示更具魯棒性。
  • Data Source Sampling: 從相同的數據源(例如相同的程式碼庫或程式語言)對批次 $B$ 進行採樣,會自然地產生更難的負樣本,防止損失過快地變小。

Semantic Search and RAG

Implementing Semantic Search

語義搜尋利用預先計算的嵌入來為查詢 $q$ 尋找最相關的對象:

  1. Indexing: 計算所有文件 $D_1, \dots, D_n$ 的嵌入並將其存儲在向量資料庫中。
  2. Querying: 使用相同的模型 $f_{\theta}$ 對查詢 $q$ 進行嵌入。
  3. Retrieval: 系統尋找使 $f_{\theta}(q)$ 與 $f_{\theta}(D_i)$ 之間的內積最大化的文件 $D_i$。

Retrieval-Augmented Generation (RAG)

RAG 用於為大型語言模型 (LLMs) 提供專有或最新的資訊,而無需進行昂貴的微調。

  • 流程: 收到查詢時,系統使用語義搜尋從私有語料庫中檢索相關文件的一個小子集。這些文件隨後作為提示詞(context)的一部分提供給 LLM,LLM 根據查詢和檢索到的文本生成答案。
  • 優於微調的優點:
    • 模組化: 檢索系統與 LLM 是分離的。
    • 數據治理: 可以在檢索階段應用存取控制(例如,防止某些用戶檢索敏感備忘錄)。
    • 易於更新: 從語料庫中刪除文件會立即將其從模型的潛在答案中移除,而從微調模型中「消除」資訊是一個開放的研究問題。

Alternative Retrieval Methods

雖然語義搜尋非常普遍,但一些前沿模型(例如來自 Anthropic)利用 LLM 為關鍵字搜尋生成複雜的正規表達式(regular expressions)。這對於程式碼等結構化數據特別有效,因為函數名稱和文件樹為匹配提供了嚴格的模式。

Sources