iT邦幫忙

2025 iThome 鐵人賽

DAY 27
0
AI & Data

AI、機器學習以及深度學習的語言學應用系列 第 27

Day 27 - In-Context Learning(ICL)

  • 分享至 

  • xImage
  •  

昨天我們談到 LLM(大型語言模型)如何從 Transformer 的架構中誕生。

那麼,LLM 為什麼能這麼聰明?為什麼只要問它一個問題或是給它一段提示,它就能「學會」新的任務,並且產出非常厲害的答案?

這背後的關鍵能力,就是— In-Context Learning(ICL)

沒錯,今天就要來講講什麼是 In-Context Learning~~


什麼是 In-Context Learning?

  • In-Context Learning 指的是模型能夠在特定的上下文(Context)中學習任務
  • 也就是說,當我們給模型幾個例子(稱為 few-shot prompting),它就能根據這些例子「模仿」出解題模式,完成類似任務

➔ 這聽起來像是「學習」,但奇妙的是,語言模型其實並不是被訓練來學會從例子中學習;它的訓練目標只是 預測「下一個 token」
➔ 因此,LLM 的預訓練(pre-training)任務和 In-Context Learning 之間其實存在一個「mismatch


透過 Prompt 來運作

  • 模型的微調(Fine-tuning)是指說透過重新調整並訓練模型的參數來改善模型的表現
  • 但是 In-Context Learning 與 fine-tuning 不同,它 不需要重新訓練模型參數
  • 我們只要透過不同的 prompts(提示語)來引導模型,就能改變它的行為

如何運作?

  • 在 ICL 時,我們通常會在 prompt 裡給模型幾組輸入輸出組( input–output pairs ),以展示任務的模式,最後給一個「測試的 input」,請模型產出 output

  • 如下圖所示:
    https://ithelp.ithome.com.tw/upload/images/20251011/20178748t0RDYTm30T.png

  • 模型會試著分析:

  1. Input distribution:輸入屬性(句子類型?語意、用詞為何?對於發放補助的態度?)
  2. Output distribution:輸出類型(是支持、中立還是反對?)
  3. Input–output mapping:需要找到輸入跟輸出之間的關聯性(同意就是指支持?質疑就是反對?)
  4. Formatting:模型輸出的格式

🚨 但要注意的是,ICL 應該說是從 prompt 中的訓練例子去抓住特定的表達模式或是語意關係,並非真的去學習 input 和 output 之間的關聯性

  • 研究指出,即使 prompt 裡的 label(標籤)有錯,模型表現差異也不大
  • 這意味著它學的可能不是答案本身,而是 任務的結構與語意形式
  • 但如果 label 的 性質不一致 ,模型表現就會顯著下降,例如:

✅ 一致標籤:

香蕉:黃色  
蘋果:紅色  
葡萄:紫色

❌ 不一致標籤:

香蕉:黃色  
蘋果:長在樹上  
葡萄:一顆一顆的

In-Context Learning 的三種形式

1. Few-shot Learning

  • 給模型幾個例子作為參考,提供豐富上下文
  • 這是最常見的方式,也最能展現模型的語意遷移能力

2. Zero-shot Learning

  • 完全不給例子,僅提供指令
  • 像 GPT 這類模型會利用內部知識與語意理解來推敲答案
  • 這要求 prompt 描述要非常精確

3. One-shot Learning

  • 只給一個具代表性的例子
  • 常用於資料稀少的任務,或要讓模型生成特定風格、格式的內容時

小結

In-Context Learning 讓 LLM 從「參數內學習」走向「上下文內學習」,我們不再需要動模型權重,只需調整 prompt,模型就能在眼前「現場學會」新的任務。

而更進一步的發展是我們不只想讓模型模仿學習,更想要讓它能「逐步推理」。
這就是下一篇要介紹的 Chain-of-Thought(思維鏈)


參考資料

Reference 1
Reference 2
Reference 3
Reference 4
Reference 5


上一篇
Day 26 - Large Language Model(LLM,大型語言模型)
下一篇
Day 28 - Chain-of-Thought(CoT)
系列文
AI、機器學習以及深度學習的語言學應用29
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言