小樣本學(xué)習(xí)--概念、原理與方法簡介(Few-shot learning)
Few-shot learning (FSL)?在機(jī)器學(xué)習(xí)領(lǐng)域具有重大意義和挑戰(zhàn)性,是否擁有從少量樣本中學(xué)習(xí)和概括的能力,是將人工智能和人類智能進(jìn)行區(qū)分的明顯分界點(diǎn),因?yàn)槿祟惪梢詢H通過一個或幾個示例就可以輕松地建立對新事物的認(rèn)知,而機(jī)器學(xué)習(xí)算法通常需要成千上萬個有監(jiān)督樣本來保證其泛化能力。原則上我們將FSL方法分為基于生成模型和基于判別模型兩種,其中基于元學(xué)習(xí)的FSL方法值得特別注意。
到目前為止,F(xiàn)SL有一部分比較重要的應(yīng)用,涵蓋了計(jì)算機(jī)視覺,自然語言處理,音頻和語音,強(qiáng)化學(xué)習(xí)和數(shù)據(jù)分析等許多研究熱點(diǎn),可以說是一個很有發(fā)展前景的方向。
地址:https://zhuanlan.zhihu.com/p/258562899
01
INTRODUCTION
首先,F(xiàn)SL方法預(yù)計(jì)不會依賴大規(guī)模的訓(xùn)練樣本,從而避免了某些特定應(yīng)用中數(shù)據(jù)準(zhǔn)備的高昂成本。 FSL可以縮小人類智能與人工智能之間的距離,這是發(fā)展通用類型AI的必經(jīng)之路。 FSL可以為一項(xiàng)新出現(xiàn)的、可采集樣本很少的任務(wù)實(shí)現(xiàn)低成本,快速的模型部署。
?,(?
, 從聯(lián)合分布?
?中得出)
?,使得預(yù)期的錯誤成本?
?達(dá)到最小。
?表示?
?的預(yù)測值?
?與其實(shí)際值?
?之前的損失Loss
?對于我們是未知的,因此因此學(xué)習(xí)算法實(shí)際上旨在最小化經(jīng)驗(yàn)誤差?
?。
?的函數(shù)空間?
?太大,則泛化誤差?
?會變得很大,因此,很容易出現(xiàn)過擬合。
?中包含更多的受監(jiān)督的樣本,那么函數(shù)?
?將會有更多的約束條件,這意味著函數(shù)?
?的空間將會變小,這將會帶來一個比較好的泛化效果。相反,如果監(jiān)督樣本的數(shù)據(jù)集規(guī)模減少,自然會導(dǎo)致較差的泛化能力。從本質(zhì)上講,每個監(jiān)督樣本形成的約束可以看作是函數(shù)?
?上的歸一化,它可以壓縮函數(shù)?
?的冗余可選空間,從而減少學(xué)習(xí)算法的泛化誤差。02
OVERVIEW

03
相關(guān)符號定義
?來表示輸入數(shù)據(jù),
?來表示監(jiān)督信息,?
?和?
?分別表示輸入數(shù)據(jù)和監(jiān)督信息的空間。

?的樣本?
?來自一個特定的域?
?,由數(shù)據(jù)空間?
?和邊際概率分布?
?組成。
?中有?
?個任務(wù)類,每個類只有?
?(非常小,例如1、5)個樣本,即?
?=?
?,這也稱為C-way,K-shot任務(wù)。目的是產(chǎn)生一個目標(biāo)預(yù)測函數(shù)?
?,該函數(shù)可以對?
?中的待預(yù)測樣本進(jìn)行預(yù)測。根據(jù)之前的分析,很難用少量的?
?建立高質(zhì)量的模型。
中包括足夠的類別和歸屬該類別的根據(jù)以往的經(jīng)驗(yàn)收集的樣本?
?中不包含任務(wù)?
?中的樣本類別。即,?
?,但?
?和?
?中的數(shù)據(jù)都來自同一領(lǐng)域,也就是說,
?相關(guān)的歷史數(shù)據(jù),包括離線或公開標(biāo)記的數(shù)據(jù)中獲取我們需要的輔助數(shù)據(jù)集?
?,尤其是在當(dāng)今的大數(shù)據(jù)時代。04
什么是模型并行?FSL問題定義
?的包含少量可用的有監(jiān)督信息的數(shù)據(jù)集?
?和與?
?不相關(guān)的輔助數(shù)據(jù)集?
?,小樣樣本學(xué)習(xí)的目標(biāo)是為任務(wù)?
?構(gòu)建函數(shù)?
?,該任務(wù)的完成利用了?
?中很少的監(jiān)督信息和?
?中的知識,完成將輸入映射到目標(biāo)的任務(wù)。
?不相關(guān)的術(shù)語表示?
?和?
?中的類別是正交的,即?
?。如果?
?覆蓋了?
?中的任務(wù),即?
?,則FSL問題將崩潰為傳統(tǒng)的大樣本學(xué)習(xí)問題。
?中包含一部分無標(biāo)簽數(shù)據(jù),或者?
?的情況。05
兩類FSL方法的區(qū)別與聯(lián)系
?或者條件概率分布?
?作為預(yù)測的模型,即判別模型。判別方法關(guān)心的是對給定輸入?
?,應(yīng)該預(yù)測什么樣的輸出?
?。
?,然后求出后驗(yàn)概率分布?
?作為預(yù)測的模型,即生成模型。這里以樸素貝葉斯為例,我們要求的目標(biāo)可以通過:


