在這篇文章中,你將了解到什么是遷移學(xué)習(xí),它的一些應(yīng)用是什么以及為什么它是數(shù)據(jù)科學(xué)家的關(guān)鍵技能。
遷移學(xué)習(xí)不是機(jī)器學(xué)習(xí)模式或技術(shù),它是機(jī)器學(xué)習(xí)中的一種“設(shè)計(jì)方法”。另一種“設(shè)計(jì)方法”就是主動(dòng)學(xué)習(xí)。
遷移學(xué)習(xí):一個(gè)定義
遷移學(xué)習(xí)的一般概念是利用從任務(wù)中學(xué)到的知識(shí),在只有少量標(biāo)記數(shù)據(jù)可用的設(shè)置中,可以使用大量標(biāo)記數(shù)據(jù)。創(chuàng)建帶標(biāo)簽的數(shù)據(jù)是昂貴的,所以最佳方法是利用現(xiàn)有數(shù)據(jù)集。
在傳統(tǒng)的機(jī)器學(xué)習(xí)模型中,主要目標(biāo)是基于從訓(xùn)練數(shù)據(jù)中學(xué)習(xí)到的模式推廣到看不見的數(shù)據(jù)。通過遷移學(xué)習(xí),嘗試從已經(jīng)學(xué)習(xí)完成不同任務(wù)的模式開始,啟動(dòng)這個(gè)泛化過程。本質(zhì)上,不是從一個(gè)(通常是隨機(jī)初始化的)空白表單開始學(xué)習(xí)的過程,而是從已經(jīng)學(xué)會(huì)解決不同任務(wù)的模式開始。
能夠從圖像中區(qū)分線條和形狀(左),會(huì)更容易確定某物是否是“汽車”,而不是必須從原始像素值開始。遷移學(xué)習(xí)可以讓你利用來自其他計(jì)算機(jī)視覺模型的學(xué)習(xí)模式。
在NLP中,表示詞有不同的方法(在左邊有一個(gè)詞的代表,在右邊有一個(gè)表示詞的符號(hào))。通過遷移學(xué)習(xí)機(jī)器學(xué)習(xí)模型可以利用不同單詞之間存在的關(guān)系。
知識(shí)和模式的轉(zhuǎn)移在各種領(lǐng)域都是可能的。今天的文章將通過查看這些不同領(lǐng)域的幾個(gè)例子來說明遷移學(xué)習(xí)。目標(biāo)是激勵(lì)數(shù)據(jù)科學(xué)家在他們的機(jī)器學(xué)習(xí)項(xiàng)目中進(jìn)行遷移學(xué)習(xí),并讓他們意識(shí)到優(yōu)缺點(diǎn)。
為什么對(duì)遷移學(xué)習(xí)的理解是數(shù)據(jù)科學(xué)家的關(guān)鍵技能,這兒有3個(gè)原因:
·遷移學(xué)習(xí)在任何一種學(xué)習(xí)中都是至關(guān)重要的。為了獲得成功,人類不是每一個(gè)任務(wù)或問題都能被教導(dǎo)。每個(gè)人都會(huì)遇到從未遇到過的情況,我們?nèi)匀辉O(shè)法以特殊的方式解決問題。從大量的經(jīng)驗(yàn)中學(xué)習(xí)和將“知識(shí)”輸出到新的環(huán)境中的能力正是遷移學(xué)習(xí)所關(guān)心的。從這個(gè)角度來看,遷移學(xué)習(xí)和泛化在概念層面上是高度相似的,主要區(qū)別在于遷移學(xué)習(xí)經(jīng)常被用于“跨任務(wù)轉(zhuǎn)移知識(shí),而不是在一個(gè)特定的任務(wù)中進(jìn)行概括”。因此,遷移學(xué)習(xí)與所有機(jī)器學(xué)習(xí)模型所必需的泛化概念有著內(nèi)在聯(lián)系。
·遷移學(xué)習(xí)是確保大量小數(shù)據(jù)環(huán)境下深度學(xué)習(xí)技術(shù)突破的關(guān)鍵。在研究中,深度學(xué)習(xí)幾乎是無處不在,但是很多現(xiàn)實(shí)生活場(chǎng)景通常沒有數(shù)百萬個(gè)標(biāo)記數(shù)據(jù)點(diǎn)來訓(xùn)練模型。深度學(xué)習(xí)技術(shù)需要大量的數(shù)據(jù)來調(diào)整神經(jīng)網(wǎng)絡(luò)中的數(shù)百萬個(gè)參數(shù)。特別是在監(jiān)督式學(xué)習(xí)的情況下,這意味著你需要大量(非常昂貴的)標(biāo)簽數(shù)據(jù)。標(biāo)記圖像聽起來很平常,但是在自然語言處理(NLP)中,需要專家知識(shí)才能創(chuàng)建大型標(biāo)記數(shù)據(jù)集。例如Penn treebank是一個(gè)詞性標(biāo)記集,已經(jīng)有7年的歷史了,需要許多受過訓(xùn)練的語言學(xué)家的密切合作。遷移學(xué)習(xí)是減少數(shù)據(jù)集所需大小的一種方法,以使神經(jīng)網(wǎng)絡(luò)成為可行的選擇。其他可行的選擇正朝著更多的概率啟發(fā)模式發(fā)展,這些模型通常更適合處理有限的數(shù)據(jù)集。
·遷移學(xué)習(xí)有顯著的優(yōu)點(diǎn)和缺點(diǎn)。了解這些缺點(diǎn)對(duì)于成功的機(jī)器學(xué)習(xí)應(yīng)用程序至關(guān)重要。知識(shí)轉(zhuǎn)讓只有在“適當(dāng)”的情況下才有可能。在這個(gè)背景下確切地定義合適的手段并不容易,通常需要進(jìn)行大量的實(shí)驗(yàn)。一般的情況下,你可能不會(huì)相信一個(gè)在玩具車?yán)镩_車的孩子能夠駕駛法拉利。在遷移學(xué)習(xí)中也是這樣的原理:雖然很難量化,但遷移學(xué)習(xí)是有上限的。這不是一個(gè)適合所有問題的解決方案。
遷移學(xué)習(xí)的一般概念
遷移學(xué)習(xí)的要求
正如名稱所述,遷移學(xué)習(xí)需要將知識(shí)從一個(gè)領(lǐng)域轉(zhuǎn)移到另一個(gè)領(lǐng)域的能力。遷移學(xué)習(xí)可以在高水平上解釋。一個(gè)例子就是NLP中的架構(gòu)可以被重新在序列預(yù)測(cè)問題中重用,因?yàn)楹芏郚LP問題本質(zhì)上可以歸結(jié)為序列預(yù)測(cè)問題。遷移學(xué)習(xí)也可以在低層次上進(jìn)行解釋,其中你實(shí)際上是正在重復(fù)使用不同模型中的參數(shù)(跳過詞組,連續(xù)詞袋等)。遷移學(xué)習(xí)的要求一方面是具體的問題,另一方面是具體的模型。接下來的兩節(jié)將分別討論遷移學(xué)習(xí)的高層次和低層次的方法,盡管在文獻(xiàn)中通常會(huì)用不同的名字,但是遷移學(xué)習(xí)的總體概念仍然存在。
多任務(wù)學(xué)習(xí)
在多任務(wù)學(xué)習(xí)中,你可以同時(shí)在不同的任務(wù)上訓(xùn)練模型。通常使用深度學(xué)習(xí)模型,因?yàn)樗鼈兛梢造`活地進(jìn)行調(diào)整。
網(wǎng)絡(luò)體系結(jié)構(gòu)是這樣調(diào)整的,即第一層跨越不同的任務(wù)使用,隨后為不同的任務(wù)指定不同的任務(wù)層和輸出??偟乃悸肥?,通過對(duì)不同任務(wù)的網(wǎng)絡(luò)進(jìn)行訓(xùn)練,網(wǎng)絡(luò)將更好地推廣,因?yàn)槟P托枰陬愃?ldquo;知識(shí)”或“處理”的任務(wù)上表現(xiàn)良好。
自然語言處理的一個(gè)例子是一個(gè)模型,它的最終目標(biāo)是執(zhí)行實(shí)體識(shí)別,而不是純粹的訓(xùn)練模型的實(shí)體識(shí)別任務(wù),也可以用它來進(jìn)行詞性分類,得到詞語聯(lián)想的一部分,......因此,模型會(huì)從這些任務(wù)和不同的數(shù)據(jù)集中獲益。
Featuriser
深度學(xué)習(xí)模型的一大優(yōu)點(diǎn)是特征提取是“自動(dòng)的”?;跇?biāo)記的數(shù)據(jù)和反向傳播,網(wǎng)絡(luò)能夠確定任務(wù)的有用特征。例如對(duì)圖像進(jìn)行分類,網(wǎng)絡(luò)“計(jì)算出”輸入的哪一部分是重要的。這意味著功能定義的手動(dòng)工作被抽象出來。深度學(xué)習(xí)網(wǎng)絡(luò)可以在其他問題中重復(fù)使用,因?yàn)樗崛〉奶卣黝愋鸵渤3?duì)其他問題有用。本質(zhì)上,在一個(gè)特征中,你使用網(wǎng)絡(luò)的第一層來確定有用的特征,但是你不使用網(wǎng)絡(luò)的輸出,因?yàn)樗翘囟ㄓ谌蝿?wù)的。
鑒于深度學(xué)習(xí)系統(tǒng)擅長(zhǎng)特征提取,如何重用現(xiàn)有網(wǎng)絡(luò)來執(zhí)行其他任務(wù)的特征提取?可以將數(shù)據(jù)樣本饋送到網(wǎng)絡(luò)中,并將網(wǎng)絡(luò)中的一個(gè)中間層作為輸出。這個(gè)中間層可以被解釋為一個(gè)固定的長(zhǎng)度,原始數(shù)據(jù)的處理表示。通常情況下,在計(jì)算機(jī)視覺的情況下使用特征的概念。圖像然后被饋送到預(yù)先訓(xùn)練的網(wǎng)絡(luò)(例如,VGG或AlexNet)中,并且在新的數(shù)據(jù)表示上使用不同的機(jī)器學(xué)習(xí)方法。提取中間層作為圖像的表示顯著地減少了原始數(shù)據(jù)大小,使得它們更適合于傳統(tǒng)的機(jī)器學(xué)習(xí)技術(shù)(例如,邏輯回歸或支持向量機(jī)與小圖像的表示(例如128維度)相比更好地工作到原來的,例如,128x128 = 16384尺寸)。