任務分布 是什麼?
Task Distribution:任務分布 的完整解釋
元學習中,多個相關任務的集合及其統計特性的抽象,定義了『哪些任務相關』及『任務多樣性如何』。
任務分布(Task Distribution)是元學習中常被低估但至關重要的概念。在傳統監督學習中,我們關注資料分布 p(X, Y);在元學習中,我們關注任務分布 p(T)。理解和設計好的任務分布是元學習成功的關鍵。
任務分布的形式化定義
一個任務 T 通常由以下要素組成:
- 資料集:{ (x_1, y_1), ..., (x_n, y_n) }
- 損失函數:L(·, ·)
- 評估指標:precision, recall, F1 等
任務分布 p(T) 定義了各類任務出現的概率。在圖像分類的少樣本學習中,任務可能是 5-way 分類(隨機選 5 個類別),任務分布由『任意 5 個類別的組合』組成。
任務分布設計的維度
類別維度
- 類別相似性:不同類別在語義上或視覺上的相似程度。極相似的類別(如不同狗品種)使任務更困難;區別明顯的類別(如貓 vs. 汽車)使任務容易。
- 類別組合方式:N-way 中 N 的大小、類別的隨機選擇策略等。
樣本維度
- 支持集大小(K-shot):K 越小,任務越困難,要求快速適應能力越強。
- 查詢集大小:影響任務評估的穩定性。
- 樣本分布:支持集中樣本的多樣性、是否存在離群值等。
資料特性維度
- 資料域(Domain):影像來自何種源(自然圖像、醫療影像、衛星影像等)。
- 噪音水平:任務資料的品質(清晰度、標註正確性等)。
- 不平衡程度:不同類別的樣本數是否平衡。
任務複雜度維度
- 決策邊界的線性度:線性可分的任務 vs. 需要複雜決策邊界的任務。
- 特徵空間的複雜度:任務特徵空間的維度、結構等。
任務分布的重要性
任務分布的品質直接決定了元學習的成功。考慮兩個極端:
極端 1:任務分布相同
若所有訓練任務都完全相同(例如,都是同一個類別的 5-way 分類),模型學不到「如何快速適應」,只能學到「這個特定分類問題的最優解」。在新的、不同的任務上性能會很差。
極端 2:任務分布無相關性
若訓練任務完全不相關(如混合影像分類、時間序列預測、機器人控制),模型無法找到跨任務的通用策略,因為不同任務的最優方法差異巨大。元學習無法發揮作用。
- 最優的任務分布應在這兩個極端之間:
- 任務間存在明確的相關性(如都是視覺識別任務)。
- 任務內部有足夠的多樣性(不同的類別、資料源、難度)。
這樣,模型能學到一個通用但任務特定的快速適應策略。
實務中的任務分布設計
1. 少樣本圖像分類
經典的 miniImageNet、Caltech-UCSD Birds(CUB)等基準的任務分布定義:
- 隨機選擇 N 個類別作為該任務的分類目標。
- 從每個類別中採樣 K 個訓練樣本(支持集)和若干查詢樣本。
- N 和 K 固定(如 5-way 5-shot),所有任務形成一個分布。
這個分布的優點是簡潔、可重複;缺點是沒有考慮類別相似度(可能導致某些任務過難或過易)。
2. 域適應任務分布
在域適應問題中,任務分布可能由源域和目標域的組合定義:
- 源任務:來自源域(如合成圖像)的分類任務。
- 目標任務:來自目標域(如真實圖像)的分類任務。
- 任務分布 p(T) 定義了源域任務和目標域任務的混合比例,及其特性。
設計好的分布應包含足量的源域任務以提供泛化能力,也包含目標域任務以引導適應。
3. 強化學習任務分布
在強化學習的元學習中,任務分布定義:
- 環境類型(網格世界、連續控制、遊戲等)。
- 獎勵函數的變化(目標改變、獎勵結構改變)。
- 動力學的變化(智能體運動特性改變)。
好的分布應涵蓋環境多樣性同時保持控制目標相關。
任務分布與元模型性能的關係
研究表明,元模型的泛化能力與訓練任務分布的覆蓋範圍密切相關:
- 若測試任務來自訓練任務分布的核心,泛化通常很好。
- 若測試任務位於訓練分布的邊界,性能會下降。
- 若測試任務完全超出訓練分布(如訓練時沒見過的任務類型),泛化可能失效。
這啟發了一個重要的元學習設計原則:任務分布應盡可能覆蓋真實應用中可能遇到的任務範圍。
任務分布的度量
衡量任務分布的多樣性,可使用:
- 熵(Entropy):任務類型或困難度的分布熵,更均勻的分布有更高熵。
- 覆蓋範圍:特徵空間中任務所覆蓋的區域大小。
- 任務相似度:任務間的平均相似度(用某種距離度量),相似度越低,任務越多樣。
- 任務難度的變異:任務難度(如 F1 分數的預期值)的方差。
常見的任務分布陷阱
分布漂移(Distribution Shift) 訓練任務分布與測試任務分布不匹配。例如,訓練時使用 miniImageNet 的自然圖像,測試時應用到醫療影像,會遇到域適應問題。
任務採樣偏差 若訓練中某些任務類型被高度採樣,模型會過擬合這些任務,在低採樣任務上性能差。
任務複雜度失衡 若大多數訓練任務都很容易,模型學不到應對困難任務的策略;反之則過度針對困難情況。
非靜態任務分布 若任務分布隨時間演變(如持續學習場景),靜態元學習方法會逐漸不適應。
改進任務分布的策略
課程學習 從簡單任務開始訓練,逐漸引入難度增加的任務,幫助模型漸進式地學習。
任務合成 使用數據增強或合成技術生成新任務,豐富訓練分布的多樣性。
自適應任務採樣 根據模型的當前性能,動態調整任務採樣概率,優先採樣模型目前表現差的任務。
任務重加權 對不同任務分配不同的損失權重,強調對整體泛化能力最有幫助的任務。
元分布學習 進一步抽象,學習「什麼樣的任務分布能產生通常的元模型」,自動設計任務分布。