<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          從因果關系來看小樣本學習

          共 5129字,需瀏覽 11分鐘

           ·

          2020-10-07 08:22

          點擊上方小白學視覺”,選擇加"星標"或“置頂

          重磅干貨,第一時間送達

          作者 | 岳中琪
          編輯 | 陳彩嫻
          轉(zhuǎn)載 |?AI科技評論

          本文主要介紹一篇被NeurIPS 2020接受的論文《Interventional Few-Shot Learning》。

          這篇工作根據(jù)小樣本學習當中的因果關系,提出了一種新的基于因果干預的分類器IFSL,去除了預訓練帶來的摻雜效果,在各種方法上取得了穩(wěn)定的提升。

          主要的優(yōu)勢有:

          1. 廣泛適用于各種基于微調(diào)(fine-tune)或是元學習(meta-learning)的方法,即插即用;

          2. 無需額外的訓練步驟,原來模型咋訓練,加上IFSL還是咋訓練;

          3. 如果預訓練數(shù)據(jù)集不公開,比如一些商用數(shù)據(jù)集只公開分類器和特征提取器,那么元學習的方法就不適用了,只能用微調(diào)。在這種情況下,IFSL還是可以大幅提高性能。

          論文鏈接:https://arxiv.org/pdf/2009.13000.pdf

          Github開源地址:https://github.com/yue-zhongqi/ifsl

          論文第一作者:岳中琪,目前是阿里巴巴和新加坡南洋理工大學聯(lián)合博士項目在讀2年級,在MReal實驗室進行遷移學習和因果關系方面的研究,導師是張含望老師。本科是由新加坡企業(yè)獎學金全額贊助、在南洋理工大學畢業(yè)。


          1

          小樣本學習的介紹

          2019年,Open AI Five以碾壓的表現(xiàn)戰(zhàn)勝了Dota2世界冠軍戰(zhàn)隊OG,然而在這令人驚嘆的表現(xiàn)背后,是12.8萬個CPU和256塊P100數(shù)個月訓練的結(jié)果,相當于不間斷練習了45000年的游戲。

          很顯然,目前一個魯棒的機器學習模型還難以離開大量的數(shù)據(jù)、長時間的訓練以及高昂的訓練成本。而小樣本學習就致力于通過極少的訓練數(shù)據(jù)(1-5個樣本/類)來實現(xiàn)模型的泛化。

          那么,如何進行小樣本學習呢?

          這一點我們可以觀察人是如何快速學習的。例如一個人玩策略游戲帝國時代很厲害,那么如果去學習諸如星際爭霸的其他策略游戲,就比較容易上手,因為可以運用以前的游戲經(jīng)驗,一通百通。同樣的,對于機器而言,在少量樣本上快速泛化的核心,就是借助先驗知識。

          預訓練是(Pre-training)大家都熟悉且非常有效的獲取先驗知識的方法。具體就是在大型數(shù)據(jù)集上,學習一個強大的神經(jīng)網(wǎng)絡作為特征提取器,例如CV里面常見的在ImageNet上預訓練的ResNet網(wǎng)絡,或是NLP里面在Wikipedia上訓練的BERT,都代表一種特征表達的先驗知識。

          在預訓練基礎上,我們只需在樣本數(shù)量少的目標任務中,微調(diào)部分(例如只訓練最后一層fc分類器)或者全部網(wǎng)絡的參數(shù),便得到了一個可以解決小樣本學習問題的模型。

          預訓練相當于給了小樣本學習一個好的起點,就像一個人在上課前預習了大量的知識點。不過想要更上一層樓,還需要有效的學習方法。元學習(meta learning)的目的就是找到這種方法。

          具體來說,我們可以從預訓練集中,每次采樣出來一個“沙盒”版小樣本任務,例如選5個類,每個類選5張圖片作為訓練集(support set),再選15張作為測試集(query set),然后我們要求模型在support set訓練的結(jié)果,能夠在query set上面取得好的表現(xiàn)。

          其實這種學習策略在我們身邊隨處可見,例如準備考試的時候,我們會提前做一些模擬測試,了解題型,規(guī)劃答題節(jié)奏等等,這就是一種元學習。在小樣本學習的實際操作中,我們可以使用元學習訓練一個模型的初始化參數(shù)(MAML),或是一個分類器參數(shù)的生成網(wǎng)絡(LEO)等等。

          通過元學習得到的知識,就構(gòu)成了一種學習方法的先驗知識,在預訓練的網(wǎng)絡之上,進一步提升小樣本學習的表現(xiàn)。

          綜上所述,小樣本學習的解決思路,可以用下面這張圖來概括:

          我們先在一個大的數(shù)據(jù)集 上面預訓練一個特征提取網(wǎng)絡 ,之后我們既可以直接使用 在每一個小樣本任務中微調(diào)(紅色方塊的Fine-Tuning);

          也可以進一步使用元學習(Meta-Learning),將 拆成一個個由support set 和query set 組成的沙盒任務 ,訓練高效的學習方法

          元學習結(jié)束以后,我們就可以用這種高效的學習方法,在小樣本學習的任務中進行微調(diào)(綠色方塊的Fine-Tuning)。

          小樣本學習的兩種解決思路


          2

          亦正亦邪的預訓練

          預訓練是小樣本學習中一個核心的環(huán)節(jié),無論是基于微調(diào)的,還是基于元學習的方法,都以預訓練為開始。那么從常理來說,更強的預訓練,應該會帶來更好的小樣本學習的表現(xiàn),例如在現(xiàn)有文獻中,使用更深層的神經(jīng)網(wǎng)絡架構(gòu)WRN-28-10的微調(diào)結(jié)果,往往會比相對較淺的ResNet-10表現(xiàn)好很多。

          然而我們在微調(diào)的實驗中發(fā)現(xiàn)(見左邊的直方圖),雖然平均WRN-28-10(strong )更好,但當query set和support set區(qū)別很大的時候,結(jié)果是恰恰相反的,淺層的ResNet-10反而表現(xiàn)更佳!這是為什么呢?

          上圖的右邊是一個 區(qū)別很大的例子,其中預訓練時候見過的草的顏色是support set里的一個誤導因素,分類器容易踩坑,以草的顏色(見過)而非動物本身(沒見過)作為分類依據(jù)。

          而越強的預訓練模型,這些見過的草,相比于沒見過的動物,就會產(chǎn)生越魯棒的特征,對于分類器就更加誤導了,聰明反被聰明誤。

          為什么這個問題一直沒有被發(fā)現(xiàn)呢?

          其實就是因為被現(xiàn)有方法基于隨機取樣后平均的評估策略所掩蓋了。

          我們的工作也首次為這個現(xiàn)象提供了解釋。

          具體來說,剛才講的這個悖論是由小樣本學習當中的因果關系造成的。預訓練在帶來豐富的先驗知識的同時,也成了學習過程中的一個混雜因子(confounder),使得分類器難以找到樣本特征和樣本標注之間真實的因果關系。我們用一張因果圖來具體說明。

          • : 這里 代表預訓練的先驗知識, 代表圖片的特征表示,箭頭的意思是,我們用預訓練得到的特征提取器,獲得樣本的特征.

          • : 其中C代表一個樣本X在預訓練數(shù)據(jù)流形上面的投影;一個例子是eigenface,我們將高維的訓練集(),通過PCA找到這些圖片的基(也就是eigenface),這樣一張人臉圖片(),就可以被表示成這些基的線性組合,而線性組合的系數(shù)就是 。類似的現(xiàn)象在深度學習的訓練中也會出現(xiàn),具體可以參考我們論文里面的引用。

          • : 當我們用特征 訓練一個分類器預測標簽 的時候,分類器會不可避免的使用 里面的信息;也就是說 是特征里面低維度信息的影響,而 里沒有包含的冗余信息帶來的影響。

          在這個因果圖中,注意到 的共因( ),這樣 被叫做 的混雜因子,從而導致觀測到的 ,被混雜的關系 污染,而不能反映 間真實的因果關系了,剛才分類器被草的顏色迷惑的原因,其實就是分類器使用了 里“草”的語義信息,作為分類獅子的依據(jù)。

          那么當存在混雜因子的時候,我們應該如何學習 真實的因果關系呢?這就要用到干預(intervention),即 。干預 會切斷因果圖中所有指向 的箭頭(如下圖),這樣之前產(chǎn)生混雜的這條路 被堵住了,我們就能安全的學習想要的因果關系了。

          我們的這篇工作使用后門調(diào)整(backdoor adjustment)來實現(xiàn) ,我們的因果圖對應的后門調(diào)整是:

          具體來說,就是對預訓練的知識 進行分層(見圖中的 ),每一層有自己的分類器 ,然后把每層分類器的結(jié)果通過先驗概率 平均起來。
          關于混雜因子、干預和后門調(diào)整的具體介紹,大家可以參考一下我們組王譚寫的《無監(jiān)督的視覺常識特征學習——因果關系上的一點探索》(CVPR 2020)(論文鏈接:https://zhuanlan.zhihu.com/p/111306353)。


          3

          基于干預的去混雜

          預訓練在帶來特征表達的先驗知識的同時,也成為了混雜因子而迷惑了分類器的訓練,而我們打算通過對預訓練知識分層,然后用后門調(diào)整來找到 之間真實的因果關系。下面講具體如何實現(xiàn)分層和后門調(diào)整。

          我們是從預訓練的神經(jīng)網(wǎng)絡所自帶的兩個屬性來尋找分層的靈感的:1)特征維度,例如ResNet-10是512維的特征,每一個維度代表CNN里面的一個通道,對應了圖片中的一些視覺信息;2)預訓練的類別,例如在miniImageNet上預訓練所使用的64個類,那么預訓練所得到的64類分類器,就可以看作對預訓練數(shù)據(jù)集知識的一種蒸餾(knowledge distillation)。

          基于這些靈感,我們提出了三種不同的實現(xiàn)方案,分別是基于特征的調(diào)整(feature-wise adjustment),基于類別的調(diào)整(class-wise adjustment)以及兩種結(jié)合起來(combined adjustment)。具體這三種調(diào)整是如何對應后門調(diào)整公式的,大家可以參考論文第三章,這里我只是講一下具體的實現(xiàn)。

          • 基于特征的調(diào)整:將特征向量 劈成 等份,在每一份對應的維度里學一個分類器,最終 是把 個分類器softmax后的概率算個平均。例如把ResNet-10的512維分成4份,每128維為一份,學習4個分類器;

          • 基于類別的調(diào)整:首先我們在預訓練的個類中,各自算一個平均特征 ,即把所有屬于這個類的圖片特征平均一下;對于任務當中的一個樣本特征 ,我們用預訓練的分類器算出這個樣本屬于 個類的概率 ,使用,我們能算出來一個新的特征向量 ;然后我們把原始特征 和這個 拼起來,用來訓練分類器,注意這里只訓練了一個分類器,不過分類器輸入的維度是 維度的二倍;

          • 結(jié)合調(diào)整:相當于先做基于類別的調(diào)整,再做基于特征的調(diào)整。還是以ResNet-10和N=4為例子,對于每一個樣本 ,我們算出以后,把各自劈成4份,然后一一對應的拼起來(比如的前128維拼上的前128維),然后訓練4個分類器, 同樣是把4個分類器的輸出概率算個平均。

          可以看到,我們基于干預的這個方法只改變了分類器的架構(gòu),因此可以普遍的加入基于微調(diào)或元學習的小樣本學習方法,并且無需增加額外的訓練步驟。


          4

          實驗結(jié)果

          4.1?普遍適用,漲點明顯

          因為我們的方法是在分類器層面的改動,所以可以普遍的加入到各種微調(diào)和元學習的方法當中。我們在常用的微調(diào)方法(linear,cosine和k-NN),以及5種不同思路的元學習方法上面做了大量的驗證,在miniImageNet和tieredImageNet上面取得了普遍的提高。

          4.2 去除預訓練的混雜

          我們提出了一種新的Hardness-specific Acc來診斷小樣本學習。對于每一個測試樣本,根據(jù)它和訓練集support set的相似程度,我們定義了一個難度系數(shù),這樣我們可以觀察模型在不同測試樣本難度下的表現(xiàn),而越難的樣本就越容易在上面被預訓練的知識誤導。

          下圖展示了微調(diào)當中baseline和ifsl的hardness-specific acc,可以看到IFSL(實線)在各個難度下都超過了baseline(虛線),說明起到了去除混雜的作用。更詳細的分析可以參考論文。

          4.3?幫助模型聚焦物體

          模型在做預測的時候,是根據(jù)圖片上的哪一部分呢?

          我們提出了CAM-Acc:在一張圖片上先計算Grad-CAM分數(shù)(越高代表模型越關注這一部分),CAM-Acc是Grad-CAM分數(shù)高于0.9的區(qū)域中,在物體bounding box內(nèi)部的比重。

          我們來看一下Grad-CAM可視化的結(jié)果,以及CAM-Acc的表現(xiàn)。通過可視化和CAM-Acc的分數(shù),可以看到IFSL的模型的確能夠多注意物體本身。當然也有失敗的時候,比如看到當物體太小的時候(螞蟻),baseline和IFSL都只能依賴背景中的context去做預測了。



          5

          結(jié)語

          預訓練的先驗知識,是近些年來小樣本學習分數(shù)快速提升的重要原因。

          我們的這篇工作,其實是從因果的角度分析了預訓練對于學習一個分類模型的影響,揭示了基于 的分類器會被先驗知識混雜,想當然的做出預測;

          而基于干預 的去混雜方法,就是在一個不熟悉的小樣本學習任務中,平衡先驗知識的影響,做到三思而后行。在這個思路下,我們提出了IFSL分類器,簡單、普適且有效。

          事實上,這種對先驗知識的處理方法,可以被應用于任何使用預訓練的任務當中,因為下游任務中的訓練數(shù)據(jù),比起大規(guī)模預訓練來說,都相當于小樣本學習了。

          瀏覽 37
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  我要看一级特黄色电影 | 约啪视频| 香蕉综合网 | 日本免费黄色小视频 | 午夜性爱网|