域轉移(Domain Shift)是什麼?

訓練資料與測試資料來自不同的統計分布或應用環境,導致模型性能下降的現象。|本頁含完整原理、應用場景、iPAS 考試重點與 3 個常見問答。

英文
Domain Shift
主題標籤
遷移學習、無監督學習、域適應
考點定位
非 iPAS 核心術語
最後更新
2026/07/30
域轉移(Domain Shift)是什麼? 遷移學習無監督學習
術語快查

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

TL;DR: 訓練資料與測試資料來自不同的統計分布或應用環境,導致模型性能下降的現象。

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

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

訓練資料與測試資料來自不同的統計分布或應用環境,導致模型性能下降的現象。

域轉移(Domain Shift)也稱為域適應問題(Domain Adaptation),是機器學習實務中最普遍但常被低估的挑戰。每當模型跨越地理邊界、時間邊界、應用場景邊界時,都面臨域轉移的風險。

域轉移的多種形式

  1. 邊際分布轉移(Marginal Distribution Shift) 特徵 X 的分布在訓練域與測試域不同:P_train(X) ≠ P_test(X)。

    • 例:識別貓的分類器在『自然照片』上訓練,部署到『卡通圖』環境時失效。
    • 解決方法:無監督域適應(Unsupervised Domain Adaptation),利用測試域的無標注數據調適特徵分布。
  2. 條件分布轉移(Conditional Distribution Shift)或標籤轉移(Label Shift) 預測規則在域間改變:P_train(Y|X) ≠ P_test(Y|X),或邊際類別分布改變:P_train(Y) ≠ P_test(Y)。

    • 例:醫院 A 中罕見病的患病率為 0.1%,醫院 B 為 5%,相同的症狀在兩家醫院有不同的後驗機率。
    • 解決方法:貝葉斯修正、代價敏感學習、重要性加權。
  3. 協變量轉移(Covariate Shift) P(X) 改變但 P(Y|X) 保持:更具體的邊際分布轉移形式。

    • 例:垃圾郵件分類器在 2015 年訓練,2025 年部署時,垃圾郵件的詞彙風格(協變量)已變,但某個詞彙指示垃圾的機率(條件機率)未變。
    • 解決方法:重要性加權、特徵標準化、無監督特徵適應。
  4. 先驗概率轉移(Prior Probability Shift) P(Y) 改變但 P(X|Y) 保持。

    • 例:訓練時正負樣本比 1:10,部署時比變為 1:100。
    • 解決方法:調整決策閾值、代價敏感學習。
  5. 開集域轉移(Open-set Domain Shift) 測試域包含訓練域未見過的類別。

    • 例:識別 10 類車型的模型,部署時遇到第 11 種從未見過的車型。
    • 解決方法:開集識別(Open-set Recognition)、異常檢測。

應對域轉移的主要策略

  1. 無監督域適應(Unsupervised Domain Adaptation, UDA)

    • 使用未標注的測試域數據調適模型,不需要測試域的標注。
    • 方法:最大化訓練域與測試域在特徵空間的相似性(如 MMD - Maximum Mean Discrepancy),或利用對抗訓練使特徵不可區分兩個域。
    • 代表方法:Deep CORAL、Adversarial Domain Adaptation、Self-training with Pseudo-labels。
  2. 遷移學習(Transfer Learning)與微調(Fine-tuning)

    • 在源域大規模標注數據上預訓練,在目標域少量標注數據上微調。
    • 現代深度學習中最實用的方法:預訓練模型(如 ImageNet 預訓練的 ResNet)往往對新域有強大的泛化能力。
  3. 多域學習(Multi-domain Learning)

    • 同時在多個源域訓練,習得跨域的通用表示。
    • 使模型對域變更更鯺魯棒。
  4. 測試時適應(Test-time Adaptation)

    • 在部署時,利用測試樣本的無標注信息進行在線學習,持續調適模型。
    • 例如,自動駕駛系統在夜晚部署時,實時調整以適應暗光環境。
  5. 特徵歸一化與正則化

    • Batch Normalization、Layer Normalization 等可緩解某些域轉移。
    • 原因:這些技術使模型對特徵分布的變動不那麼敏感。
  6. 資料增強(Data Augmentation)

    • 在訓練時施加與預期域轉移相似的變換(如影像旋轉、色彩抖動、背景模糊),提前「暴露」模型到可能的分布變化。
    • 現代增強技術(如 RandAugment、AutoAugment)能自動搜尋最有效的增強策略。
  7. 因果推斷與不變性學習(Invariant Learning)

    • 而非單純地擬合訓練分布,改為學習在多個域都成立的因果關係(不變特徵)。
    • 例如,『如果貓的耳朵豎立,則是貓』這個規則對各種光照、背景都成立,是不變的因果關係。

實務中常見的域轉移場景

  • 計算機視覺:不同相機、光照、天氣、季節、地理位置導致的圖像風格差異。
  • 自然語言處理:不同語言、方言、文體、時代的文本分布差異。
  • 語音識別:不同口音、性別、年齡、錄音設備、環境雜訊。
  • 推薦系統:用戶群體變化、季節變化、地區差異導致的偏好分布改變。
  • 醫療 AI:不同醫院的設備、標注習慣、患者人群差異。
  • 金融風控:市場環境、經濟周期、政策變化導致的特徵與風險關係改變。

常見問題

什麼是協變量轉移(Covariate Shift)?怎麼應對?

協變量轉移是指特徵分布 P(X) 改變,但給定特徵下的標籤條件機率 P(Y|X) 保持不變的情況。經典例子是垃圾郵件分類:訓練集來自 2015 年的郵件,2025 年部署時,垃圾郵件的詞彙 distribution(如新興詞彙、表情符號)已完全不同,但這些詞彙與垃圾的映射關係並未改變。應對方法有:第一,重要性加權(Importance Weighting),根據 P_test(X) / P_train(X) 為訓練樣本重新加權,使訓練分布近似測試分布;第二,特徵標準化或白化,使特徵分布變得與原始分布無關;第三,無監督域適應,用測試域無標注數據調整特徵表示。

預訓練模型為什麼能減輕域轉移?

在大規模通用資料上預訓練的模型(如 ImageNet 預訓練 ResNet)習得的是『底層視覺特徵』(邊、紋理、形狀),這些特徵對特定域的差異具有相當的魯棒性。當用這個預訓練模型在新域做微調時,只需調整『頂層的分類層』,而底層特徵已經泛化,因此對新域的適應能力強。反之,若從隨機初始化開始在新域訓練,模型會過度『記憶』新域的具體特徵,對其他域的泛化能力差。這也是遷移學習有效的本質原因:通用的、自監督預訓練特徵天然對多個域都適用。

開集域轉移(Open-set Domain Shift)比普通域轉移困難在哪裡?

普通域轉移假設訓練域和測試域的類別集合相同,只是分布不同。開集域轉移則是測試域包含訓練域未見過的類別,模型不只要適應分布改變,還要能識別『我沒見過這個類別』。這增加了兩層難度:第一,傳統分類器(如 Softmax)無法拒絕預測未知類別,即使高度不確定也會強行分配到已知類別;第二,域適應的假設(源域與目標域的類別相同)被違反。應對方法包括開集識別(在特徵空間中定義『已知類別的邊界』,超出邊界的判為未知)、異常檢測、以及考慮不確定性的概率方法(Bayesian)。