0
本文作者: AI研習(xí)社-譯站 | 2018-05-29 10:08 |
雷鋒網(wǎng)按:本文為雷鋒字幕組編譯的技術(shù)博客,原標(biāo)題 Transfer Learning vs Multitask Learning,作者為 Ibrahim Sobh。
翻譯 | 李晶 編輯 | 吳璇
訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)是一個(gè)乏味的過(guò)程。更實(shí)際的方法,如重新使用訓(xùn)練好的網(wǎng)絡(luò)解決其他任務(wù),或針對(duì)許多任務(wù)使用相同的網(wǎng)絡(luò)。這篇文章中,我們會(huì)討論兩個(gè)重要的方法:遷移學(xué)習(xí)和多任務(wù)學(xué)習(xí)。
遷移學(xué)習(xí)
在遷移學(xué)習(xí)中,我們希望利用源任務(wù)學(xué)到的知識(shí)幫助學(xué)習(xí)目標(biāo)任務(wù)。例如,一個(gè)訓(xùn)練好的圖像分類網(wǎng)絡(luò)能夠被用于另一個(gè)圖像相關(guān)的任務(wù)。再比如,一個(gè)網(wǎng)絡(luò)在仿真環(huán)境學(xué)習(xí)的知識(shí)可以被遷移到真實(shí)環(huán)境的網(wǎng)絡(luò)。
總的來(lái)說(shuō),神經(jīng)網(wǎng)絡(luò)遷移學(xué)習(xí)有兩種方案:特征提取和微調(diào)。遷移學(xué)習(xí)一個(gè)典型的例子就是載入訓(xùn)練好VGG網(wǎng)絡(luò),這個(gè)大規(guī)模分類網(wǎng)絡(luò)能將圖像分到1000個(gè)類別,然后把這個(gè)網(wǎng)絡(luò)用于另一個(gè)任務(wù),如醫(yī)學(xué)圖像分類。
1特征提?。?/strong>
特征提取是針對(duì)目標(biāo)任務(wù)把一個(gè)簡(jiǎn)單的分類器加在源任務(wù)上預(yù)訓(xùn)練的網(wǎng)絡(luò)上,將預(yù)訓(xùn)練的網(wǎng)絡(luò)作為特征提取器。僅有添加的分類器的參數(shù)需要更新,預(yù)訓(xùn)練的網(wǎng)絡(luò)的參數(shù)不變。這能使新任務(wù)從源任務(wù)中學(xué)習(xí)到的特征中受益。但是,這些特征更加適合源任務(wù)。
2微調(diào):
微調(diào)允許學(xué)習(xí)目標(biāo)任務(wù)時(shí)修改預(yù)訓(xùn)練的網(wǎng)絡(luò)參數(shù)。通常,在預(yù)訓(xùn)練的網(wǎng)絡(luò)之上加一個(gè)新的隨機(jī)初始化的層。預(yù)訓(xùn)練網(wǎng)絡(luò)的參數(shù)使用很小的學(xué)習(xí)率更新防止大的改變。通常會(huì)凍結(jié)網(wǎng)絡(luò)底層的參數(shù),這些層學(xué)到更通用的特征,微調(diào)頂部的層,這些層學(xué)到更具體的特征。同時(shí),凍結(jié)一些層能夠減少需要訓(xùn)練的參數(shù)的數(shù)量,避免過(guò)擬合問(wèn)題,尤其時(shí)在目標(biāo)任務(wù)數(shù)據(jù)量不夠大的情況下。實(shí)踐中,微調(diào)勝過(guò)特征提取因?yàn)樗槍?duì)新的任務(wù)優(yōu)化了預(yù)訓(xùn)練的網(wǎng)絡(luò)。
遷移學(xué)習(xí)的基本情形:
遷移學(xué)習(xí)可以分為4種情形基于以下兩個(gè)因素:1)目標(biāo)任務(wù)數(shù)據(jù)集的大小,2)源任務(wù)與目標(biāo)任務(wù)的相似度:
情形1:目標(biāo)數(shù)據(jù)集很小,目標(biāo)任務(wù)與源任務(wù)相似:這種情況使用特征提取,因?yàn)槟繕?biāo)數(shù)據(jù)集小容易造成過(guò)擬合。
情形2:目標(biāo)數(shù)據(jù)集很小,目標(biāo)任務(wù)與源任務(wù)不同:這時(shí)我們微調(diào)底層網(wǎng)絡(luò),并移除高層網(wǎng)絡(luò)。換句話說(shuō),我們使用較早的特征提取。
情形3:目標(biāo)數(shù)據(jù)集很大,目標(biāo)任務(wù)與源任務(wù)相似:我們有了大量的數(shù)據(jù),我們可以隨機(jī)初始化參數(shù),從頭開始訓(xùn)練網(wǎng)絡(luò)。然而,最好還是使用預(yù)訓(xùn)練的網(wǎng)絡(luò)初始化參數(shù)并微調(diào)幾層。
情形4:目標(biāo)數(shù)據(jù)集很大,目標(biāo)任務(wù)與源任務(wù)不同。這時(shí),我們微調(diào)大部分層甚至整個(gè)網(wǎng)絡(luò)。
多任務(wù)學(xué)習(xí)
多任務(wù)學(xué)習(xí)的主要目標(biāo)是通過(guò)使用多個(gè)任務(wù)的樣本優(yōu)化網(wǎng)絡(luò)的參數(shù)改進(jìn)任務(wù)的性能。例如,我們希望有一個(gè)網(wǎng)絡(luò)可以根據(jù)輸入的臉部圖像區(qū)分是男性還是女性,同時(shí)可以預(yù)測(cè)這個(gè)人的年齡。這時(shí),我們有兩個(gè)相關(guān)的任務(wù),一個(gè)是二分類,一個(gè)是回歸任務(wù)。顯然兩個(gè)任務(wù)是相關(guān)的,對(duì)一個(gè)任務(wù)的學(xué)習(xí)可以改進(jìn)另外一個(gè)任務(wù)。
一個(gè)簡(jiǎn)單的網(wǎng)絡(luò)設(shè)計(jì)實(shí)例,可以在任務(wù)和任務(wù)之間共享一部分網(wǎng)絡(luò)。共享部分學(xué)習(xí)任務(wù)通用的中間表達(dá),有助于這些共同的學(xué)習(xí)任務(wù)。另一方面,針對(duì)特定的學(xué)習(xí)任務(wù),特定的頭部會(huì)學(xué)習(xí)如何使用這些共享表達(dá)。
博客原址:https://www.linkedin.com/pulse/transfer-learning-vs-multitask-ibrahim-sobh/
雷鋒網(wǎng)雷鋒網(wǎng)
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。