盧依宏,蔡堅(jiān)勇,鄭 華,曾遠(yuǎn)強(qiáng)
(福建師范大學(xué) 光電與信息工程學(xué)院,福州 350007)
由于基于深度學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)在目標(biāo)特征的提取上具有無可比擬的優(yōu)勢,因此神經(jīng)網(wǎng)絡(luò)在圖像處理領(lǐng)域中被廣泛應(yīng)用[1-3]。然而實(shí)驗(yàn)過程中發(fā)現(xiàn),當(dāng)訓(xùn)練數(shù)據(jù)非常少時(shí),神經(jīng)網(wǎng)絡(luò)中的每個(gè)單元不得不考慮到每個(gè)樣本中物體的定位和分類特征,整個(gè)神經(jīng)網(wǎng)絡(luò)會(huì)變得過擬合。因此少樣本問題一直以來是深度學(xué)習(xí)研究中的一個(gè)難點(diǎn)[4]。
本文針對(duì)深度學(xué)習(xí)領(lǐng)域中少樣本學(xué)習(xí)的問題,總結(jié)并分析經(jīng)典及最新的方法,最后展望其未來的研究方向。
在訓(xùn)練一個(gè)高效、精確的神經(jīng)網(wǎng)絡(luò)時(shí),通常需要大量帶有標(biāo)簽的數(shù)據(jù),而在許多情況下每個(gè)類別只有一個(gè)或幾個(gè)訓(xùn)練樣本,如視頻監(jiān)控、衛(wèi)星圖像、異常檢測等。同時(shí),在如生物醫(yī)療圖像識(shí)別任務(wù)中,往往會(huì)遇到特殊病例下患病樣本與正常樣本數(shù)極度不平衡的情況,這時(shí)正常樣本數(shù)越多越影響網(wǎng)絡(luò)性能。因此,將這種由于樣本數(shù)不足或樣本質(zhì)量有嚴(yán)重偏差從而導(dǎo)致神經(jīng)網(wǎng)絡(luò)的性能嚴(yán)重下降的情況稱為少樣本問題。
與普通的只訓(xùn)練一類數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò)不同,少樣本學(xué)習(xí)訓(xùn)練集(支持集)有許多不同的類,每類又包含許多不同的樣本,因此少樣本學(xué)習(xí)又稱為N-way、K-shot問題,其中N表示數(shù)據(jù)集共有N個(gè)類,K表示每個(gè)類中有K個(gè)樣本。因?yàn)槭巧贅颖荆訩一般在1~20之間,實(shí)驗(yàn)中K往往取5、10、15。
數(shù)據(jù)增強(qiáng)是一種常用的數(shù)據(jù)處理方法。早期主要通過對(duì)數(shù)據(jù)進(jìn)行空間變換,如旋轉(zhuǎn)、平移、縮放、剪裁、顏色變化等[5],來生成更大數(shù)據(jù)集。隨著深度神經(jīng)網(wǎng)絡(luò)的發(fā)展,也出現(xiàn)了許多利用如對(duì)抗生成網(wǎng)絡(luò)(Generative Adversarial Nets,GAN)等其他網(wǎng)絡(luò)來擴(kuò)展數(shù)據(jù)的方法。
2.1.1 空間變化
Salehinejad等人[6]提出對(duì)醫(yī)學(xué)圖像采用徑向變化方法,將笛卡爾坐標(biāo)映射到極坐標(biāo)來展開圖像,得到一張圖像很多個(gè)不同的徑向變化圖,不僅保留了原始圖像的信息還提高了訓(xùn)練數(shù)據(jù)集的多樣性,從而改善了神經(jīng)網(wǎng)絡(luò)的泛化性能。對(duì)現(xiàn)有數(shù)據(jù)集進(jìn)行簡單的空間變化操作生成更大的數(shù)據(jù)集,是早期在基于深度學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)中最基本的數(shù)據(jù)操作。
2.1.2 基于幻覺模型的數(shù)據(jù)增強(qiáng)
由于樣本數(shù)很少,當(dāng)訓(xùn)練樣本中的物體發(fā)生變形時(shí),神經(jīng)網(wǎng)絡(luò)無法準(zhǔn)確識(shí)別。因此,許多研究人員思考如何讓神經(jīng)網(wǎng)絡(luò)學(xué)會(huì)“幻覺化” 訓(xùn)練樣本中的物體。
在Goodfellow等人[7]提出的對(duì)抗生成網(wǎng)絡(luò)中,生成網(wǎng)絡(luò)和判別網(wǎng)絡(luò)的動(dòng)態(tài)“博弈過程”可以生成非常接近真實(shí)圖像的虛假圖像。Antoniou等人[8]提出了基于生成對(duì)抗網(wǎng)絡(luò)的數(shù)據(jù)增強(qiáng)方法(Data Augmentation Generative Adversarial Networks,DAGAN),利用編碼器將輸入圖像的向量和隨機(jī)向量結(jié)合,生成虛假圖像。這一將GAN網(wǎng)絡(luò)和數(shù)據(jù)增強(qiáng)結(jié)合在一起的方法,在實(shí)際應(yīng)用上取得了很大的進(jìn)展。
對(duì)于與基類完全不同的數(shù)據(jù),Zhang等人[9]提出了一個(gè)新的網(wǎng)絡(luò)結(jié)構(gòu)Salient網(wǎng)絡(luò)(SalNet),通過顯著性數(shù)據(jù)幻覺模型來增強(qiáng)數(shù)據(jù)。這是第一篇將顯著性圖用于少樣本學(xué)習(xí)的數(shù)據(jù)增強(qiáng)方法的論文,顯著性網(wǎng)絡(luò)很好地將圖像的前景背景分割開,也是該文的一個(gè)亮點(diǎn)。
上述“幻覺化”[10]數(shù)據(jù)增強(qiáng)方法為基類數(shù)據(jù)幻化出新的樣本,生成的“幻覺”樣本豐富了訓(xùn)練數(shù)據(jù)的多樣性,從而提高了神經(jīng)網(wǎng)絡(luò)識(shí)別新類別的性能。
2.1.3 基于合成多標(biāo)簽樣本的數(shù)據(jù)增強(qiáng)
將多個(gè)單類別圖像的標(biāo)簽融合來增加樣本標(biāo)簽多樣性是常見的一種數(shù)據(jù)增強(qiáng)方法,但目前的融合標(biāo)簽方法都是針對(duì)一張圖片只有一個(gè)標(biāo)簽的情況,而自然圖像往往包含多個(gè)標(biāo)簽。Alfassy[11]等人提出的一種新的合成樣本標(biāo)簽的方法,成功將圖像的特征與標(biāo)簽分離,生成訓(xùn)練期間未出現(xiàn)過的標(biāo)簽。該文提出的方法將訓(xùn)練集標(biāo)簽范圍擴(kuò)充到已給標(biāo)簽的交集、并集和去集中,大大提高了網(wǎng)絡(luò)分類圖像的泛化能力。
2.1.4 不同數(shù)據(jù)增強(qiáng)方法的比較
本節(jié)詳細(xì)介紹三種最新且效果顯著的數(shù)據(jù)增強(qiáng)方法,給出了相應(yīng)的模型結(jié)構(gòu)和實(shí)驗(yàn)中取得的準(zhǔn)確度。其中徑向變化在實(shí)驗(yàn)中將MNIST數(shù)據(jù)集由原本的每類20張圖像擴(kuò)充成每類2 000張,DAGAN中每類有5個(gè)樣本,LaSO實(shí)驗(yàn)中的數(shù)據(jù)集包括64類已知樣本和16類未知樣本。
三種基于數(shù)據(jù)增強(qiáng)的少樣本學(xué)習(xí)方法對(duì)比如表1所示。
表1 基于數(shù)據(jù)增強(qiáng)的少樣本方法總結(jié)
不同數(shù)據(jù)增強(qiáng)方法各有優(yōu)勢。通過空間變換來增加樣本數(shù)的方法簡單快速易操作,卻未增加樣本種類。利用幻覺模型來增加樣本數(shù)和通過集合運(yùn)算擴(kuò)充數(shù)據(jù)標(biāo)簽的方法在測試樣本和訓(xùn)練樣本種類一致時(shí),可以取得很好的結(jié)果。因此,數(shù)據(jù)增強(qiáng)方法主要面臨樣本數(shù)非常少的情況下效果并不好的問題,以及測試樣本和訓(xùn)練樣本類型完全不一樣的問題。
在少樣本研究中有很多利用非參數(shù)化估計(jì)(如最近鄰算法、K-近鄰算法、K均值聚類算法)的度量學(xué)習(xí),對(duì)樣本間距離分布進(jìn)行建模,使得同類樣本靠近異類樣本遠(yuǎn)離。一般通過構(gòu)造支持集和測試集的距離來分類,重點(diǎn)在距離的構(gòu)造上,如要分類四張不同的動(dòng)物圖像,并分辨出一張新圖像屬于前面四張圖像中的哪一個(gè)動(dòng)物,這時(shí)可以比較新圖像和之前四張圖像的特征向量距離,距離越近代表特征越像,屬于同一類的概率就越大。
2.2.1 基于固定距離的度量學(xué)習(xí)
孿生網(wǎng)絡(luò)[12]是雙路神經(jīng)網(wǎng)絡(luò),網(wǎng)絡(luò)有兩個(gè)輸入,通過學(xué)習(xí)樣本的特征距離來判斷兩個(gè)樣本是否屬于同一個(gè)類,輸出圖像相似度的概率排名。
匹配網(wǎng)絡(luò)[13](Match Network)和原型網(wǎng)絡(luò)[14](Protoype network)的網(wǎng)絡(luò)結(jié)構(gòu)類似。匹配網(wǎng)絡(luò)為支撐集構(gòu)建靈活的編碼器,最終分類器的輸出是支持集樣本和詢問集樣本之間預(yù)測值的加權(quán)求和。原型網(wǎng)絡(luò)提出每個(gè)類都存在一個(gè)原型表達(dá),該類的原型是支持集在嵌入空間中的均值。
上述三個(gè)網(wǎng)絡(luò)在最終的距離度量上都使用了固定的度量方式,如余弦距離、歐式距離等,這種模型結(jié)構(gòu)下所有的學(xué)習(xí)過程都發(fā)生在樣本的嵌入階段。
2.2.2 基于可學(xué)習(xí)距離的度量學(xué)習(xí)
一些研究人員提出,在度量學(xué)習(xí)中,度量方式也是網(wǎng)絡(luò)中非常重要的一環(huán),人為規(guī)定的度量方式在學(xué)習(xí)過程中會(huì)限制網(wǎng)絡(luò)的性能。因此,文獻(xiàn)[15]提出訓(xùn)練一個(gè)相關(guān)網(wǎng)絡(luò)來學(xué)習(xí)度量距離,最終網(wǎng)絡(luò)輸出一個(gè)0~1的值,表示支持集和詢問集的相似程度。同時(shí),網(wǎng)絡(luò)的損失也應(yīng)該針對(duì)不同的任務(wù)而改變,在相關(guān)網(wǎng)絡(luò)中解決的是回歸問題,而非分類問題,所以使用均方誤差(Mean Square Error,MSE)代替交叉熵(Cross Entropy)[16]。
圖1 相關(guān)網(wǎng)絡(luò)結(jié)構(gòu)圖[15]
2.2.3 度量學(xué)習(xí)方法總結(jié)
本節(jié)介紹兩種基于度量學(xué)習(xí)的少樣本方法,下面對(duì)比了每種方法使用的網(wǎng)絡(luò)模型,給出每一個(gè)網(wǎng)絡(luò)所使用的數(shù)據(jù)集,以及在Mini-ImageNet數(shù)據(jù)集上部分網(wǎng)絡(luò)取得的準(zhǔn)確度。其中原型網(wǎng)絡(luò)和匹配網(wǎng)絡(luò)是由4個(gè)卷積塊組成,相關(guān)網(wǎng)絡(luò)由6個(gè)卷積塊加2個(gè)全連接層組成。
兩種基于度量學(xué)習(xí)的少樣本學(xué)習(xí)方法對(duì)比如表2所示。與其他方法相比,第一種使用歐式距離或余弦距離等固定距離的度量方法在單樣本學(xué)習(xí)(one-shot learning)中可以取得非常好的結(jié)果,但這種人為設(shè)計(jì)的度量方式存在一定局限性。因此,研究人員提出使用深度神經(jīng)網(wǎng)絡(luò)來學(xué)習(xí)樣本之間的特征距離的方法,同時(shí)也使用了不同的損失函數(shù)來訓(xùn)練網(wǎng)絡(luò)。從實(shí)驗(yàn)結(jié)果可知,可學(xué)習(xí)的度量方式優(yōu)于固定距離的度量方式。
表2 基于度量學(xué)習(xí)的少樣本方法總結(jié)
元學(xué)習(xí)是一種利用以往經(jīng)驗(yàn)來處理新任務(wù),讓網(wǎng)絡(luò)學(xué)會(huì)如何學(xué)習(xí)的方法。元學(xué)習(xí)的目標(biāo)是讓網(wǎng)絡(luò)在每個(gè)任務(wù)中快速學(xué)習(xí)這個(gè)任務(wù)最優(yōu)解,在不同任務(wù)之間學(xué)習(xí)跨任務(wù)的學(xué)習(xí)能力。文獻(xiàn)[17]對(duì)元學(xué)習(xí)進(jìn)行簡單定義,指出元學(xué)習(xí)是通過選擇參數(shù)來降低網(wǎng)絡(luò)在整個(gè)數(shù)據(jù)集的損失函數(shù)。
2.3.1 基于優(yōu)化方式的元學(xué)習(xí)
基于優(yōu)化方式的元學(xué)習(xí)使網(wǎng)絡(luò)不再從樣本中學(xué)習(xí)而是從任務(wù)中學(xué)習(xí),最大化網(wǎng)絡(luò)的泛化能力[18]。Andrychowicz等人[19]提出一種讓網(wǎng)絡(luò)學(xué)習(xí)如何學(xué)習(xí)的方法,利用長短時(shí)記憶(Long Short-Term Memory)優(yōu)化器實(shí)現(xiàn)元學(xué)習(xí)過程。同樣,在Rav等人[20]提出的方法中也使用了LSTM結(jié)構(gòu)。Rav等人發(fā)現(xiàn),在少量數(shù)據(jù)下,使用的一般梯度算法,如momentum、adagrad、adadelta、Adam[21]等,需要經(jīng)過多次迭代才能完成優(yōu)化,無法應(yīng)用于需要快速學(xué)習(xí)不同任務(wù)的元學(xué)習(xí)中[22-23]。因此需要一個(gè)通用的初始化參數(shù),可以讓模型從一個(gè)很好的初始參數(shù)開始訓(xùn)練,在面對(duì)不同的任務(wù)時(shí)模型能實(shí)現(xiàn)快速學(xué)習(xí)[24]。
Finn等人[25]提出與模型無關(guān)的元學(xué)習(xí)方法(Model-agnostic Meta Learning,MAML),既與模型結(jié)構(gòu)無關(guān)也不增加新的參數(shù),且可以和任何使用梯度下降訓(xùn)練的模型兼容。同時(shí),MAML不僅可以用于圖像分類問題,在回歸和強(qiáng)化學(xué)習(xí)上也取得了很好的結(jié)果,因此MAML在元學(xué)習(xí)領(lǐng)域被廣泛應(yīng)用。
Nichol等人[26]提出把MAML中對(duì)參數(shù)求二次導(dǎo)改為求一階導(dǎo)可簡化計(jì)算,從而提高網(wǎng)絡(luò)速度。同時(shí),作者還對(duì)MAML算法中初始化參數(shù)的更新規(guī)則進(jìn)行修改,提出了Reptile算法。
基于優(yōu)化方式的各種元學(xué)習(xí)方法將深度學(xué)習(xí)的研究從網(wǎng)絡(luò)結(jié)構(gòu)的優(yōu)化變?yōu)閰?shù)優(yōu)化,未來應(yīng)進(jìn)一步探索如何取得更有利的參數(shù)。
2.3.2 基于參數(shù)的跨任務(wù)元學(xué)習(xí)
文獻(xiàn)[27]提出一種與任務(wù)無關(guān)的元學(xué)習(xí)(Tast-agnostic Meta Learning,TAML)算法,通過加入正則化項(xiàng)提高網(wǎng)絡(luò)的通用性。具體而言,作者提出兩種新穎的TAML算法范式,一種使用基于熵的TAML度量,防止模型預(yù)測過程中偏向某一具體任務(wù);另一種使用基于不平等最小化的TAML度量,對(duì)初始模型進(jìn)行元訓(xùn)練,使模型在面對(duì)不同任務(wù)時(shí)的差異更小。
2.3.3 基于模型權(quán)值的元學(xué)習(xí)
Sun等人[28]提出了一種元遷移學(xué)習(xí)方法,針對(duì)目前的元學(xué)習(xí)進(jìn)行改進(jìn),將遷移學(xué)習(xí)和元學(xué)習(xí)結(jié)合,得到更優(yōu)的性能,證明MAML具有很強(qiáng)的適用性,也為下一階段如何將元學(xué)習(xí)算法和遷移學(xué)習(xí)等其他方法結(jié)合提供了可能。
2.3.4 對(duì)比
本節(jié)歸納三種元學(xué)習(xí)方法的不同,并給出在Mini-ImageNet數(shù)據(jù)集上的準(zhǔn)確度,其中數(shù)據(jù)集設(shè)置為1-shot 5-way。
三種基于元學(xué)習(xí)的少樣本學(xué)習(xí)方法對(duì)比結(jié)果如表3所示?;趦?yōu)化方式的元學(xué)習(xí)適用性很強(qiáng),可以和許多神經(jīng)網(wǎng)絡(luò)模型結(jié)合使用,但是這種方法計(jì)算量大,因此要求網(wǎng)絡(luò)結(jié)構(gòu)不能太復(fù)雜,否則會(huì)出現(xiàn)梯度爆炸或梯度消失的情況。從實(shí)驗(yàn)結(jié)果可看出,Reptile算法在圖像分類任務(wù)的準(zhǔn)確度上略差于MAML算法?;趨?shù)的跨任務(wù)元學(xué)習(xí)效果雖好,但考慮到基于熵的方法的輸出取決于模型的輸出函數(shù),因此它更適合特定的分類或回歸任務(wù)。
表3 基于元學(xué)習(xí)的少樣本方法總結(jié)
在未來的研究中,可以思考能否將元學(xué)習(xí)與數(shù)據(jù)增強(qiáng)或度量學(xué)習(xí)等方法相結(jié)合。并且元學(xué)習(xí)還面臨一個(gè)重要問題,即如何在保證計(jì)算量的同時(shí)提高模型復(fù)雜性。
隨著深度學(xué)習(xí)的應(yīng)用越來越廣泛,少樣本學(xué)習(xí)問題也引起了重視,現(xiàn)有的少樣本學(xué)習(xí)方法雖然已經(jīng)取得了很大的進(jìn)展,但仍有很大的進(jìn)步空間,在此提出幾點(diǎn)未來的研究方向:
(1)提高訓(xùn)練樣本的復(fù)雜度
少樣本學(xué)習(xí)最終目的是能廣泛應(yīng)用于實(shí)際生活中,然而在上述方法的實(shí)驗(yàn)中,目前大部分少樣本學(xué)習(xí)模型訓(xùn)練使用的數(shù)據(jù)集為Omniglot 和 ImageNet,這兩個(gè)數(shù)據(jù)集樣本的種類與復(fù)雜的現(xiàn)實(shí)生活相比過于簡單,雖在實(shí)驗(yàn)中可以取得不錯(cuò)的準(zhǔn)確率,卻無法反映模型在實(shí)際應(yīng)用中的效果,在未來的研究中應(yīng)著重研究困難樣本的少樣本學(xué)習(xí)。
(2)無監(jiān)督學(xué)習(xí)
監(jiān)督學(xué)習(xí)是目前深度學(xué)習(xí)中最熱門的領(lǐng)域,但是許多情況下無標(biāo)簽的數(shù)據(jù)集遠(yuǎn)比有標(biāo)簽數(shù)據(jù)更容易獲得。例如,在通過特征向量的距離來分類的度量學(xué)習(xí)中,是否可以使用無標(biāo)簽的數(shù)據(jù)來訓(xùn)練。借助大量無標(biāo)簽的數(shù)據(jù)來幫助少量有標(biāo)簽的數(shù)據(jù)進(jìn)行學(xué)習(xí),是未來研究的一個(gè)方向。
(3)神經(jīng)網(wǎng)絡(luò)的深入
少樣本學(xué)習(xí)面臨的最大問題之一是過擬合現(xiàn)象,神經(jīng)網(wǎng)絡(luò)中成千上萬的神經(jīng)元會(huì)因?yàn)闃颖緮?shù)太少而過于偏向訓(xùn)練樣本。許多元學(xué)習(xí)方法往往受限于過于簡單的網(wǎng)絡(luò)結(jié)構(gòu),因此優(yōu)化神經(jīng)網(wǎng)絡(luò)內(nèi)部的神經(jīng)元,使其具有更強(qiáng)的泛化性能,將對(duì)少樣本學(xué)習(xí)有更大的提升。
(4)其他領(lǐng)域的少樣本學(xué)習(xí)
現(xiàn)階段少樣本學(xué)習(xí)主要解決的是分類問題,然而如何利用元學(xué)習(xí)跨任務(wù)學(xué)習(xí)的能力,將少樣本學(xué)習(xí)擴(kuò)展到目標(biāo)檢測任務(wù)和圖像分割任務(wù)中也是非常重要的。
本文通過對(duì)比少樣本學(xué)習(xí)在圖像處理領(lǐng)域的最新研究,從不同角度總結(jié)并分析了當(dāng)前少樣本學(xué)習(xí)的最新成果。三種典型的數(shù)據(jù)增強(qiáng)方法能成功擴(kuò)充樣本數(shù)據(jù)量,雖行之有效,卻未從根本上解決少樣本問題。度量學(xué)習(xí)的少樣本學(xué)習(xí),當(dāng)樣本數(shù)過于少時(shí),度量學(xué)習(xí)往往會(huì)發(fā)生過擬合現(xiàn)象,具有一定局限性。經(jīng)典的元學(xué)習(xí)方法,優(yōu)點(diǎn)在于可以快速處理訓(xùn)練集中從未出現(xiàn)過的新樣本,但是元學(xué)習(xí)復(fù)雜的訓(xùn)練過程和過于簡單的網(wǎng)絡(luò)結(jié)構(gòu)使其無法達(dá)到更高的精度。