筆者按 :機(jī)器學(xué)習(xí)正在走向基于“語義”的可解釋模型的新時(shí)代诵肛。遷移學(xué)習(xí)很有可能接過監(jiān)督學(xué)習(xí)今天的輝煌,顯著提升模型的可解釋性和適應(yīng)性:不僅在有著大數(shù)據(jù)的領(lǐng)域性能優(yōu)異体斩,還能遷移到只有小數(shù)據(jù)的新領(lǐng)域中表現(xiàn)出色铲掐。
概要
CCAI主辦方提供了Slides的下載鏈接窍箍。報(bào)告分四個(gè)主要部分豪硅,而本文主要總結(jié)和評述前三部分哩照。
?1. 遷移學(xué)習(xí)的優(yōu)勢
?2. 深度遷移學(xué)習(xí)解決方案
?3. 三種遷移學(xué)習(xí)的范式
?4. 遷移學(xué)習(xí)應(yīng)用案例
1. 遷移學(xué)習(xí)的優(yōu)勢
報(bào)告歸納了三個(gè)關(guān)鍵詞:小數(shù)據(jù)、可靠性和個(gè)性化懒浮,我所歸納的優(yōu)勢就一個(gè)詞——“適應(yīng)性”飘弧。
?1. 適應(yīng)小數(shù)據(jù):遷移學(xué)習(xí)能夠?qū)⒋髷?shù)據(jù)所訓(xùn)練的學(xué)習(xí)器遷移到只有小數(shù)據(jù)的領(lǐng)域。將“大數(shù)據(jù)幫助小數(shù)據(jù)”落地砚著。
是不是很熟悉次伶?其實(shí)Dr.Fei Sha的報(bào)告也同樣關(guān)注了“小數(shù)據(jù)學(xué)習(xí)”的問題,而采用的具體實(shí)現(xiàn)手段不同稽穆,后者采用的是多任務(wù)學(xué)習(xí)冠王、領(lǐng)域適應(yīng)和零樣本學(xué)習(xí)。
?2. 提升可靠性:遷移學(xué)習(xí)所訓(xùn)練的模型具有適應(yīng)性舌镶,可以遷移到多個(gè)領(lǐng)域而不產(chǎn)生顯著的性能下降柱彻。
?3. 滿足個(gè)性化:其實(shí)也是適應(yīng)性的體現(xiàn)。例如餐胀,每個(gè)人的個(gè)性化樣本可能是小數(shù)據(jù)哟楷,但是在大數(shù)據(jù)訓(xùn)練出的遷移學(xué)習(xí)模型基礎(chǔ)上,就能很好滿足個(gè)性化的需求否灾。
既然遷移學(xué)習(xí)這么好卖擅,最有可能接過“監(jiān)督學(xué)習(xí)”的接力棒,帶動(dòng)下一輪的機(jī)器學(xué)習(xí)熱潮墨技。當(dāng)然磨镶,監(jiān)督學(xué)習(xí)還會(huì)繼續(xù)發(fā)掘新的領(lǐng)域,而非監(jiān)督學(xué)習(xí)和強(qiáng)化學(xué)習(xí)當(dāng)然也不甘示弱健提。
那么,在給出解決方案之前伟叛,首先得明確問題:遷移學(xué)習(xí)的難點(diǎn)是什么私痹?
報(bào)告給出的回答是:找出不變量。
什么是不變量呢统刮?
?1. 首先紊遵,在下面第一張圖中給出了個(gè)在不同條件下駕駛汽車的例子,無論是駕駛員還是自動(dòng)駕駛儀侥蒙,都需要尋找出在不同條件下“駕駛汽車”的共性知識(shí)(即不變量)暗膜,從而快速適應(yīng)新的條件。
?2. 如果推廣到一般情況鞭衩,下面第二張圖描述了遷移學(xué)習(xí)中不變量或者共性知識(shí)(Knowledge)的地位学搜,它是源領(lǐng)域和目標(biāo)領(lǐng)域?qū)W習(xí)模型(Model)之間建立遷移的橋梁娃善。
接下來,楊強(qiáng)博士介紹了他對不變量的理解和建模瑞佩,從而引出了他們研究組所提出的"深度學(xué)習(xí)+遷移學(xué)習(xí)"的解決方案聚磺。
2. "深度學(xué)習(xí)+遷移學(xué)習(xí)"的解決方案
楊強(qiáng)博士認(rèn)為:遷移學(xué)習(xí)本質(zhì)是知識(shí)遷移,后者可以轉(zhuǎn)化為參數(shù)遷移炬丸,而這個(gè)參數(shù)可以是(深度)神經(jīng)網(wǎng)絡(luò)中的權(quán)值瘫寝。
2.1 先驅(qū)工作
參考DAN(Deep Adaptation Network)[ICML 2015] ,較早些的深度遷移學(xué)習(xí)工作得出了三條主要結(jié)論稠炬,并如下圖所示焕阿。具體的量化分析采用的是最大平均差異Maximum Mean Discrepancy(MMD)。
?1. 凍結(jié)淺層(Frozen Shallow-Layer):多個(gè)領(lǐng)域共享淺層權(quán)值首启,認(rèn)為淺層權(quán)值是具有強(qiáng)適應(yīng)性的共性知識(shí)暮屡。
?2. 區(qū)分深層(Distinguish Deep-Layer for Different Domains):認(rèn)為深層權(quán)值代表了領(lǐng)域知識(shí),因此要把多個(gè)領(lǐng)域之間的距離刻畫出來闽坡。
?3. 微調(diào)中層(Fine-tune Intermediate-Layer):介于淺層共性知識(shí)和深層領(lǐng)域知識(shí)之間栽惶,通過微調(diào)權(quán)值以滿足對應(yīng)領(lǐng)域的需求。
2.2 重新思考遷移的損失(Loss)
在回顧了一系列關(guān)于深度遷移模型的量化分析先驅(qū)工作后疾嗅,報(bào)告給出對量化遷移學(xué)習(xí)損失的更深入思考
如果采用普遍適用的損失(Loss)來進(jìn)行量化外厂,在目標(biāo)領(lǐng)域的遷移學(xué)習(xí)所產(chǎn)生的損失可以分解為兩部分:源領(lǐng)域分類損失(source domain classification loss)和領(lǐng)域間距離損失(domain distance loss) 。源領(lǐng)域分類損失的量化是傳統(tǒng)問題代承,而領(lǐng)域間距離損失是新問題汁蝶,對這個(gè)問題的理解不僅決定了對遷移學(xué)習(xí)本質(zhì)的認(rèn)識(shí),也決定了遷移學(xué)習(xí)量化分析的思路论悴,得出不同的遷移學(xué)習(xí)范式掖棉。報(bào)告總結(jié)了現(xiàn)有工作對領(lǐng)域間距離損失的三種主要理解和對應(yīng)的范式,如下圖所示:
?1. 差異損失(discrepancy loss)和基于差異的范式:直接度量和最小化兩個(gè)領(lǐng)域之間的差異膀估。
?2. 對抗損失(adversarial loss)和基于對抗的范式:基于對抗目標(biāo)(adversarial objective)幔亥,構(gòu)建共同的特征空間,設(shè)計(jì)領(lǐng)域鑒別器(domain discriminator)察纯。
?3. 重建損失(reconstruction loss)和基于共享的范式:結(jié)合非監(jiān)督學(xué)習(xí)和監(jiān)督學(xué)習(xí)帕棉,建立介于源領(lǐng)域和目標(biāo)領(lǐng)域之間的共享領(lǐng)域(Intermediate domain),后者作為中介一樣承載著知識(shí)遷移饼记。
接下來這一節(jié)香伴,分別介紹上面三種遷移學(xué)習(xí)的范式。注:筆者沒有按照報(bào)告的順序具则。
3. 三種遷移學(xué)習(xí)的范式
3.1 基于差異的范式
基于差異的范式要回答三個(gè)問題:
?1. 度量的對象是什么即纲?邊緣分布、聯(lián)合分布等等博肋。
?2. 度量的指標(biāo)是什么低斋?MDD蜂厅、多核MMD(MK-MMD)、聯(lián)合分布差異(JDD)等等拔稳。
?3. 在深度神經(jīng)網(wǎng)絡(luò)中何處調(diào)節(jié)參數(shù)葛峻?其中某一層或者某些層。
隨后報(bào)告給出了在計(jì)算機(jī)視覺巴比、自然語言處理中的遷移學(xué)習(xí)和多模態(tài)遷移學(xué)習(xí)的案例术奖,并強(qiáng)調(diào)了正則化的重要性,具體可參見[Slides]的22-25頁轻绞。
3.2 基于對抗的范式
這個(gè)范式基于生成對抗網(wǎng)絡(luò)(GAN)設(shè)計(jì)遷移學(xué)習(xí)(具體參見這兒)采记。其基本思想是設(shè)計(jì)和訓(xùn)練兩套學(xué)習(xí)器:生成器G和分類器D,基于G生成新的樣本政勃,基于D分辨生成樣本的質(zhì)量唧龄,通過G和D之間的博弈交互提升G和D的性能。筆者將報(bào)告中的兩種思路凝練為:基于領(lǐng)域正逆映射和共性特征提取的思路奸远。
3.2.1 基于領(lǐng)域正逆映射的思路
報(bào)告以CycleGAN為代表[ICCV 2017]描述了第一種思路:
?1. 跨領(lǐng)域的特征空間和映射:將源領(lǐng)域到目標(biāo)領(lǐng)域的映射建模為生成器G既棺,同時(shí)對應(yīng)一個(gè)逆向映射F。
?2. 構(gòu)建對抗目標(biāo):在目標(biāo)領(lǐng)域設(shè)計(jì)和訓(xùn)練分類器懒叛,用于檢測從源領(lǐng)域到目標(biāo)領(lǐng)域的遷移學(xué)習(xí)損失丸冕。CycleGAN的有意思之處是還設(shè)計(jì)從目標(biāo)領(lǐng)域到源領(lǐng)域的反向遷移和分類器。如果從目標(biāo)領(lǐng)域逆向遷移回源領(lǐng)域后薛窥,生成的樣本仍能達(dá)到較好的效果胖烛,那就說明遷移的效果很好。
?4. 遷移學(xué)習(xí)損失度量:包括了正向映射和逆向映射產(chǎn)生的對抗損失(adversarial loss)诅迷,以及環(huán)路一致性損失(cycle-consistency loss)佩番。具體流程如下圖所示。
3.2.2 基于共性特征提取的思路
報(bào)告以對抗領(lǐng)域適應(yīng)(Adversarial domain adaptation)為代表[JMLR 2016]描述了第二種思路:
?1. 雙支路對抗架構(gòu):第一條支路包括了特征提取器(feature extractor)和標(biāo)簽預(yù)測器(label predictor)罢杉,構(gòu)成了一個(gè)標(biāo)準(zhǔn)的前饋結(jié)構(gòu)趟畏。第二條支路共享了第一條支路的特征提取器,通過一個(gè)梯度反向?qū)?gradient reversal layer)接入一個(gè)領(lǐng)域分類器(domain classifier)滩租,因此其關(guān)鍵是在反向BP訓(xùn)練時(shí)拱镐,梯度被乘以一個(gè)負(fù)的常數(shù),從而引入了對抗持际。
?2. 對抗訓(xùn)練效應(yīng):如果不加入梯度反向?qū)樱p支路架構(gòu)就是個(gè)標(biāo)準(zhǔn)的多功能網(wǎng)絡(luò)哗咆,同時(shí)降低標(biāo)簽預(yù)測和領(lǐng)域分類的損失蜘欲。但是因?yàn)榧軜?gòu)中加入了對抗用的梯度反相器,訓(xùn)練結(jié)果是“即使兩個(gè)領(lǐng)域有差別晌柬,雙支路對抗網(wǎng)絡(luò)在特征提取器的輸出是幾乎相同的”姥份。于是郭脂,特征提取器(feature extractor) 輸出的是與領(lǐng)域無關(guān)的不變量。
具體架構(gòu)如下圖所示澈歉。
![DTL-8]
(https://gitlab.com/zb14zb14/blog_attachment/raw/cc6a42171e5f477db16a1e132cef287aefcb317b/Pictures/Deep%20Transfer%20Learning/DTL-8.JPG)
3.3 基于共享的范式
關(guān)于基于共享的范式展鸡,楊強(qiáng)博士對自己實(shí)驗(yàn)室的工作[KDD 2015]作了較為詳細(xì)的介紹,筆者補(bǔ)充了[ECCV 2016]
3.3.1 基于中間領(lǐng)域的遷移
基本架構(gòu)如下圖所示埃难,包括了輸入輸出定義莹弊,以及中間領(lǐng)域選擇和知識(shí)遷移兩個(gè)步驟,具體請參見[KDD 2015]涡尘。
?1. 輸入:源領(lǐng)域忍弛、目標(biāo)領(lǐng)域和候選的中間領(lǐng)域
?2. 輸出:目標(biāo)領(lǐng)域的預(yù)測結(jié)果
?3. 中間領(lǐng)域選擇:中間領(lǐng)域的候選和選擇策略與問題相關(guān)。例如考抄,源領(lǐng)域是圖像數(shù)據(jù)细疚,目標(biāo)領(lǐng)域是文本數(shù)據(jù),那么候選中間領(lǐng)域可能是文本的川梅、圖像的以及兩者混雜的領(lǐng)域疯兼。一種可能做法就是在Flickr爬取部分標(biāo)記圖片作為中間領(lǐng)域,幫助源領(lǐng)域到目標(biāo)領(lǐng)域的遷移贫途。
?4. 知識(shí)遷移:與源領(lǐng)域和目標(biāo)領(lǐng)域相比吧彪,所選擇的中間領(lǐng)域仍然存在分布偏移(distribution shift),因此潮饱,[KDD 2015]提出了一種可操作的非負(fù)矩陣分解方法来氧,可以實(shí)現(xiàn)特征聚類(feature clustering)和標(biāo)簽傳遞(label propagation)。通過這種方法可以消除中間領(lǐng)域的分布偏移香拉,并建立從源領(lǐng)域特征到目標(biāo)領(lǐng)域輸出之間的傳遞關(guān)系啦扬。
3.3.2 基于共享特征的遷移
[KDD 2015]中的共享可以認(rèn)為是從中間領(lǐng)域的共享數(shù)據(jù)出發(fā),挖掘源領(lǐng)域到目標(biāo)領(lǐng)域的遷移關(guān)系凫碌,最終獲得合適的參數(shù)質(zhì)量扑毡。對比之下,[ECCV 2017]中的共享可以認(rèn)為是直接從中間領(lǐng)域的共享參數(shù)出發(fā)盛险,挖掘遷移關(guān)系瞄摊,基于重構(gòu)數(shù)據(jù)提升共享參數(shù)質(zhì)量,如下圖所示苦掘。
架構(gòu)中包括了兩條支路:其中一條是基于監(jiān)督學(xué)習(xí)的標(biāo)簽預(yù)測换帜,另一條是基于非監(jiān)督學(xué)習(xí)的數(shù)據(jù)重構(gòu),而兩條支路共享參數(shù)鹤啡。雖然這個(gè)雙支路架構(gòu)與雙支路對抗架構(gòu)很像惯驼,但是有根本的差別,前者基于共享的思想,后者基于對抗的思想祟牲。
3.4 小結(jié)
報(bào)告內(nèi)容很豐富隙畜,這里簡要回顧所介紹了三種度量損失(Loss)思想和對應(yīng)的遷移學(xué)習(xí)范式:基于差異的范式,基于對抗的范式和基于共享的范式说贝。如果要用更為簡單的語言议惰,去理解上述三種范式中多個(gè)領(lǐng)域關(guān)系的解讀,或許分別可以稱為“異中求同”乡恕、“同中求異”和.....“找些中介”言询。
4.遷移學(xué)習(xí)應(yīng)用案例
第四部分介紹了楊強(qiáng)博士的學(xué)生所做的數(shù)個(gè)應(yīng)用案例:
?1. 大額消費(fèi)金融和跨領(lǐng)域輿情分析
?2. 互聯(lián)網(wǎng)汽車分類
CCAI公眾文已經(jīng)進(jìn)行了詳細(xì)闡述,另外詳見Slides 的36-45頁几颜,請移步予以參考并查閱楊強(qiáng)博士的具體論文倍试。
主要參考文獻(xiàn)
[ICML 2015] Learning transferable features with deep adaptation networks
[KDD 2015] Transitive Transfer Learning
[JMLR 2016] Domain-adversarial training of neural networks
[ECCV 2016] Deep reconstruction-classification networks for unsupervised domain adaptation
[ICCV 2017] Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks