Deep Learning 101, Taiwan’s pioneering and highest deep learning meetup, launched on 2016/11/11 @ 83F, Taipei 101
AI是一條孤獨且充滿惶恐及未知的旅程,花俏絢麗的收費課程或活動絕非通往成功的捷徑。
衷心感謝當時來自不同單位的AI同好參與者實名分享的寶貴經驗;如欲移除資訊還請告知。
由 TonTon Huang Ph.D. 發起,及其當時任職公司(台灣雪豹科技)無償贊助場地及茶水點心。
去 YouTube 訂閱 | Facebook | 回 GitHub Pages | 到 GitHub 點星 | 網站 | 到 Hugging Face Space 按愛心
大語言模型 | 語音處理 | 自然語言處理 | 電腦視覺 |
Large Language Model | Speech Processing | Natural Language Processing, NLP | Computer Vision |
用 AI 懂 AI
AI 技術 體驗/分享
手把手帶你一起踩 AI 坑:https://www.twman.org/AI
- 白話文手把手帶你科普 GenAI:淺顯介紹生成式人工智慧核心概念,強調硬體資源和數據的重要性。
- 大型語言模型直接就打完收工?:回顧 LLM 領域探索歷程,討論硬體升級對 AI 開發的重要性。
- 檢索增強生成(RAG)不是萬靈丹之優化挑戰技巧:探討 RAG 技術應用與挑戰,提供實用經驗分享和工具建議。
- 大型語言模型 (LLM) 入門完整指南:原理、應用與未來:探討多種 LLM 工具的應用與挑戰,強調硬體資源的重要性。
- 解析探索大型語言模型:模型發展歷史、訓練及微調技術的 VRAM 估算:探討 LLM 的發展與應用,硬體資源在開發中的作用。
- Diffusion Model 完全解析:從原理、應用到實作 (AI 圖像生成);深入探討影像生成與分割技術的應用,強調硬體資源的重要性。
- ASR/TTS 開發避坑指南:語音辨識與合成的常見挑戰與對策:探討 ASR 和 TTS 技術應用中的問題,強調數據質量的重要性。
- 那些 NLP 踩的坑:分享 NLP 領域的實踐經驗,強調數據質量對模型效果的影響。
- 那些語音處理踩的坑:分享語音處理領域的實務經驗,強調資料品質對模型效果的影響。
- 手把手學深度學習安裝環境:詳細介紹在 Ubuntu 上安裝深度學習環境的步驟,分享實際操作經驗。
AI 技術 開源/試用
Domain adaptation
2019/03/08, Mark Chang, Domain adaptation
網域適應 (Domain Adaptation) 關鍵重點匯整
核心概念與問題定義
- 傳統機器學習的局限性: 傳統上,機器學習模型假設訓練資料 (Source Domain) 和測試資料 (Target Domain) 來自同一個資料分佈 (Data Distribution) [1-3]。在此理想情況下,訓練誤差應接近測試誤差,且測試誤差應接近零 [1, 3]。
- 網域適應問題: Domain Adaptation 處理的核心問題是訓練資料 (Source Domain) 和實際應用資料 (Target Domain) 的資料分佈不一致的情況 [2-4]。
- 為何傳統理論失效: 當資料分佈不同時,傳統機器學習理論不再適用 [3, 4]。在 Source Domain 訓練的模型直接應用於 Target Domain 可能性能會顯著下降 [2, 4]。因此,Domain Adaptation 需要新的理論來保證在 Target Domain 上的誤差與 Source Domain 訓練誤差之間的關係 [3, 4]。
影響模型在目標網域性能的因素
根據 Domain Adaptation 的理論,模型在 Target Domain 上的表現主要受到以下因素影響:
- 輸入資料 (Input X) 的分佈差異: Source Domain 和 Target Domain 之間在輸入資料分佈上的距離 [2, 5]。直覺上,分佈距離越小,模型在 Target Domain 上的誤差就越小 [5, 6]。
- 標記者的差異 (Labeler Difference / Label Distance): Source Domain 和 Target Domain 的資料可能由不同的人或以不同標準進行標記 [2, 5, 7]。這種標記標準的不一致也會導致誤差,影響模型在 Target Domain 的表現 [2, 5, 7, 8]。若要標記大量資料,最好能有多人交叉檢查以減少標記差異 [7, 9]. 這種差異可以透過交叉標記的方式來量化 [7-9].
理論基礎與誤差界限
- 目標: Domain Adaptation 的目標是開發理論和方法,即使在分佈不同的情況下,也能使在 Source Domain 訓練的模型在 Target Domain 的表現接近理想狀況 [2, 3]。理論上需要推導出 Target Domain 誤差的上限 (Error Bound) [5, 9-11]。
- 基礎理論 (Theorem 1 概念): 基礎理論指出,Target Domain 上的錯誤率上限受限於 Source Domain 錯誤率、Source 和 Target Domain 之間的輸入資料分佈距離 (Distance of X),以及理想假設下的組合錯誤(或標記者標準差異相關項)[5, 8, 11, 12]。
- 改進的理論 (Theorem 2): 基於 Hypothesis 估計距離的改進理論提供了更接近實際應用的誤差上界 [9, 10, 13, 14]。這個上界主要包含幾項 [10, 13, 14]:
- Source Domain 上的錯誤率 [10, 13, 14]。
- Source 和 Target Domain 之間的 Hypothesis 距離 [10, 13, 14]。
- 與 Hypothesis 空間複雜度 (VC Dimension) 和資料量 (樣本數量) 有關的項 [10, 13, 15],這考慮了過度擬合 (Overfitting) 的風險 [10, 13, 15, 16]。VC 維度越高,模型越容易過擬合,導致使用訓練數據估計的距離與真實距離差距變大 [15, 17]。
- 理想假設下的聯合錯誤率 (Combined Error),指在 Source 和 Target 結合資料上訓練的理想模型的誤差 [10, 13]。
- 通過控制這些項,可以估計和改進模型在 Target Domain 上的表現 [10, 13, 14]。
- 理想假設 (Ideal Hypothesis H*): 指在知道所有 Source 和 Target Domain 資料的標籤情況下,能在聯合資料分佈上達到最低誤差的假設 [16, 18]。
衡量網域間距離
- 基於分佈的距離 (例如:Total Variation Distance 概念): 理論上,可以使用概率密度函數的差異來衡量距離,通過找到一個集合 (Set B) 使兩個分佈在該區域的積分差最大 [7, 12, 16, 19]。這個距離與分佈的重疊程度有關 [12, 19]。
- 理論計算的挑戰: 實際應用中直接計算基於分佈的距離非常困難 [8, 17, 19]。主要問題包括:
- 處理複雜的資料分佈形狀時,難以找到最佳分割區域 (Set B) [8, 17, 19]。
- 對分佈的微小位置偏移過於敏感,可能導致距離計算值很大,高估了適應難度 (overly pessimistic) [17, 19]。
- 利用 Hypothesis 估計距離: 為克服上述挑戰,可以利用 Hypothesis (訓練好的模型) 來估計 Domain 間距離 [9, 17, 20, 21]。方法是訓練一個分類器 (Hypothesis H),使其能夠區分來自 Source Domain (目標分類為 1) 和 Target Domain (目標分類為 0) 的資料 [15, 20, 21].
- 分類器越難區分 Source 和 Target 資料(錯誤率越高),表示兩個 Domain 距離越小 [17, 20, 22, 23]。
- 這種方法避免了處理複雜分佈和微小偏移的問題 [17, 20, 21].
- Symmetric Difference Hypothesis Space Distance: 這是一種基於 Hypothesis 的距離衡量方法,定義了兩個 Hypothesis 在資料分佈上產生不同預測結果的區域的「大小」[14, 16, 24]. 它在理論推導中用於將錯誤率與 Hypothesis 距離聯繫起來 [18, 25].
- Lemma 3 概念: 這個引理解釋了如何將兩個 Hypothesis 之間的錯誤率差異轉換為 Hypothesis 之間的距離 [9, 18, 25].
實際應用方法與案例
- 理論指導演算法設計: Domain Adaptation 理論為設計演算法提供了指導思路,即通過減小 Source 和 Target 之間的距離來改進模型性能 [9, 26].
- 縮小網域差距的方法 (使用 GANs): [10]
- 減小 Feature Space 距離: 利用 GANs 的 Discriminator 來區分 Source 和 Target Domain 資料在 Feature Space 的表示 [27]。訓練生成器/特徵提取器產生能騙過判別器的 Source Features,迫使 Source 和 Target Features 分佈更接近 [27].
- 減小 Image Space 距離 (Image-to-Image Translation): 直接將 Source Domain 圖像轉換為 Target Domain 風格,使合成圖像看起來更真實 [27, 28]. 可以使用 GANs 實現此目的,類似 CycleGAN 的方法 [9, 28].
- 合成資料 (Synthesized Data) 的應用: 在 Target Domain 標籤資料稀缺時非常有用 [26, 29].
- 可以使用 3D 建模工具(如 Blender 和 MakeHuman)生成大量帶有精確標籤的 Source Domain 合成資料(如人體關節位置)[9, 16, 23, 26, 28, 30].
- 將在大量合成資料上訓練的模型遷移到少量的真實 Target Domain 資料上 [26, 29].
- 合成資料的優勢在於可以大量生成並控制變數(如服裝、背景、人種、姿態等),減少真實資料收集和標記的難度 [23, 26, 29].
- 人體關節位置偵測案例: Source Domain 使用合成的 3D CAD 模型資料 [16, 26, 29],Target Domain 使用真實照片 [26, 29]. 通過 Domain Adaptation 技術,使在合成資料上訓練的模型能泛化到真實照片 [26, 29]. 研究顯示利用 GAN 縮小 Domain Gap 能提高效果 [9, 27, 28].
- 醫學資料應用與挑戰: 醫學資料獲取真實標記資料困難 [9, 31],不同醫院/儀器資料差異大 [9, 31],標記標準不一 [9, 31]. 克服醫學應用的挑戰不僅是技術問題,還涉及法規、制度和與醫院關鍵人員的合作 [9, 31, 32]. 連續學習 (Continuous Learning) 或終身學習 (Lifelong Learning) 可能有潛力 [9, 31].
- 多個 Source Domain 的選擇: 當有多個 Source Domain 可選時,應選擇與 Target Domain 距離最小的 Source Domain [22]. 可以通過訓練一個分類器 (類似於 GAN 的 Discriminator) 來區分不同 Source Domain 和 Target Domain 的資料 [22, 23]. 難以區分的 Source Domain (分類器錯誤率高) 表示距離較小,是較好的選擇 [22, 23].
相關概念
- Domain Adaptation vs. Transfer Learning: Domain Adaptation 更側重於理論上量化 Source 和 Target 之間的距離,並提供評估不同 Domain 資料代表性的方法 [9, 16, 32]. Transfer Learning 是更廣泛的概念,Domain Adaptation 是其下的分支,專注於解決分佈差異的問題 [9, 32].
- Domain Adaptation vs. MCMC: Domain Adaptation 中的採樣是從固定的分佈中抽取資料 [9, 32],與 MCMC 中在不同狀態之間移動來採樣的概念不同 [9, 32].