張藝超,侯艷杰,陳君華,唐 軼
(1.中國(guó)科學(xué)院 西安光學(xué)精密機(jī)械研究所光譜成像技術(shù)重點(diǎn)實(shí)驗(yàn)室,陜西 西安 710119;2.中國(guó)科學(xué)院大學(xué),北京 100049;3.太原衛(wèi)星發(fā)射中心,山西 太原 030027;4.云南民族大學(xué) 云南省高校物聯(lián)網(wǎng)應(yīng)用技術(shù)重點(diǎn)實(shí)驗(yàn)室,云南 昆明 650500)
近年來(lái),由于計(jì)算設(shè)備不斷更新,ImageNet等[1]大規(guī)模數(shù)據(jù)集的不斷涌現(xiàn),以及卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)[2]等先進(jìn)的模型和算法層出不窮,人工智能在很多領(lǐng)域的做到了和人類能力相近的程度,甚至在一些任務(wù)上已多次擊敗人類.雖然人工智能發(fā)展飛速,但其在執(zhí)行任務(wù)之前仍然需要一些重要的先決條件,其中之一就是對(duì)數(shù)據(jù)量的要求.現(xiàn)有人工智能大多需要在大量的數(shù)據(jù)中學(xué)習(xí)先驗(yàn)知識(shí),如果數(shù)據(jù)匱乏,將會(huì)大大影響其性能.人類具有可以迅速將他們學(xué)到的東西遷移到新任務(wù)的能力[3].例如,已經(jīng)在之前學(xué)習(xí)過(guò)貓?zhí)卣鞯娜祟悾梢岳蒙倭康拿枋鲚p松將知識(shí)遷移到對(duì)老虎的識(shí)別上.人類可以將他們過(guò)去學(xué)到的東西與新的樣本結(jié)合起來(lái)迅速推廣到新的任務(wù).而現(xiàn)有人工智能卻很難做到這一點(diǎn),其仍依賴于大規(guī)模數(shù)據(jù).
因此如何能適應(yīng)樣本數(shù)量少的情況,成為減小人工智能與人類差距的重要研究方向.為了從有限的監(jiān)督信息中學(xué)習(xí)以獲得在新任務(wù)上的泛化能力,出現(xiàn)了一種稱為少樣本學(xué)習(xí)(few-shot learning,F(xiàn)SL)的新機(jī)器學(xué)習(xí)問(wèn)題[4-10].當(dāng)只有1個(gè)有監(jiān)督信息的樣本時(shí),這時(shí)的少樣本學(xué)習(xí)也被稱為單樣本學(xué)習(xí)(one-shot learning,OSL)問(wèn)題[11-12].
能否進(jìn)行少樣本學(xué)習(xí)可以作為其是否為真正意義人工智能的檢驗(yàn)標(biāo)準(zhǔn).它首先適用于那些人類已經(jīng)容易理解的任務(wù),以便像人類一樣充分學(xué)習(xí).字符識(shí)別一個(gè)最簡(jiǎn)單的例子[13],其中要求計(jì)算機(jī)程序分類,解析并生成新的手寫字符.為了處理這個(gè)任務(wù),可以將字符分解成可在字符之間遷移的較小部分,然后將這些較小的部分聚合成新的字符.這是一種像人類一樣學(xué)習(xí)的方式.當(dāng)然,少樣本學(xué)習(xí)推進(jìn)了機(jī)器人技術(shù)的發(fā)展,其目標(biāo)是開(kāi)發(fā)可以復(fù)制人類行為的機(jī)器,以便在某些情況下取代人類,例如視覺(jué)導(dǎo)航等[14].
另外,對(duì)數(shù)據(jù)的標(biāo)注常常需要花費(fèi)大量的人力及時(shí)間成本,少樣本學(xué)習(xí)還可以幫助減輕工業(yè)用途中收集大規(guī)模具有監(jiān)督信息數(shù)據(jù)的負(fù)擔(dān).人類可以輕松識(shí)別數(shù)萬(wàn)類別的數(shù)據(jù),其中為機(jī)器收集每個(gè)類別的足夠圖像是非常費(fèi)力,甚至無(wú)法辦到的.少樣本學(xué)習(xí)可以幫助減少這些數(shù)據(jù)密集型應(yīng)用程序的數(shù)據(jù)收集工作,例如圖像分類[15]、目標(biāo)跟蹤[16]、圖像檢索[17]、手勢(shì)識(shí)別[18]、圖像字幕及視覺(jué)問(wèn)題回答[19]以及語(yǔ)言建模[20]等任務(wù).當(dāng)模型和算法成功實(shí)現(xiàn)少樣本學(xué)習(xí)時(shí),自然也可以應(yīng)用于具有大量樣本的數(shù)據(jù)集,高效的學(xué)習(xí)效率使得其能夠更好地利用數(shù)據(jù),更高效、準(zhǔn)確地完成學(xué)習(xí)任務(wù).
一般來(lái)說(shuō),基于少樣本學(xué)習(xí)的分類任務(wù)中,具有3個(gè)數(shù)據(jù)集:訓(xùn)練集,支持集和測(cè)試集. 支持集和測(cè)試集共享相同的標(biāo)簽空間,但是訓(xùn)練集具有自己的標(biāo)簽空間,該標(biāo)簽空間與支持/測(cè)試集不相交.如果支持集包含每個(gè)C個(gè)獨(dú)立的類別,每個(gè)類別K個(gè)標(biāo)記樣本,則目標(biāo)域的少樣本學(xué)習(xí)問(wèn)題則被稱為C類別K樣本(C-way K-shot)問(wèn)題.
在僅有支持集的情況下,其實(shí)也可以訓(xùn)練分類器,為測(cè)試集中的每個(gè)樣本分配1個(gè)類別標(biāo)簽.但是,由于支持集中缺少有標(biāo)簽樣本,這種分類器的性能通常不令人滿意.主要原因是深度模型結(jié)構(gòu)中存在大量參數(shù),而在樣本數(shù)量很小的情況下,極易出現(xiàn)過(guò)擬合問(wèn)題.因此,大多數(shù)旨在對(duì)訓(xùn)練集進(jìn)行訓(xùn)練以提取可遷移的先驗(yàn)知識(shí),從而能夠?qū)χС旨M(jìn)行更好的少樣本學(xué)習(xí),更成功地對(duì)測(cè)試集進(jìn)行分類.
少樣本學(xué)習(xí)相關(guān)學(xué)習(xí)問(wèn)題包括:半監(jiān)督學(xué)習(xí)、樣本不平衡學(xué)習(xí)、遷移學(xué)習(xí)以及元學(xué)習(xí).這些學(xué)習(xí)問(wèn)題都與少樣本學(xué)習(xí)密切相關(guān),甚至具有交叉、包含關(guān)系,在核心原理以及任務(wù)的數(shù)據(jù)特征上具有共通之處.
1.2.1 半監(jiān)督學(xué)習(xí)
半監(jiān)督學(xué)習(xí)[21-22]通過(guò)經(jīng)驗(yàn)E學(xué)習(xí)輸入x到輸出y的最優(yōu)映射,在經(jīng)驗(yàn)E的學(xué)習(xí)過(guò)程中,數(shù)據(jù)包括有標(biāo)簽的和無(wú)標(biāo)簽的樣本.通常無(wú)標(biāo)簽的樣本數(shù)量很大,而標(biāo)記樣本相較于有監(jiān)督信息的樣本來(lái)說(shuō),規(guī)模很小,這樣就面臨數(shù)據(jù)不平衡問(wèn)題.一般來(lái)說(shuō),很多方法首先對(duì)輸入x的空間上的無(wú)監(jiān)督數(shù)據(jù)進(jìn)行聚類,然后將聚類分離,構(gòu)造決策邊界.用這種方法學(xué)習(xí)可以比單獨(dú)使用少樣本的有標(biāo)簽數(shù)據(jù)有更好的準(zhǔn)確性.另一種流行的半監(jiān)督學(xué)習(xí)的特殊情況是主動(dòng)學(xué)習(xí),它選擇有信息的無(wú)標(biāo)簽數(shù)據(jù)來(lái)尋找輸出y.
1.2.2 數(shù)據(jù)不平衡學(xué)習(xí)
不平衡學(xué)習(xí)[23]通過(guò)經(jīng)驗(yàn)E學(xué)習(xí),其輸出y的分布嚴(yán)重偏斜.輸出y的值很難獲取,樣本個(gè)數(shù)太少時(shí),就會(huì)發(fā)生這種情況.它被訓(xùn)練以及測(cè)試用于尋找所有可能的輸出y.相比之下,少樣本學(xué)習(xí)訓(xùn)練時(shí)只需要少量樣本就可以訓(xùn)練y,而可能將其他y作為先驗(yàn)知識(shí)來(lái)幫助學(xué)習(xí),并且利用少樣本便可預(yù)測(cè)輸出y.
1.2.3 遷移學(xué)習(xí)
遷移學(xué)習(xí)[24]將從具有充足監(jiān)督信息的源域和源任務(wù)中學(xué)習(xí)的知識(shí)遷移到監(jiān)督信息有限的目標(biāo)域和目標(biāo)任務(wù),其利用到了源域與目標(biāo)域數(shù)據(jù)或源任務(wù)與目標(biāo)任務(wù)間的相關(guān)性.它已用于跨域推薦、跨時(shí)間段、跨空間問(wèn)題.域自適應(yīng)是1種遷移學(xué)習(xí),任務(wù)相同但領(lǐng)域不同.與少樣本學(xué)習(xí)密切相關(guān)的另一個(gè)遷移學(xué)習(xí)問(wèn)題是零樣本學(xué)習(xí)[25](zero-shot learning,ZSL).少樣本學(xué)習(xí)和零樣本學(xué)習(xí)都是遷移學(xué)習(xí)中的極端情況,因?yàn)樗鼈冃枰w移從其他任務(wù)或領(lǐng)域?qū)W到的先驗(yàn)知識(shí).少樣本學(xué)習(xí)在先驗(yàn)知識(shí)的幫助下設(shè)法從有限的訓(xùn)練樣本中學(xué)習(xí),而零樣本學(xué)習(xí)用來(lái)自其他數(shù)據(jù)源的先驗(yàn)知識(shí)來(lái)構(gòu)造假設(shè)h,或者自行構(gòu)造監(jiān)督信息,可以識(shí)別沒(méi)有提供監(jiān)督的新任務(wù).由于缺少監(jiān)督信息,因此類之間的聯(lián)系是從其他數(shù)據(jù)源中提取的.它適用于很難獲得監(jiān)督樣本或成本昂貴的情況.例如,在圖像分類中,這種關(guān)系可以由人注釋,或者從文本語(yǔ)料庫(kù)中提取或從詞法數(shù)據(jù)庫(kù)中提取.
1.2.4 元學(xué)習(xí)
通過(guò)任務(wù)T的數(shù)據(jù)集和元學(xué)習(xí)器跨任務(wù)提取的元知識(shí)來(lái)提高任務(wù)T上的性能P被稱作元學(xué)習(xí)[26](meta-learing)或“學(xué)習(xí)如何學(xué)習(xí)(learn to learn)”.在這里,學(xué)習(xí)發(fā)生在2個(gè)層次:①元學(xué)習(xí)器學(xué)習(xí)跨任務(wù)的通用信息,可以被稱作為元知識(shí);②一般學(xué)習(xí)器使用元學(xué)習(xí)器與特定于任務(wù)的信息快速概括新任務(wù)T.其主要應(yīng)用于學(xué)習(xí)優(yōu)化算法,強(qiáng)化學(xué)習(xí)和少樣本學(xué)習(xí)問(wèn)題.簡(jiǎn)單來(lái)講,元學(xué)習(xí)器給出映射的大概輪廓,再通過(guò)一般的學(xué)習(xí)器學(xué)習(xí)到具體的映射,可以說(shuō)少樣本學(xué)習(xí)是元學(xué)習(xí)在有監(jiān)督問(wèn)題上的一個(gè)應(yīng)用.
現(xiàn)有工作主要涉及計(jì)算機(jī)視覺(jué)應(yīng)用,如字符識(shí)別和圖像分類.這是因?yàn)橐曈X(jué)信息容易獲取,在多樣本學(xué)習(xí)中得到了廣泛的檢驗(yàn).有許多成熟的技術(shù)可以轉(zhuǎn)化為少樣本學(xué)習(xí).此外,視覺(jué)信息的表現(xiàn)也很容易被人類理解.例如,給一個(gè)人少量生成圖像樣本,讓人類決定它是否像真的.目前,字符識(shí)別和圖像分類的兩個(gè)基準(zhǔn)數(shù)據(jù)集Ominiglot和miniImageNet已經(jīng)獲得了很高的精度,幾乎沒(méi)有什么空間可以改進(jìn).因此,可以探索更多的計(jì)算機(jī)視覺(jué)應(yīng)用,如圖像檢索、目標(biāo)跟蹤、手勢(shì)識(shí)別、圖像字幕和視覺(jué)問(wèn)答.細(xì)粒度分類也是現(xiàn)在少樣本學(xué)習(xí)的一個(gè)重要應(yīng)用,其能夠在一個(gè)大類中對(duì)更細(xì)化的樣本進(jìn)行分類.
除了計(jì)算機(jī)視覺(jué)應(yīng)用外,其他領(lǐng)域也開(kāi)始逐漸使用少樣本學(xué)習(xí)方法的思想.在人工智能的另一大分支自然語(yǔ)言處理中,也出現(xiàn)了少樣本翻譯[27]和少樣本語(yǔ)言建模[28]的應(yīng)用.另外,通過(guò)在新環(huán)境中從有限的經(jīng)驗(yàn)中強(qiáng)化學(xué)習(xí)來(lái)指導(dǎo)機(jī)器人行為和人工智能與人類進(jìn)行游戲?qū)?zhàn)也開(kāi)始引起人們的廣泛注意.
如章節(jié)1.2.3中介紹,遷移學(xué)習(xí)主要解決跨域?qū)W習(xí)任務(wù),在源域中學(xué)習(xí)豐富的先驗(yàn)知識(shí),在目標(biāo)域中進(jìn)行諸如分類、識(shí)別等任務(wù),這與大多數(shù)少樣本學(xué)習(xí)問(wèn)題的目標(biāo)高度吻合.對(duì)于少樣本學(xué)習(xí),由于目標(biāo)域中的樣本數(shù)量很少,因此從源域中學(xué)習(xí)到一個(gè)好的先驗(yàn)就顯得格外重要.主流遷移學(xué)習(xí)方法分為2大類,其中包括基于域自適應(yīng)的少樣本學(xué)習(xí)方法以及基于轉(zhuǎn)導(dǎo)推理的少樣本學(xué)習(xí)方法.
基于域自適應(yīng)的少樣本學(xué)習(xí)方法,分別是基于深度域自適應(yīng)的少樣本學(xué)習(xí)方法以及基于移動(dòng)語(yǔ)義遷移網(wǎng)絡(luò)的少樣本學(xué)習(xí)方法.2種方法都致力于解決源域與目標(biāo)域間產(chǎn)生的域漂移問(wèn)題,為后續(xù)如何更好地利用域自適應(yīng)方法解決少樣本學(xué)習(xí)問(wèn)題提供了一定啟發(fā).
2.1.1 基于深度域自適應(yīng)的少樣本學(xué)習(xí)方法
Ganin和Lempitsky[28]提出了基于深度域自適應(yīng)的少樣本學(xué)習(xí)方法.該方法可以在源域中的大量標(biāo)記數(shù)據(jù)和目標(biāo)域中的大量未標(biāo)記數(shù)據(jù)上進(jìn)行訓(xùn)練.隨著訓(xùn)練的進(jìn)行,該方法促進(jìn)了深層特征的出現(xiàn),這些深層特征是:①區(qū)分源域上的主要學(xué)習(xí)任務(wù);②關(guān)于域之間的轉(zhuǎn)換是不變的.該方法通過(guò)在前饋模型中增加幾個(gè)標(biāo)準(zhǔn)層和一個(gè)簡(jiǎn)單的新的梯度反轉(zhuǎn)層,就可以實(shí)現(xiàn)這種域自適應(yīng)行為,并且使用標(biāo)準(zhǔn)的反向傳播訓(xùn)練生成的增強(qiáng)架構(gòu).該方法對(duì)深度學(xué)習(xí)的框架沒(méi)有特定要求,使用任何深度學(xué)習(xí)框架都可以輕松實(shí)現(xiàn)該方法.
圖1為深度域自適應(yīng)的模型結(jié)構(gòu)示意圖[28],圖中綠色部分為深層特征提取器,藍(lán)色部分其深層標(biāo)簽預(yù)測(cè)器,兩者共同構(gòu)成一個(gè)標(biāo)準(zhǔn)的前饋體系結(jié)構(gòu).通過(guò)添加通過(guò)梯度反轉(zhuǎn)層連接到圖中紅色標(biāo)出的特征提取器中的域分類模塊來(lái)實(shí)現(xiàn)無(wú)監(jiān)督域自適應(yīng),該梯度分類器在基于反向傳播的訓(xùn)練過(guò)程中將梯度乘以某個(gè)負(fù)常數(shù).否則,訓(xùn)練將以標(biāo)準(zhǔn)方式進(jìn)行,并將對(duì)于源域樣本的標(biāo)簽預(yù)測(cè)損失和對(duì)于所有樣本的域分類損失最小化.梯度反轉(zhuǎn)可確保使兩個(gè)域上的特征分布相似,從而產(chǎn)生域不變特征.
圖1 深度域自適應(yīng)方法框架
2.1.2 基于移動(dòng)語(yǔ)義遷移網(wǎng)絡(luò)的少樣本學(xué)習(xí)方法
Xie等[29]提出了一種基于移動(dòng)語(yǔ)義遷移網(wǎng)絡(luò)(moving semantic transfer network,MSTN)的少樣本學(xué)習(xí)方法.先前的域自適應(yīng)方法通過(guò)對(duì)齊源域和目標(biāo)域之間的全局分布統(tǒng)計(jì)信息來(lái)解決此問(wèn)題,但是這樣做的缺點(diǎn)是會(huì)使得樣本中所包含的豐富語(yǔ)義信息被忽視,例如,目標(biāo)域中背包的特征可能會(huì)映射到特征附近源域中的汽車上.在文獻(xiàn)[29]中,作者提出了移動(dòng)語(yǔ)義轉(zhuǎn)移網(wǎng)絡(luò),該網(wǎng)絡(luò)通過(guò)對(duì)齊有標(biāo)簽樣本的源質(zhì)心和偽標(biāo)簽的目標(biāo)域質(zhì)心來(lái)學(xué)習(xí)未標(biāo)記目標(biāo)樣本的語(yǔ)義表示.預(yù)期將同一類別但不同領(lǐng)域中的要素映射到附近,從而提高目標(biāo)分類的準(zhǔn)確性.另外,作者還設(shè)計(jì)了移動(dòng)平均質(zhì)心對(duì)齊方式,以補(bǔ)償每個(gè)小樣本批次中不足的類別信息.具體網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示.
圖2 移動(dòng)語(yǔ)義遷移網(wǎng)絡(luò)結(jié)構(gòu)
圖2為移動(dòng)語(yǔ)義遷移網(wǎng)絡(luò)結(jié)構(gòu)示意圖[29],值得注意的是,該結(jié)構(gòu)除了標(biāo)準(zhǔn)的源分類損失,還使用了域?qū)剐該p失來(lái)對(duì)齊2個(gè)域的分布.與以前的僅在域級(jí)別匹配分布的域自適應(yīng)方法不同,該方法在類級(jí)別匹配分布并在語(yǔ)義上對(duì)齊特征,而無(wú)需任何目標(biāo)域標(biāo)簽,可以做零樣本學(xué)習(xí).使用質(zhì)心對(duì)齊來(lái)指導(dǎo)特征提取器在對(duì)齊域中保留目標(biāo)域中樣本的類信息,設(shè)計(jì)的移動(dòng)平均質(zhì)心解決了小批次處理可能不足以覆蓋每個(gè)訓(xùn)練步驟中所有類分布的問(wèn)題.
轉(zhuǎn)導(dǎo)推理方法在遇到訓(xùn)練樣本的數(shù)量遠(yuǎn)小于測(cè)試樣本的情況,性能比歸納推理要出色很多,轉(zhuǎn)導(dǎo)推理能利用無(wú)標(biāo)簽測(cè)試樣本的信息發(fā)現(xiàn)聚簇,進(jìn)而可以更準(zhǔn)確地進(jìn)行分類.
2.2.1 基于傳播語(yǔ)義遷移的少樣本學(xué)習(xí)方法
Rohrbach等[30]提出了基于傳播語(yǔ)義遷移的少樣本學(xué)習(xí)方法.該方法將遷移學(xué)習(xí)與半監(jiān)督學(xué)習(xí)進(jìn)行了擴(kuò)展,以利用沒(méi)有或只有幾個(gè)有標(biāo)簽的新類別的無(wú)標(biāo)簽樣本.提出的方法“傳播語(yǔ)義轉(zhuǎn)移”主要有3個(gè)貢獻(xiàn):①通過(guò)結(jié)合外部知識(shí),例如通過(guò)語(yǔ)義屬性的中間層,將信息從已知類別轉(zhuǎn)移到新類別;②利用了新類別的流形結(jié)構(gòu).更具體地說(shuō),將迄今為止僅用于半監(jiān)督學(xué)習(xí)的基于圖的學(xué)習(xí)算法調(diào)整為零樣本和樣本學(xué)習(xí)方法;③通過(guò)將基于原始特征的表示替換為中間的基于對(duì)象或?qū)傩缘谋硎?,?lái)改進(jìn)此類圖結(jié)構(gòu)中的局部鄰域.
圖3為語(yǔ)義傳播網(wǎng)絡(luò)核心思想示意圖[30],該結(jié)構(gòu)主要利用語(yǔ)義知識(shí)遷移、少樣本及其樣本間的相似性來(lái)進(jìn)行更準(zhǔn)確地預(yù)測(cè).該方法利用無(wú)標(biāo)簽樣本數(shù)據(jù)分布中的相似性,將語(yǔ)義知識(shí)的傳遞擴(kuò)展到轉(zhuǎn)導(dǎo)推理.該方法不僅可以進(jìn)行零樣本學(xué)習(xí),并通過(guò)使用訓(xùn)練后的屬性和類別模型將數(shù)據(jù)映射到低維語(yǔ)義輸出空間中,改進(jìn)了原始特征空間中的局部鄰域結(jié)構(gòu).
圖3 語(yǔ)義傳播網(wǎng)絡(luò)核心思想示意圖
2.2.2 基于標(biāo)簽傳遞的少樣本學(xué)習(xí)方法
Liu等[31]提出了1種轉(zhuǎn)導(dǎo)推理傳播網(wǎng)絡(luò)(transductive propagation network,TPN).該網(wǎng)絡(luò)是一種新穎的用于轉(zhuǎn)導(dǎo)推理的元學(xué)習(xí)框架,該框架可對(duì)整個(gè)測(cè)試集進(jìn)行單一樣本分類以緩解數(shù)據(jù)量少的問(wèn)題.通過(guò)利用數(shù)據(jù)中流形結(jié)構(gòu)的圖形構(gòu)造模塊將標(biāo)簽從有標(biāo)簽樣本傳播到無(wú)標(biāo)簽測(cè)試樣本.提出的轉(zhuǎn)導(dǎo)推理傳播網(wǎng)絡(luò)是一種端到端網(wǎng)絡(luò),同時(shí)學(xué)習(xí)特征嵌入的參數(shù)和圖形構(gòu)造.
圖4為標(biāo)簽傳播網(wǎng)絡(luò)的結(jié)構(gòu)示意圖[31],該網(wǎng)絡(luò)由4部分組成:①用卷積神經(jīng)網(wǎng)絡(luò)嵌入特征;②生成示例參數(shù)以利用流形結(jié)構(gòu)的圖的構(gòu)造;③標(biāo)簽傳播,將標(biāo)簽從支持集傳播到查詢集;④損失生成步驟,計(jì)算傳播的標(biāo)簽和上的真實(shí)結(jié)果(groundtruth)之間的交叉熵?fù)p失,以共同訓(xùn)練框架中的所有參數(shù).
圖4 標(biāo)簽傳播網(wǎng)絡(luò)的結(jié)構(gòu)
基于元學(xué)習(xí)的少樣本學(xué)習(xí)方法,分為基于梯度的元學(xué)習(xí)方法及基于度量學(xué)習(xí)的元學(xué)習(xí)方法,這2類方法從不同角度實(shí)現(xiàn)了少樣本學(xué)習(xí)的目的.
基于梯度的元學(xué)習(xí)方法最具代表性的是Finn等[32]提出的1種模型無(wú)關(guān)元學(xué)習(xí)(model-agnostic meta-learning,MAML)方法.在此方法的基礎(chǔ)上,出現(xiàn)了一些衍生模型,其中包括Kim等[28]提出的基于貝葉斯模型的MAML方法(Bayesian MAML)以及Xu等[29]提出的基于概率模型的MAML方法(probabilistic MAML).這些方法都致力于利用更好的梯度下降讓模型具有快速適應(yīng)新任務(wù)的泛化能力.
3.1.1 模型無(wú)關(guān)元學(xué)習(xí)方法
Finn等[32]提出了1種模型無(wú)關(guān)元學(xué)習(xí)(model-agnostic meta-learning,MAML)方法[32].該方法使得可以在小量樣本上,用很少的迭代步驟獲得很好的泛化能力.在面對(duì)新任務(wù)時(shí),該模型是容易進(jìn)行微調(diào)(fine-tune)的,在這個(gè)過(guò)程中不需要為元學(xué)習(xí)增加新的參數(shù).該方法無(wú)需關(guān)心模型的形式,不需要對(duì)模型做出任何假設(shè),直接用梯度下降來(lái)訓(xùn)練學(xué)習(xí)器.
核心思想是學(xué)習(xí)模型的初始化參數(shù)使得在一步或幾步迭代后在新任務(wù)上的精度最大化.它學(xué)的不是模型參數(shù)的更新函數(shù)或是規(guī)則,不局限于參數(shù)的規(guī)模和模型架構(gòu).它本質(zhì)上是為了學(xué)習(xí)一個(gè)好的特征使得可以適合很多任務(wù)(包括分類、回歸、增強(qiáng)學(xué)習(xí)),并通過(guò)微調(diào)來(lái)獲得好的效果,圖5是MAML核心思想的示意圖.
圖5中表示任務(wù)1的梯度方向,表示任務(wù)1的參數(shù).文章提出的方法,對(duì)模型類型沒(méi)有任何要求,可以用于學(xué)習(xí)任意標(biāo)準(zhǔn)模型的參數(shù),并讓該模型能快速地適應(yīng)新任務(wù).文章認(rèn)為在學(xué)習(xí)過(guò)程中的中間表達(dá)更加適合進(jìn)行遷移,神經(jīng)網(wǎng)絡(luò)的內(nèi)部特征就是一種比較有代表性的中間表達(dá).一般情況下,在進(jìn)行新任務(wù)時(shí),需要基于梯度下降策略在新的任務(wù)上進(jìn)行微調(diào).該模型希望能從之前任務(wù)上快速地進(jìn)行梯度下降至新的任務(wù),并且不會(huì)出現(xiàn)過(guò)擬合現(xiàn)象的模型.力求找到一些對(duì)任務(wù)變化敏感的參數(shù),使得當(dāng)改變梯度方向時(shí),微小的參數(shù)改動(dòng)也會(huì)產(chǎn)生較大的損失,通過(guò)這樣達(dá)到減少微調(diào)時(shí)迭代次數(shù)的目的.
圖5 MAML示意圖
3.1.2 貝葉斯模型無(wú)關(guān)元學(xué)習(xí)方法
Kim等[33]在MAML的基礎(chǔ)上提出了1種貝葉斯MAML(Bayesian MAML),由于模型本身的不確定性,學(xué)習(xí)從一個(gè)小樣本數(shù)據(jù)集中推斷貝葉斯后驗(yàn)是實(shí)現(xiàn)魯棒元學(xué)習(xí)的重要一步.這篇文章中提出了1種新的貝葉斯MAML方法.該方法將基于梯度的元學(xué)習(xí)與非參數(shù)變分推理結(jié)合在1個(gè)概率框架中.與以往的方法不同,該方法在快速自適應(yīng)過(guò)程中,能夠?qū)W習(xí)簡(jiǎn)單高斯逼近之外的復(fù)雜不確定性結(jié)構(gòu).在元更新過(guò)程中,采用了1種新的貝葉斯機(jī)制來(lái)防止過(guò)擬合.與MAML相同,它仍然是1種基于梯度的方法.它是第1個(gè)適用于包括強(qiáng)化學(xué)習(xí)在內(nèi)的各種任務(wù)的貝葉斯模型無(wú)關(guān)元學(xué)習(xí)方法.實(shí)驗(yàn)結(jié)果表明,該方法在正弦回歸、圖像分類、主動(dòng)學(xué)習(xí)和增強(qiáng)學(xué)習(xí)等方面均具有較好的準(zhǔn)確性和魯棒性.
3.1.3 概率模型無(wú)關(guān)元學(xué)習(xí)方法
Xu等[34]提出了1種基于概率模型的MAML方法(probabilistic MAML),該方法可以從模型分布中為新任務(wù)采樣模型.用于少樣本學(xué)習(xí)的元學(xué)習(xí)方法需要獲得先前任務(wù)和經(jīng)驗(yàn)的先驗(yàn),以便從少量數(shù)據(jù)中學(xué)習(xí)新任務(wù).但是,少樣本學(xué)習(xí)中的一個(gè)關(guān)鍵挑戰(zhàn)是任務(wù)模糊性:即使可以從大量先前的任務(wù)中元學(xué)習(xí)到強(qiáng)大的先驗(yàn)知識(shí),但用于新任務(wù)的小數(shù)據(jù)集也可能太含糊而無(wú)法獲取單個(gè)模型用于準(zhǔn)確的任務(wù).該方法擴(kuò)展了MAML,可通過(guò)梯度下降適應(yīng)新任務(wù),以結(jié)合通過(guò)變分下界訓(xùn)練的參數(shù)分布.在元測(cè)試時(shí),該算法通過(guò)一個(gè)簡(jiǎn)單的過(guò)程進(jìn)行自適應(yīng),該過(guò)程將噪聲注入梯度下降.而在元訓(xùn)練時(shí),對(duì)模型進(jìn)行訓(xùn)練,以使這種隨機(jī)自適應(yīng)過(guò)程從近似模型后驗(yàn)中產(chǎn)生樣本.
本文將MAML重新定義為圖模型推理問(wèn)題,其中變分推理可以提供一種原理性和自然性的模型,用于對(duì)不確定性和歧義性進(jìn)行建模.本文方法能夠在元測(cè)試時(shí)對(duì)少樣本學(xué)習(xí)問(wèn)題采樣多個(gè)潛在解決方案.
本小節(jié)主要介紹4種基于度量學(xué)習(xí)的元學(xué)習(xí)方法用于少樣本學(xué)習(xí)任務(wù),其中包括:基于孿生網(wǎng)絡(luò)[35](siamese neural networks)、匹配網(wǎng)絡(luò)[15](matching networks)、原型網(wǎng)絡(luò)[29](prototypical networks)及關(guān)系網(wǎng)絡(luò)[37](relation network)的少樣本學(xué)習(xí)方法.
3.2.1 基于孿生網(wǎng)絡(luò)的少樣本學(xué)習(xí)方法
Koch等[35]提出了1種基于孿生網(wǎng)絡(luò)(siamese neural networks)的少樣本學(xué)習(xí)方法.本文方法采用獨(dú)特的結(jié)構(gòu)對(duì)輸入之間的相似性進(jìn)行排名.對(duì)網(wǎng)絡(luò)進(jìn)行適當(dāng)調(diào)整后,便可以利用其強(qiáng)大的判別功能,將網(wǎng)絡(luò)訓(xùn)練出的預(yù)測(cè)能力遷移至新數(shù)據(jù)中,包括未知分布中的全新類別.
孿生網(wǎng)絡(luò)是1個(gè)雙路的神經(jīng)網(wǎng)絡(luò).在最上層通過(guò)樣本之間的距離來(lái)判斷樣本是否屬于同一類別.本文使用常用優(yōu)化方法對(duì)從源數(shù)據(jù)采樣的對(duì)進(jìn)行訓(xùn)練,利用深度學(xué)習(xí)框架,提供了1種不依賴于特定域知識(shí)的方法,可以利用源域中的大量樣本及目標(biāo)域中少量樣本達(dá)到很好的分類結(jié)果.
3.2.2 基于匹配網(wǎng)絡(luò)的少樣本學(xué)習(xí)方法
Vinyals等[15]提出了1種基于匹配網(wǎng)絡(luò)的少樣本學(xué)習(xí)方法.之前的分析曾提到,如果將一般的深度模型直接用于少樣本分類問(wèn)題,很容易造成過(guò)擬合,因?yàn)樯疃葘W(xué)習(xí)模型中,常常具有成千上萬(wàn)的參數(shù).因此Vinyals等[15]設(shè)計(jì)了1種非參數(shù)學(xué)習(xí)方法,其主要的貢獻(xiàn)體現(xiàn)在建模以及訓(xùn)練過(guò)程中的創(chuàng)新上,神經(jīng)網(wǎng)絡(luò)中的非參數(shù)結(jié)構(gòu)使網(wǎng)絡(luò)更容易適應(yīng)相同任務(wù)中的新訓(xùn)練集.
圖6為匹配網(wǎng)絡(luò)的結(jié)構(gòu)示意圖,本文除了定義了適合單一樣本學(xué)習(xí)的模型和訓(xùn)練標(biāo)準(zhǔn)方面做出的貢獻(xiàn)外,還通過(guò)定義可用于對(duì)ImageNet和小規(guī)模語(yǔ)言建模的其他方法進(jìn)行基準(zhǔn)測(cè)試的任務(wù)做出了一定貢獻(xiàn).
圖6 匹配網(wǎng)絡(luò)的結(jié)構(gòu)示意圖
3.2.3 基于原型網(wǎng)絡(luò)的少樣本學(xué)習(xí)方法
Snell等[36]提出了一種基于原型網(wǎng)絡(luò)(prototypical networks)的少樣本學(xué)習(xí)方法.提出的原型網(wǎng)絡(luò)適用于少樣本及零樣本學(xué)習(xí).本文詳細(xì)分析了模型中使用的基礎(chǔ)距離函數(shù).該方法將原型網(wǎng)絡(luò)與聚類相關(guān)聯(lián),以證明在以布雷格曼散度計(jì)算距離(例如平方歐幾里得距離)時(shí),將類均值用作原型是合理的.作者在實(shí)踐中發(fā)現(xiàn)距離的選擇至關(guān)重要,在該方法中選用歐幾里得距離效果遠(yuǎn)勝過(guò)更常用的余弦相似度.
圖7為原型網(wǎng)絡(luò)核心思想示意圖.原型網(wǎng)絡(luò)學(xué)習(xí)一個(gè)度量空間,在這個(gè)空間中,可以通過(guò)計(jì)算到每個(gè)類的原型所表示的距離來(lái)執(zhí)行分類.
圖7 原型網(wǎng)絡(luò)核心思想[36]
3.2.4 基于關(guān)系網(wǎng)絡(luò)的少樣本學(xué)習(xí)方法
Sung等[37]提出了1種2分支關(guān)系網(wǎng)絡(luò)(relation net,RN),該網(wǎng)絡(luò)通過(guò)學(xué)習(xí)將查詢圖像與少量有標(biāo)簽樣本圖像進(jìn)行比較,從而執(zhí)行少樣本識(shí)別.首先,嵌入模塊生成查詢和訓(xùn)練圖像的表達(dá).然后,由關(guān)系模塊比較這些嵌入,以確定它們是否來(lái)自匹配的類別.嵌入和關(guān)系模塊均是端到端元學(xué)習(xí)的,以支持少樣本學(xué)習(xí).其結(jié)構(gòu)中包括一個(gè)可學(xué)習(xí)的非線性比較器,而不是固定的線性比較器.該方法相較以前的方法更簡(jiǎn)單和更快(沒(méi)有采用微調(diào)策略).提出的策略還可以直接推廣到零樣本學(xué)習(xí).
圖8為關(guān)系網(wǎng)絡(luò)結(jié)構(gòu)圖,主體結(jié)構(gòu)分為嵌入模塊和關(guān)系模塊.提出關(guān)系網(wǎng)絡(luò)學(xué)習(xí)用于比較查詢項(xiàng)和樣本項(xiàng)的嵌入和深度非線性距離度量.通過(guò)訓(xùn)練對(duì)網(wǎng)絡(luò)進(jìn)行端到端訓(xùn)練可以調(diào)整嵌入和距離度量,從而實(shí)現(xiàn)有效的少樣本學(xué)習(xí).
首先對(duì)少樣本學(xué)習(xí)常用數(shù)據(jù)集合評(píng)價(jià)指標(biāo)進(jìn)行介紹,然后展示一些主流少樣本學(xué)習(xí)方法在分類任務(wù)上的實(shí)驗(yàn)結(jié)果并加以分析.
Omniglot數(shù)據(jù)集[38]是由Brenden Lake及其合作者在MIT通過(guò)Amazon的Mechanical Turk收集的,提供標(biāo)準(zhǔn)的基準(zhǔn),以進(jìn)行手寫字符識(shí)別領(lǐng)域中的少樣本學(xué)習(xí).Omniglot涵蓋來(lái)自50個(gè)樣本字母范圍,從成熟的國(guó)際語(yǔ)言到鮮為人知的方言.它還包括一些虛構(gòu)的字符集,例如Aurek-Besh和Klingon.每個(gè)字母中的字母數(shù)量從大約15個(gè)字符到最多40個(gè)字符不等.Lake將數(shù)據(jù)分為40個(gè)字母背景集和10個(gè)字母評(píng)估集.背景集用于通過(guò)學(xué)習(xí)超參數(shù)和特征映射來(lái)建立模型,而評(píng)估集僅用于測(cè)試少樣本分類性能.
圖8 關(guān)系網(wǎng)絡(luò)結(jié)構(gòu)圖
miniImageNet數(shù)據(jù)集[15]是ImageNet的用于少樣本圖像識(shí)別的子集數(shù)據(jù)庫(kù).它由從Imagenet中隨機(jī)選擇的100個(gè)類別組成,每個(gè)類別包含600個(gè)樣本.多數(shù)少樣本學(xué)習(xí)方法在實(shí)驗(yàn)過(guò)程中,均依據(jù)Ravi和Larochelle[34]使用的類劃分,其中包括64個(gè)訓(xùn)練類,16個(gè)驗(yàn)證類和20個(gè)測(cè)試類,所有圖像大小均調(diào)整為84×84像素.
評(píng)價(jià)指標(biāo)則采用傳統(tǒng)的分類精度對(duì)各方法的少樣本學(xué)習(xí)性能進(jìn)行評(píng)估.
通過(guò)對(duì)測(cè)試集中隨機(jī)生成的 1 000 多次分類結(jié)果進(jìn)行平均,計(jì)算了Omniglot數(shù)據(jù)集上少樣本學(xué)習(xí)分類的準(zhǔn)確性.對(duì)于1樣本和5樣本實(shí)驗(yàn),每類分別批處理1幅和5幅查詢圖像,以便在測(cè)試過(guò)程中進(jìn)行評(píng)估.結(jié)果顯示在表1中.Omniglot數(shù)據(jù)集上在比較了孿生網(wǎng)絡(luò)、匹配網(wǎng)絡(luò)、原型網(wǎng)絡(luò)、模型無(wú)關(guān)元學(xué)習(xí)方法及關(guān)系網(wǎng)絡(luò)的分類性能.
表1 Omniglot數(shù)據(jù)集上少樣本分類性能
Omniglot數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)的6種方法均為基于元學(xué)習(xí)的少樣本分類方法.可以從表1中看出,多種少樣本學(xué)習(xí)方法在數(shù)據(jù)量很小的情況下,都表現(xiàn)出了不錯(cuò)的分類性能.在20類5樣本的實(shí)驗(yàn)中,未經(jīng)過(guò)微調(diào)的孿生網(wǎng)絡(luò)模型的分類精度為96.5%,經(jīng)過(guò)微調(diào)的孿生網(wǎng)絡(luò)模型的分類精度為97.0%,具有記憶機(jī)制的孿生網(wǎng)絡(luò)模型的分類精度為98.6%.可以看出針對(duì)于孿生網(wǎng)絡(luò)模型來(lái)說(shuō),微調(diào)操作以及記憶機(jī)制都為性能的提升提供了一些幫助.未經(jīng)過(guò)微調(diào)的匹配網(wǎng)絡(luò)模型的分類精度為98.5%,而經(jīng)過(guò)微調(diào)的匹配網(wǎng)絡(luò)模型的分類精度為98.7%,微調(diào)操作使其分類性能取得了微小的提升.原型網(wǎng)絡(luò)、模型無(wú)關(guān)元學(xué)習(xí)方法及關(guān)系網(wǎng)絡(luò)的分類精度分別為98.9%、(98.9±0.2)%及(99.1±0.1)%.其中,關(guān)系網(wǎng)絡(luò)表現(xiàn)出了最優(yōu)異的性能,并且沒(méi)有使用微調(diào)操作.
另外,miniImagenet數(shù)據(jù)集上少樣本分類性能展示在表2中,遵循大多數(shù)現(xiàn)有的少樣本學(xué)習(xí)工作采用的標(biāo)準(zhǔn)設(shè)置,進(jìn)行了5類別的1樣本和5樣本分類.5類別1樣本實(shí)驗(yàn)中包含15個(gè)查詢圖像,而5類別5樣本實(shí)驗(yàn)則包含10個(gè)查詢圖像.這意味著在一個(gè)訓(xùn)練批次中有15張5×5+15×5=80張圖像用于5類別1樣本實(shí)驗(yàn).將輸入圖像的大小調(diào)整為84×84.所有模型是從頭開(kāi)始進(jìn)行端到端訓(xùn)練的,具有隨機(jī)初始化功能,沒(méi)有其他訓(xùn)練集輔助學(xué)習(xí).在miniImagenet數(shù)據(jù)集上,比較了匹配網(wǎng)絡(luò)、原型網(wǎng)絡(luò)、模型無(wú)關(guān)元學(xué)習(xí)方法、關(guān)系網(wǎng)絡(luò)及基于轉(zhuǎn)導(dǎo)推理的標(biāo)簽傳播模型的少樣本分類性能.
表2 miniImagenet數(shù)據(jù)集上少樣本分類性能
從表2中各方法的分類性能中可以看出,在miniImagenet數(shù)據(jù)集上進(jìn)行少樣本分類難度要比在Omniglot數(shù)據(jù)集上大很多,因?yàn)閙iniImagenet數(shù)據(jù)集上的樣本更加多樣,這說(shuō)明了雖然現(xiàn)有少樣本學(xué)習(xí)方法已經(jīng)展現(xiàn)出一定效果,但是其性能仍有很大上升空間.其中,匹配網(wǎng)絡(luò)、原型網(wǎng)絡(luò)、模型無(wú)關(guān)元學(xué)習(xí)方法及關(guān)系網(wǎng)絡(luò)為基于元學(xué)習(xí)的少樣本學(xué)習(xí)方法,在5類別5樣本的實(shí)驗(yàn)中,分類精度從(55.31±0.73%)到(65.32±0.70%).而基于轉(zhuǎn)導(dǎo)推理的標(biāo)簽傳播模型是基于遷移學(xué)習(xí)的少樣本學(xué)習(xí)方法,分類精度達(dá)到69.43%,基于轉(zhuǎn)導(dǎo)推理的標(biāo)簽傳播模型取得了最優(yōu)效果.
少樣本學(xué)習(xí)(few-shot learning,F(xiàn)SL)是重要的機(jī)器學(xué)習(xí)問(wèn)題,可促進(jìn)真正人工智能的發(fā)展.在本文中,對(duì)各類少樣本學(xué)習(xí)方法進(jìn)行了全面而系統(tǒng)的回顧.首先就諸如半監(jiān)督學(xué)習(xí)、數(shù)據(jù)不平衡學(xué)習(xí)、遷移學(xué)習(xí)和元學(xué)習(xí)之類的相關(guān)學(xué)習(xí)問(wèn)題討論了與少樣本學(xué)習(xí)的相關(guān)性和差異.另外,本文進(jìn)行了廣泛的文獻(xiàn)綜述,并通過(guò)全面比較將其歸類為不同類別.遷移學(xué)習(xí)主要解決跨域?qū)W習(xí)任務(wù),在源域中學(xué)習(xí)豐富的先驗(yàn)知識(shí),在目標(biāo)域中進(jìn)行諸如分類、識(shí)別等任務(wù);元學(xué)習(xí)通過(guò)元學(xué)習(xí)器學(xué)習(xí)跨任務(wù)的通用信息,可以被稱作為元知識(shí),基于梯度的元學(xué)習(xí)方法及基于度量學(xué)習(xí)的元學(xué)習(xí)方法,這2類方法從不同角度實(shí)現(xiàn)了少樣本學(xué)習(xí)的目的.希望能夠?qū)鉀Q少樣本學(xué)習(xí)問(wèn)題提供一些啟發(fā),并有一天實(shí)現(xiàn)真正意義上的人工智能.