【Transfer Learning】遷移學習的總體概述和閱讀推薦(會持續更新)

1. 遷移學習的基本知識

在開始介紹遷移學習的基礎之前,推薦一本我覺得還不錯的遷移學習入門讀物:王晉東《遷移學習簡明手冊》。這本資料深入淺出,涉及了很多和遷移學習相關的內容,已經更新到了v1.1版本。與之相對應的是王晉東整理的Transfer learning papers。這幾乎涵蓋了2016年以來在遷移學習比較重要或者熱門的亮點論文,而且做了明確的分類和部分標註。

推薦幾篇比較權威的遷移學習的綜述:

  • Pan S J , Yang Q . A Survey on Transfer Learning[J]. IEEE Transactions on Knowledge and Data Engineering, 2010, 22(10):1345-1359. 楊強教授組的遷移學習的綜述,論文重點是對分類,迴歸和聚類問題的遷移學習進行分類,並且論證了遷移學習和其他機器學習技術的關係,如領域適應,多任務學習和樣本選擇偏差以及協變量偏移等。
  • Mei W , Weihong D . Deep Visual Domain Adaptation: A Survey[J]. Neurocomputing, 2018:S0925231218306684-. 深度視覺域適應的綜述。
  • Sun S , Shi H , Wu Y . A survey of multi-source domain adaptation[J]. Information Fusion, 2015, 24:84-92.關於多域-域適應的綜述。

推薦遷移學習領域的幾座山頭:

推薦幾篇個人認爲比較全面的遷移學習的博客/知乎/bilibili視頻等:
(如果小夥伴們有比較好的推薦請在評論裏留言,大家共同學習!!!)

  • CSDN——遷移學習基本知識:這篇博客主要羅列了一些遷移學習的基本概念,大概有20條左右,涉及到遷移學習基本概念、分類、域適應等。
  • 機器不學習:初識遷移學習:裏面包含了遷移學習一些概念、分類和一些應用場景。對於遷移學習的分類描述的比較詳細,
  • 機器學習的明天——遷移學習:這是2017年的一篇博客,有些內容已經比較老了,但是裏面有一個具體的案例可以輔助理解,還有對於傳遞式的遷移學習的簡單介紹。
  • 知乎種豆南山下——遷移學習的專欄:中科院學生對於遷移學習的專欄,裏面對於Domain Adaptaion大概有8篇文章,是深度Deep Domain Adaptaion的論文集,總結的非常全面,也對於DA有很明確的分類,可以參考。
  • 見微知著——細粒度圖像分析進展綜述:這是一片有關細粒度檢索的博客綜述,雖然和我們遷移學習的關聯性較弱,但是裏面記述了一些有關弱標籤soft-lable的知識點,可以參考。

1.1 爲什麼要遷移學習?

2016年,吳恩達在NIPS上也提到,“在監督學習之後,遷移學習將引領下一波機器學習技術商業化浪潮。” 也就是說,迄今爲止機器學習或者深度學習在業界的應用和成功,大多數主要由監督學習推動,而監督學習依靠的數據標註,需要海量標記數據才能訓練出成功的模型。這也從側面反映出了機器學習或者深度學習的侷限性,也就是在不同於訓練集的情況下泛化能力較差。所以我們的措施就是遷移學習,提高模型在多種場景上的泛化能力。遷移學習,最重要的就是遷移,也就是說把在舊知識裏面學到的知識應用到新知識裏面。而在這個問題中最關鍵的就是找到舊知識和新知識的相似性。

王晉東《遷移學習簡明手冊》裏面概括了幾個爲什麼要進行遷移學習的原因,主要是:

  • 大數據與少標註之間的矛盾(人工標註耗時耗力等)
  • 大數據與弱計算之間的矛盾(計算資源的匱乏等)
  • 普適化模型與個性化需求之間的矛盾(泛化能力和隱私需求等)
  • 特定應用的需求(推薦系統的冷啓動等)

所以對於上述幾方面的原因,在遷移學習中也有不同的應對手段

  • 大數據與少標註:遷移數據標註(例:可以構建模型對於數據進行標註,如soft-label/lazy-label)
  • 大數據與弱計算:模型遷移(例:基於模型的遷移)
  • 普適化模型與個性化需求:自適應學習
  • 特定應用的需求:相似領域知識遷移(例:基於數據和模型的遷移)

