淺談遷移學(xué)習(xí)
一、背景
隨著越來越多的機器學(xué)習(xí)應(yīng)用場景的出現(xiàn),而現(xiàn)有表現(xiàn)比較好的監(jiān)督學(xué)習(xí)需要大量的標注數(shù)據(jù),標注數(shù)據(jù)是一項枯燥無味且花費巨大的任務(wù),所以遷移學(xué)習(xí)受到越來越多的關(guān)注。
傳統(tǒng)機器學(xué)習(xí)(主要指監(jiān)督學(xué)習(xí))
- 基于同分布假設(shè)
- 需要大量標注數(shù)據(jù)
然而實際使用過程中不同數(shù)據(jù)集可能存在一些問題,比如
- 數(shù)據(jù)分布差異
- 標注數(shù)據(jù)過期:訓(xùn)練數(shù)據(jù)過期,也就是好不容易標定的數(shù)據(jù)要被丟棄,有些應(yīng)用中數(shù)據(jù)是分布隨著時間推移會有變化
如何充分利用之前標注好的數(shù)據(jù)(廢物利用),同時又保證在新的任務(wù)上的模型精度?
基于這樣的問題,所以就有了對于遷移學(xué)習(xí)
的研究
二、定義及分類
Transfer Learning Definition:
Ability of a system to recognize and apply knowledge and skills learned in previous domains/tasks to novel domains/tasks.
2.1、目標
將某個領(lǐng)域或任務(wù)上學(xué)習(xí)到的知識或模式應(yīng)用到不同但相關(guān)的領(lǐng)域或問題中。
2.2、主要思想
從相關(guān)領(lǐng)域中遷移標注數(shù)據(jù)或者知識結(jié)構(gòu)、完成或改進目標領(lǐng)域或任務(wù)的學(xué)習(xí)效果。
人在實際生活中有很多遷移學(xué)習(xí),比如學(xué)會騎自行車,就比較容易學(xué)摩托車,學(xué)會了C語言,在學(xué)一些其它編程語言會簡單很多。那么機器是否能夠像人類一樣舉一反三呢?
上圖是一個商品評論情感分析的例子,圖中包含兩個不同的產(chǎn)品領(lǐng)域:books 圖書領(lǐng)域和 furniture 家具領(lǐng)域;在圖書領(lǐng)域,通常用“broad”、“quality fiction”等詞匯來表達正面情感,而在家具領(lǐng)域中卻由“sharp”、“l(fā)ight weight”等詞匯來表達正面情感??梢姶巳蝿?wù)中,不同領(lǐng)域的不同情感詞多數(shù)不發(fā)生重疊、存在領(lǐng)域獨享詞、且詞匯在不同領(lǐng)域出現(xiàn)的頻率顯著不同,因此會導(dǎo)致領(lǐng)域間的概率分布失配問題。
2.3、遷移學(xué)習(xí)的形式定義及一種分類方式
遷移學(xué)習(xí)里有兩個非常重要的概念
- 域(Domain)
- 任務(wù)(Task)
域 可以理解為某個時刻的某個特定領(lǐng)域,比如書本評論和電視劇評論可以看作是兩個不同的domain
任務(wù) 就是要做的事情,比如情感分析和實體識別就是兩個不同的task
三、關(guān)鍵點
1.研究可以用哪些知識在不同的領(lǐng)域或者任務(wù)中進行遷移學(xué)習(xí),即不同領(lǐng)域之間有哪些共有知識可以遷移。
2.研究在找到了遷移對象之后,針對具體問題所采用哪種遷移學(xué)習(xí)的特定算法,即如何設(shè)計出合適的算法來提取和遷移共有知識。
3.研究什么情況下適合遷移,遷移技巧是否適合具體應(yīng)用,其中涉及到負遷移的問題。
當領(lǐng)域間的概率分布差異很大時,上述假設(shè)通常難以成立,這會導(dǎo)致嚴重的負遷移問題。
負遷移是舊知識對新知識學(xué)習(xí)的阻礙作用,比如學(xué)習(xí)了三輪車之后對騎自行車的影響,和學(xué)習(xí)漢語拼音對學(xué)英文字母的影響
研究如何利用正遷移,避免負遷移
四、基于實例的遷移
基于實例的遷移學(xué)習(xí)研究的是,如何從源領(lǐng)域中挑選出,對目標領(lǐng)域的訓(xùn)練有用的實例,比如對源領(lǐng)域的有標記數(shù)據(jù)實例進行有效的權(quán)重分配,讓源域?qū)嵗植冀咏繕擞虻膶嵗植迹瑥亩谀繕祟I(lǐng)域中建立一個分類精度較高的、可靠地學(xué)習(xí)模型。
因為,遷移學(xué)習(xí)中源領(lǐng)域與目標領(lǐng)域的數(shù)據(jù)分布是不一致,所以源領(lǐng)域中所有有標記的數(shù)據(jù)實例不一定都對目標領(lǐng)域有用。戴文淵等人提出的TrAdaBoost算法就是典型的基于實例的遷移。
五、基于特征的遷移
5.1、特征選擇
基于特征選擇的遷移學(xué)習(xí)算法,關(guān)注的是如何找出源領(lǐng)域與目標領(lǐng)域之間共同的特征表示,然后利用這些特征進行知識遷移。
5.2、特征映射
基于特征映射的遷移學(xué)習(xí)算法,關(guān)注的是如何將源領(lǐng)域和目標領(lǐng)域的數(shù)據(jù)從原始特征空間映射到新的特征空間中去。
這樣,在該空間中,源領(lǐng)域數(shù)據(jù)與的目標領(lǐng)域的數(shù)據(jù)分布相同,從而可以在新的空間中,更好地利用源領(lǐng)域已有的有標記數(shù)據(jù)樣本進行分類訓(xùn)練,最終對目標領(lǐng)域的數(shù)據(jù)進行分類測試。
六、基于共享參數(shù)的遷移
基于共享參數(shù)的遷移研究的是如何找到源數(shù)據(jù)和目標數(shù)據(jù)的空間模型之間的共同參數(shù)或者先驗分布,從而可以通過進一步處理,達到知識遷移的目的,假設(shè)前提是,學(xué)習(xí)任務(wù)中的的每個相關(guān)模型會共享一些相同的參數(shù)或者先驗分布。
七、深度學(xué)習(xí)和遷移學(xué)習(xí)結(jié)合
深度學(xué)習(xí)需要大量的高質(zhì)量標注數(shù)據(jù),Pre-training + fine-tuning 是現(xiàn)在深度學(xué)習(xí)中一個非常流行的trick,尤其是以圖像領(lǐng)域為代表,很多時候會選擇預(yù)訓(xùn)練的ImageNet對模型進行初始化。
下面將主要通過一些paper對深度學(xué)習(xí)中的遷移學(xué)習(xí)應(yīng)用進行探討
八、Pre-training+Fine-tuning
2014年Bengio等人在NIPS上發(fā)表論文 How transferable are features in deep neural networks,研究深度學(xué)習(xí)中各個layer特征的可遷移性(或者說通用性)
文章中進行了如下圖所示的實驗,有四種模型
- Domain A上的基本模型BaseA
- Domain B上的基本模型BaseB
- Domain B上前n層使用BaseB的參數(shù)初始化(后續(xù)有frozen和fine-tuning兩種方式)
- Domain B上前n層使用BaseA的參數(shù)初始化(后續(xù)有frozen和fine-tuning兩種方式)
將深度學(xué)習(xí)應(yīng)用在圖像處理領(lǐng)域中時,會觀察到第一層(first-layer)中提取的features基本上是類似于Gabor濾波器(Gabor filters)和色彩斑點(color blobs)之類的。
通常情況下第一層與具體的圖像數(shù)據(jù)集關(guān)系不是特別大,而網(wǎng)絡(luò)的最后一層則是與選定的數(shù)據(jù)集及其任務(wù)目標緊密相關(guān)的;文章中將第一層feature稱之為一般(general)特征,最后一層稱之為特定(specific)特征
- 特征遷移使得模型的泛化性能有所提升,即使目標數(shù)據(jù)集非常大的時候也是如此。
- 隨著參數(shù)被固定的層數(shù)n的增長,兩個相似度小的任務(wù)之間的transferability gap的增長速度比兩個相似度大的兩個任務(wù)之間的transferability gap增長更快 兩個數(shù)據(jù)集越不相似特征遷移的效果就越差
- 即使從不是特別相似的任務(wù)中進行遷移也比使用隨機filters(或者說隨機的參數(shù))要好
- 使用遷移參數(shù)初始化網(wǎng)絡(luò)能夠提升泛化性能,即使目標task經(jīng)過了大量的調(diào)整依然如此。
九、DANN (Domain-Adversarial Neural Network)
這篇paper將近兩年流行的對抗網(wǎng)絡(luò)思想引入到遷移學(xué)習(xí)中,從而提出了DANN
圖中所展示的即為DANN的結(jié)構(gòu)圖,框架由feature extractor、label predictor和domain classifier三個部分組成,并且在feature extractor和domain classifier 之間有一個gradient reversal layer;其中domain classifier只在訓(xùn)練過程中發(fā)揮作用
- DANN將領(lǐng)域適配和特征學(xué)習(xí)整合到一個訓(xùn)練過程中,將領(lǐng)域適配嵌入在特征表示的學(xué)習(xí)過程中;所以模型最后的分類決策是基于既有區(qū)分力又對領(lǐng)域變換具有不變性的特征。
- 優(yōu)化特征映射參數(shù)的目的是為了最小化label classifier的損失函數(shù),最大化domain classifier的損失函數(shù),前者是為了提取出具有區(qū)分能力的特征,后者是為了提取出具有領(lǐng)域不變性的特征,最終優(yōu)化得到的特征兼具兩種性質(zhì)。
以上就是淺談遷移學(xué)習(xí)的詳細內(nèi)容,更多關(guān)于遷移學(xué)習(xí)的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
TCP 四種定時器(重傳定時器,堅持計時器,?;疃〞r器,時間等待計時器)
這篇文章主要介紹了TCP 四種定時器,重傳定時器,堅持計時器,保活定時器,時間等待計時器的相關(guān)資料,需要的朋友可以參考下2017-03-03