遷移學習Transfer Learning
阿新 • • 發佈:2018-12-19
1、簡介
一句話概括:從以前的任務當中去學習知識(knowledge)或經驗,並應用於新的任務當中。
傳統的機器學習方法包括有監督學習、無監督學習和半監督學習,針對不完全資料,有監督和半監督學習還有相應的變形,如處理噪聲分類標籤問題以及代價敏感學習。然而,這些方法的大多數都假設已標註資料與未標註資料的分佈是相同的。與之相反的是,遷移學習允許源空間、任務空間,並且在測試集和訓練集中的分佈是不同的。
2、數學形式描述
domain. 資料域(domain)由兩個部分組成:特徵空間 XXXX 和邊緣概率分佈 P(X)P(X)
task. 一個任務(task)由兩個部分組成:空間的標籤 YYYY,和一個目的預測函式 f(.)
Transfer Learning: Ds≠Dt或者 Ts≠Tt
說明:當 Ds=DtDs=Dt 且 Ts=TtTs=Tt 的時候是傳統的機器學習演算法。比如在文字分類的例子中, Ds≠DtDs≠Dt 可能兩個文字的語言不同,也有可能文字相同但是多關注的主題不同; Ts≠TtTs≠Tt 可能是一個是二分類問題,另一個十分類問題,也有可能是根據使用者定義的類源和目標中的文字是不均衡的。
3、分類
4、遷移學習方法
(1)Domain-adversarial Training:
引入一個 domain classifier
(相當於GAN 中 discriminator),用於判別 feature extractor
feature extractor
則努力消除 features 分佈在 target domain 和 source domain 上的差異,騙過domain classifier
的鑑別
(2) Fine-tuning:拿訓練好的網路(引數load而不是隨機初始化),在目標資料集上稍微迭代幾次
(3)Multitask Learning:copy某些層,改變某些層
(4)Zero-Shot learning:測試集中的標籤在訓練集中沒有出現過