1.2 什麼是遷移學習

1.2.1 遷移學習的基本定義

遷移學習有兩個最基本的概念:域(Domain)和任務(Task)

  • 域: 一個域 DD 由一個特徵空間 XX 和特徵空間上的邊緣概率分佈 P(X)P(X) 組成,其中 X=x1,x2,...xnX=x_1,x_2,...x_n也就是:域=數據XX+生成這些數據的概率分佈F(X)F(X)
  • 任務: 在給定一個域 D=X,P(X)D={X,P(X)} 之後,一個任務 TT 由一個標籤空間 yy 以及一個條件概率分佈 P(Y/X)P(Y/X) 構成,其中,這個條件概率分佈通常是從由特徵—標籤對 xix_i, yiy_i組成的訓練數據中學習得到。也就是:任務=標籤+標籤對應的函數。
  • 域和任務可以用源(Source)/目標(Target) 來區分,及對應的是源域(DsD_s)-源任務(DtD_t),目標域(TsT_s)-目標任務(TtT_t)。此外,還包括在目標域上的預測函數:Ft(.)F_t(.)

遷移學習的定義: 給定源域 Ds=Xs,Fs(X)D_s={X_s, F_s(X)} 和學習任務 TsT_s ,目標域 DT=Xt,Ft(X)D_T={X_t,F_t(X)} 和學習任務 TtT_t ,遷移學習旨在源域不同於目標域或學習任務 TtT_t 不同於學習任務 TsT_s 的條件下,通過使用學習任務 TsT_s 和源域 Ds=Xs,Fs(X)Ds={X_s,F_s(X)} 所獲取的知識來幫助學習目標的在目標域 DtD_t 的預測函數 Ft(.)F_t(.)
舉例:陸地霧的分類–》海洋霧的分類:源域(陸地霧數據和概率分佈)和目標域(海洋霧數據和概率分佈)不同,學習任務(分類識別)相同。

1.3 遷移學習的分類

對於遷移學習的分類,可以按照特徵分類、按照場景和有無標籤分類、按照學習方法分類、按照離線在線形式分類。具體見下圖⬇️(這是自己總結的圖,如果有不周到的地方還請小夥伴們指出)。
在這裏插入圖片描述

1.3.1 按照特徵分類的遷移學習

  • 同構遷移學習:源域和目標域的特徵維度相同分佈不同
  • 異構遷移學習:源域和目標域的特徵空間不同

1.3.2 按照遷移情景分類的遷移學習

  • 歸納式遷移學習(Inductive TL):源域和目標域的學習任務不同
  • 直推式遷移學習(Transductive TL):源域和目標域不同,學習任務相同
  • 無監督遷移學習(Unsupervised TL):源域和目標域均沒有標籤

1.3.3 按照學習方法分類的遷移學習

  • 基於實例的遷移學習方法
    在源域中找到與目標域相似的數據,把這個數據的權值進行調整,使得新的數據與目標域的數據進行匹配。然後進行訓練學習,得到適用於目標域的模型。這樣的方法優點是方法簡單,實現容易。缺點在於權重的選擇與相似度的度量依賴經驗,且源域與目標域的數據分佈往往不同。
    在這裏插入圖片描述

  • 基於特徵的遷移學習方法
    當源域和目標域含有一些共同的交叉特徵時,我們可以通過特徵變換,將源域和目標域的特徵變換到相同空間,使得該空間中源域數據與目標域數據具有相同分佈的數據分佈,然後進行傳統的機器學習。優點是對大多數方法適用,效果較好。缺點在於難於求解,容易發生過適配。
    在這裏插入圖片描述

  • 基於模型的遷移學習方法
    源域和目標域共享模型參數,也就是將之前在源域中通過大量數據訓練好的模型應用到目標域上進行預測。基於模型的遷移學習方法比較直接,這樣的方法優點是可以充分利用模型之間存在的相似性。缺點在於模型參數不易收斂。
    在這裏插入圖片描述

  • 基於關係的遷移學習方法
    當兩個域是相似的時候,那麼它們之間會共享某種相似關係,將源域中學習到的邏輯網絡關係應用到目標域上來進行遷移,比方說生物病毒傳播規律到計算機病毒傳播規律的遷移。這部分的研究工作比較少。典型方法就是mapping的方法。
    在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章