人工智能之遷移學習
前言: 深度學習主要強調(diào)的是特征,強化學習主要強調(diào)的是反饋,而遷移學習主要強調(diào)的是適應。
之前介紹過人工智能之機器學習算法有前5大類內(nèi)容,具體請參見相關(guān)文章。今天我們重點探討一下第6類--遷移學習(Transfer Learning)。 ^_^
傳統(tǒng)的機器學習是種瓜得瓜,種豆得豆,而遷移學習可以舉一反三,投桃報李。
人工智能競爭,從算法模型的研發(fā)競爭,轉(zhuǎn)向數(shù)據(jù)和數(shù)據(jù)質(zhì)量的競爭,這些成功的模型和算法主要是由監(jiān)督學習推動的,而監(jiān)督學習對數(shù)據(jù)極度饑渴,需要海量數(shù)據(jù)(大數(shù)據(jù))支撐來達到應用的精準要求。而人工智能發(fā)展更趨向于不要求海量數(shù)據(jù)也能達到應用的精準要求,因此“小數(shù)據(jù)學習”正在成為新的熱點,以遷移學習,強化學習為代表的小數(shù)據(jù)學習技術(shù),更能體現(xiàn)人工智能的未來之路。有專家稱,在監(jiān)督學習之后,遷移學習將引領(lǐng)下一波機器學習技術(shù)商業(yè)化浪潮。
遷移學習(TL)的概念自從1995年在NIPS5專題討論會上被提出來后,受到學術(shù)界的廣泛關(guān)注。遷移學習定義過于寬泛,相關(guān)研究中曾出現(xiàn)多種專用術(shù)語,比如learning to learn, life-long learn,multi-task learning, meta-learning, inductive transfer, knowledge transfer, context sensitive learning等。其中,遷移學習與多任務學習(multi-task learning)關(guān)系最為緊密。多任務學習同時學習多個不同的任務,從中發(fā)現(xiàn)隱含的共同特征,以幫助單個任務的學習。
什么是遷移學習?
遷移學習TL(Transfer Learning)是把已學訓練好的模型參數(shù)遷移到新的模型來幫助新模型訓練?紤]到大部分數(shù)據(jù)或任務是存在相關(guān)性的,所以通過遷移學習,可以將已經(jīng)學到的模型參數(shù)通過某種方式來分享給新模型從而加快并優(yōu)化模型的學習效率。
遷移學習的基本動機:
遷移學習的基本動機是試圖從一個問題中獲取的知識應用到另外一個不同但是相關(guān)的問題中去。比如,一個熟練應用C++語言編程的程序員能很快地學習和掌握JAVA語言。在某種程度上,機器學習中的遷移學習跟心理學上的“學習能力遷移”有一定的關(guān)聯(lián)。在人類進化中,遷移學習這種能力是非常重要。比如說,人類在學會騎自行車后,再騎摩托車就很容易了,人類在學會打羽毛球后再學習打網(wǎng)球也會容易很多。人類能把過去的知識和經(jīng)驗應用到不同的新場景中,這樣就有了一種適應的能力。
遷移學習主要類別方法:
1)實例加權(quán)方法:通過某種方式對來自源領(lǐng)域的訓練樣本進行權(quán)重計算,以決定每個樣本在訓練過程中的重要性大小。
2)共同特征學習方法:通過若干個共同特征在源領(lǐng)域和目標領(lǐng)域之間傳遞有用的知識。
遷移學習的重要性:
1)從數(shù)據(jù)角度:數(shù)據(jù)為王,計算是核心,但沒有足夠數(shù)據(jù)或收集數(shù)據(jù)很耗時,對數(shù)據(jù)打標簽很難,用數(shù)據(jù)訓練模型很繁瑣。如何進行機器學習?遷移學習適用于小數(shù)據(jù)量場景;
2)從模型角度:云-端融合的模型被普遍使用,通過需要對設備、環(huán)境、用戶做具體適配。個性化模型適配很復雜,需要有不同的用戶隱私處理方式。遷移學習適合個性化方面。
3)從應用角度:機器學習應用中的冷啟動問題,推薦系統(tǒng)沒有初始用戶數(shù)據(jù),無法精準推薦。遷移學習可以解決冷啟動問題。
遷移學習可減少對標定數(shù)據(jù)的依賴,通過和已有數(shù)據(jù)模型之間的遷移,更好地完成機器學習任務。
遷移學習實現(xiàn)方法:
1)樣本遷移(Instance-based Transfer Learning):在數(shù)據(jù)集(源領(lǐng)域)中找到與目標領(lǐng)域相似的數(shù)據(jù),把這個數(shù)據(jù)放大多倍,與目標領(lǐng)域的數(shù)據(jù)進行匹配。其特點是:需要對不同例子加權(quán);需要用數(shù)據(jù)進行訓練。一般就是對樣本進行加權(quán),給比較重要的樣本較大的權(quán)重。
2)特征遷移(Feature-based Transfer Learning):通過觀察源領(lǐng)域圖像與目標域圖像之間的共同特征,然后利用觀察所得的共同特征在不同層級的特征間進行自動遷移。在特征空間進行遷移,一般需要把源領(lǐng)域和目標領(lǐng)域的特征投影到同一個特征空間里進行。
3)模型遷移(Model-based Transfer Learning):利用上千萬的圖象訓練一個圖象識別的系統(tǒng),當遇到一個新的圖象領(lǐng)域,就不用再去找?guī)浊f個圖象來訓練了,可以原來的圖像識別系統(tǒng)遷移到新的領(lǐng)域,所以在新的領(lǐng)域只用幾萬張圖片同樣能夠獲取相同的效果。模型遷移的一個好處是可以區(qū)分,就是可以和深度學習結(jié)合起來,可以區(qū)分不同層次可遷移的度,相似度比較高的那些層次被遷移的可能性就大一些。
4)關(guān)系遷移(Relational Transfer Learning):利用源域?qū)W習邏輯關(guān)系網(wǎng)絡,再應用于目標域上。如社會網(wǎng)絡,社交網(wǎng)絡之間的遷移。
遷移學習工具:
NanoNets(納米網(wǎng)絡)是一個簡單方便的基于云端實現(xiàn)的遷移學習工具,內(nèi)部包含了一組已經(jīng)實現(xiàn)好的預訓練模型,每個模型有數(shù)百萬個訓練好的參數(shù)。用戶可以自己上傳或通過網(wǎng)絡搜索得到數(shù)據(jù),NanoNets將自動根據(jù)待解問題選擇最佳的預訓練模型,并根據(jù)該模型建立一個NanoNets,并將之適配到用戶的數(shù)據(jù)。NanoNets和預訓練模型之間的關(guān)系結(jié)構(gòu)如下圖所示。
遷移學習發(fā)展:
1)結(jié)構(gòu)與內(nèi)容分離:當面臨一個機器學習問題,想要發(fā)現(xiàn)不同問題之間的共性,那么可以把問題的結(jié)構(gòu)和內(nèi)容剝離開。雖然這樣的分離并不容易,但是一旦完成,那么系統(tǒng)舉一反三的能力就非常強。
2)多層次特征學習:把問題分到不同層次,有些層次就更容易幫助進行機器學習的遷移。用了這種層次型的遷移學習,不同的層次具有不同的遷移能力,對于不同層次的遷移能力就有了一個定量的估計。當需要處理新任務時,就可以把某些區(qū)域或某些層次給固定住,把其他的區(qū)域用小數(shù)據(jù)來做訓練,這樣就能夠達到遷移學習的效果。
3)多步、傳遞式學習:從舊領(lǐng)域遷移到新領(lǐng)域,從一個多數(shù)據(jù)的領(lǐng)域遷移到少數(shù)據(jù)的領(lǐng)域,這種稱之為單步遷移。很多場景是需要分階段進行多步傳導式的遷移,可以構(gòu)建一個深度網(wǎng)絡,而這個網(wǎng)絡中間層既能照顧目標這個問題領(lǐng)域,又能照顧原來的領(lǐng)域。如果有一些中間領(lǐng)域,那么其可以把原領(lǐng)域和目標領(lǐng)域一步步的銜接起來?梢远x兩個目標函數(shù),兩個目標函數(shù)一同工作時,一個優(yōu)化了最后的目標,另一個則選擇了樣本。如此迭代,原領(lǐng)域的數(shù)據(jù)就從多步遷移到目標領(lǐng)域。
4)學習如何遷移:在給定任何一個遷移學習問題,系統(tǒng)可以自動在過去所有嘗試過的算法里面,利用經(jīng)驗找到最合適的算法,可以是基于特征的、基于多層網(wǎng)絡的、基于樣本的或者是基于某種混合;蛘甙呀(jīng)驗總結(jié)起來訓練一個新的算法,這個算法的老師就是所有這些機器學習算法、文章、經(jīng)歷和數(shù)據(jù)。所以,學習如何遷移,就好像常說的學習如何學習,這個才是學習的最高境界,也就是學習方法的獲取。
5)遷移學習作為元學習:把遷移學習本身作為一個元學習(Meta Learning)的方法,賦予到不同學習的方式上。假設以前有一個機器學習的問題或者是模型,現(xiàn)在只要在上面套一個遷移學習的罩子,它就可以變成一個遷移學習的模型了。
6)數(shù)據(jù)生成式遷移學習:對于生成式對抗網(wǎng)絡來說,圖靈測試外面的裁判是學生,里面的那個機器也是學生,兩個人的目的是在對抗中共同成長,兩方不斷互相刺激,形成一種對抗(共同學習特點)。通過小數(shù)據(jù)可以生成很多模擬數(shù)據(jù),通過模擬數(shù)據(jù)又來判定它是真的還是假的,用以刺激生成式模型的成長?梢酝ㄟ^小數(shù)據(jù)產(chǎn)生更多的數(shù)據(jù),在新的領(lǐng)域就可以實現(xiàn)遷移學習的目的。
最近,遷移學習技術(shù)在機器學習和數(shù)據(jù)挖掘領(lǐng)域得到了深入的研究。
結(jié)語:
伴隨著最近幾年的機器學習熱潮,遷移學習也成為目前最炙手可熱的研究方向。機器學習的未來發(fā)展在小數(shù)據(jù)、個性化、可靠性上面,那就是遷移學習。遷移學習體現(xiàn)了人類特有的類比能力,是“舉一反三”式的發(fā)散思維。遷移學習已經(jīng)廣泛被使用在各種人工智能機器學習應用場景中。
請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個字
最新活動更多
-
即日-11.13立即報名>>> 【在線會議】多物理場仿真助跑新能源汽車
-
11月28日立即報名>>> 2024工程師系列—工業(yè)電子技術(shù)在線會議
-
12月19日立即報名>> 【線下會議】OFweek 2024(第九屆)物聯(lián)網(wǎng)產(chǎn)業(yè)大會
-
即日-12.26火熱報名中>> OFweek2024中國智造CIO在線峰會
-
即日-2025.8.1立即下載>> 《2024智能制造產(chǎn)業(yè)高端化、智能化、綠色化發(fā)展藍皮書》
-
精彩回顧立即查看>> 【限時免費下載】TE暖通空調(diào)系統(tǒng)高效可靠的組件解決方案
推薦專題
-
5 夾縫中的文遠知行
- 高級軟件工程師 廣東省/深圳市
- 自動化高級工程師 廣東省/深圳市
- 光器件研發(fā)工程師 福建省/福州市
- 銷售總監(jiān)(光器件) 北京市/海淀區(qū)
- 激光器高級銷售經(jīng)理 上海市/虹口區(qū)
- 光器件物理工程師 北京市/海淀區(qū)
- 激光研發(fā)工程師 北京市/昌平區(qū)
- 技術(shù)專家 廣東省/江門市
- 封裝工程師 北京市/海淀區(qū)
- 結(jié)構(gòu)工程師 廣東省/深圳市