?稱為條件概率(class-conditional probability),或稱為“似然”(likelihood),?
?稱為先驗(yàn)(prior)概率。?
?是用于歸一化的"證據(jù)"因子。對于給定樣本?
?。證據(jù)因子?
?與類標(biāo)記無關(guān),因此估計(jì)?
?的問題就轉(zhuǎn)化為如何基于訓(xùn)練數(shù)據(jù)來估計(jì)先驗(yàn)?
?和似然?
?。1)僅需要有限的樣本。節(jié)省計(jì)算資源,需要的樣本數(shù)量也少于生成模型。
2)能清晰的分辨出多類或某一類與其他類之間的差異特征,準(zhǔn)確率往往較生成模型高。
3)由于直接學(xué)習(xí)
,而不需要求解類別條件概率,所以允許我們對輸入進(jìn)行抽象(比如降維、構(gòu)造等),從而能夠簡化學(xué)習(xí)問題。2)沒有生成模型的優(yōu)點(diǎn)。
3)黑盒操作: 變量間的關(guān)系不清楚,不可視。
1)生成給出的是聯(lián)合分布
,不僅能夠由聯(lián)合分布計(jì)算后驗(yàn)分布
(反之則不行),還可以給出其他信息,比如可以使用
來計(jì)算邊緣分布
。如果一個輸入樣本的邊緣分布
很小的話,那么可以認(rèn)為學(xué)習(xí)出的這個模型可能不太適合對這個樣本進(jìn)行分類,分類效果可能會不好,這也是所謂的異常值檢測(outlier detection)。2)生成模型收斂速度比較快,即當(dāng)樣本數(shù)量較多時,生成模型能更快地收斂于真實(shí)模型。
3)生成模型能夠應(yīng)付存在隱變量的情況,比如混合高斯模型就是含有隱變量的生成方法。
1)聯(lián)合分布能夠提供更多的信息,但也需要更多的樣本和更多計(jì)算,尤其是為了更準(zhǔn)確估計(jì)類別條件分布,需要增加樣本的數(shù)目,而且類別條件概率的許多信息是我們做分類用不到,因而如果我們只需要做分類任務(wù),就浪費(fèi)了計(jì)算資源。
06
基于判別模型的方法
?,在該標(biāo)準(zhǔn)下,相似樣本對可以獲得較高的相似度得分,而非相似對則獲得較低的相似度得分。
?創(chuàng)建相似性度量并將其推廣到任務(wù)?
?的新穎類中。相似度度量可以是簡單的距離測量,復(fù)雜的網(wǎng)絡(luò)或其他可行的模塊或算法,只要它們可以估計(jì)樣本或特征之間的相似度即可。
?作為輸入,并且將它們在頂層的輸出進(jìn)行計(jì)算,以輸出單個成對相似度
。

?中訓(xùn)練樣本的特征級增強(qiáng)。根據(jù)數(shù)據(jù)的擴(kuò)充是否依賴于外部信息(例如語義屬性,詞向量屬性等),可以將現(xiàn)有的基于擴(kuò)充的FSL方法進(jìn)一步分為有監(jiān)督和無監(jiān)督兩類。
?為特征空間,?
?為輔助信息空間。通過這些方法學(xué)習(xí)到的擴(kuò)增?
?本質(zhì)上是?
?與?
?之間的映射關(guān)系,盡管它們在映射方向和映射模塊上有所不同,總結(jié)如下圖所示。
?,然后通過其他FSL方法學(xué)習(xí)增強(qiáng)的?
?.
?構(gòu)建的監(jiān)督任務(wù)?
?中,以學(xué)習(xí)如何適應(yīng)未來的相關(guān)任務(wù)。?
?定義任務(wù)分配,這表明所有任務(wù)都來?
?自并遵循相同的任務(wù)范式,例如,所有任務(wù)都是C-ways,K-shot問題。
?上測試,其元測試標(biāo)簽空間與元訓(xùn)練期間的標(biāo)簽空間不相交。
?,也就是sample set和query set來模擬測試時的support set和testing set。我們可以使用訓(xùn)練集來生成巨量的模擬任務(wù),從而在meta層面上訓(xùn)練整個關(guān)系網(wǎng)絡(luò)。隨后,我們在運(yùn)用數(shù)據(jù)集?
?來對網(wǎng)絡(luò)進(jìn)行調(diào)整,以期待讓其實(shí)現(xiàn)小樣本學(xué)習(xí)的任務(wù),在少量數(shù)據(jù)集?
?上實(shí)現(xiàn)準(zhǔn)確分類。元學(xué)習(xí)的目標(biāo)就是通過學(xué)習(xí)大量的任務(wù),從而學(xué)習(xí)到內(nèi)在的元知識,從而能夠快速的處理新的同類任務(wù),這和少樣本學(xué)習(xí)的目標(biāo)設(shè)定是一樣的。07
總結(jié)
使學(xué)習(xí)系統(tǒng)能夠從少量樣本中學(xué)習(xí),對于機(jī)器學(xué)習(xí)和人工智能的進(jìn)一步發(fā)展至關(guān)重要,本文對小樣本學(xué)習(xí)(FSL)的概念、原理和方法進(jìn)行了簡要的解釋,并且將FSL方法進(jìn)行了歸類解釋,隨后會更新一些關(guān)于文中談到的FSL方法和相關(guān)原理解釋。
PS:感謝?@白小魚?@Curry @魚遇雨欲語與余?三位大佬的答疑解惑,對萌新異常友善
本文學(xué)習(xí)筆記參考文獻(xiàn):
https://arxiv.org/pdf/2009.02653.pdf

