[轉]Meta-Dataset:為小樣本學習而構建的數據集

  • 2021 年 4 月 12 日
  • AI

深度學習在一系列頗具挑戰性的難題上取得了突出成果,但其成功往往依賴於大量手動標註的訓練數據。這一限制激發了研究人員的興趣,即從較少樣本中學習。其中一個很好的示例是小樣本圖像分類,即從少量代表性圖像中學習新的分類。

版權聲明:
本文為轉載文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
本文鏈接:推出 Meta-Dataset:為小樣本學習而構建的數據集
文 / 學生研究員 Eleni Triantafillou 和高級研究員 Vincent Dumoulin,Google Research

  • 手動標註的訓練數據

ai.googleblog.com/2019/

由於人類對有限信息的學習能力明顯不及深度學習算法,所以從科學角度而言,小樣本分類是個很有趣的問題。而從實際的角度來看,這也是非常重要的問題。

大型標註數據集通常無法用於興趣類任務,因此解決此類問題將帶來諸多益處(如,讓模型可根據用戶需求進行快速定製),從而讓越來越多的人能夠使用機器學習技術。不可否認的是,研究人員近期開展了許多工作,想要解決小樣本分類問題,但由於先前的基準無法可靠評估各種所提出模型的優缺點,拖慢了研究進度。

《Meta-Dataset:為小樣本學習而構建的數據集》(Meta-Dataset: A Dataset of Datasets for Learning to Learn from Few Examples)(已在 ICLR 2020 上發表)一文中,我們提出了一種大型多元化基準,用於在現實且具有挑戰性的小樣本情境中衡量各種圖像分類模型。該基準也提供了一個框架,供學者研究小樣本分類中的重要方面。

本數據集由 10 個公開的自然圖像數據集(包括 ImageNet、CUB-200-2011、Fungi 等)、手寫字符以及塗鴉數據集組成。我們已向研究社區公布了代碼,以及如何在 TensorFlow 和 PyTorch 中使用 Meta-Dataset 的 Notebook 演示。

在本文中,我們將介紹在 Meta-Dataset 初期研究中取得的一些成果與重要研究方向。

  • 代碼

github.com/google-resea

  • Notebook

github.com/google-resea

背景:小樣本分類

在標準圖像分類中,一般將圖像集分為兩組:一組特定類圖像來訓練模型,然後用同類的另一組圖像進行測試。小樣本分類在此基礎上更進一步,在測試時將訓練成果泛化至全新的類(訓練中未見過的新分類)。

具體而言,在小樣本分類中,訓練集包含的類與測試時使用的類完全沒有交集。因此,訓練的目的是學習柔性模型,以便僅使用少量樣本便可將其用途轉變為分類新類。最終目標是在針對一些 測試任務 進行的測試時評估表現良好,每種測試任務都會在已提出的 測試集 中展現先前未出現的類之間存在的分類問題。每個測試任務包含一個由若干帶標籤圖像組成的 支持集(模型可通過這些圖像學習新的類), 以及一個完全無交集的 樣本查詢集(模型隨後需要對該集進行分類)。

在 Meta-Dataset 中,除了上述小樣本學習中固有的難以泛化至新類的問題,我們還研究了訓練成果至全新的數據集的泛化(訓練中未使用任何類的圖像)。

Meta-Dataset 與先前基準的比較

mini-ImageNet 是研究小樣本分類的一個熱門數據集,也是 ImageNet 中類的子集的降採樣版本。此數據集共包含 100 個類,拆分為訓練、驗證測試 類別。儘管 mini-ImageNet 等基準在測試時使用的類與訓練時使用的類不同,但從外觀來看,測試時使用的類在很大程度上與訓練時使用的類相似。近期研究顯示,這一特點可簡單地通過再次使用訓練時學習的特徵,使模型在測試時發揮較大競爭優勢,而無需驗證模型能否從支持集中的若干樣本中學習。相比而言,在 Meta-Dataset 上表現良好需要在訓練時吸收多元信息,並在測試時將其快速應用於解決完全不同的任務,而這些任務可能使用完全陌生的數據集。

採用 mini-ImageNet 執行的測試任務:每個任務為先前未曾遇到(測試)的類之間的分類問題。模型可使用新類的一些帶標籤樣本組成的支持集適應手頭的新任務,然後預測這些新類的查詢樣本標記。評估指標為查詢集準確度,根據每個任務中的樣本和各任務之間的結果取平均值

雖然近期發表的其他論文也研究了針對 mini-ImageNet 的訓練,並針對不同數據集進行了評估,但 Meta-Dataset 代表着迄今為止跨數據集小樣本圖像分類最大規模的有序基準。此基準還引入一種採樣算法,用於生成特徵和難度各異的任務,具體做法是使每個任務中類的數量、每個類中的可用樣本數量都不一樣,以引入類不均衡。而對於某些數據集,則使每個任務的類之間的相似程度不同。下面展示了 Meta-Dataset 的一些示例測試任務。

Meta-Dataset 的測試任務:與上文展示的 mini-ImageNet 任務相反,此處的各種任務來自不同的數據集(的測試類)。此外,各任務之間的類數量和支持集大小可能不同,支持集中可能存在類不均衡的問題

對 Meta-Dataset 的初期研究和發現

我們在 Meta-Dataset 上對以下兩個主要類別的小樣本學習模型進行基準測試:

預訓練元學習

預訓練僅使用監督式學習在類的訓練集上訓練分類器(神經網絡特徵提取器與線性分類器的組合)。然後,可以通過微調預訓練特徵提取器和訓練新的任務特定線性分類器,或通過近鄰比較(對每個查詢樣本的預測是其毗鄰的支撐樣本的標記)來對測試任務樣本進行分類。雖然其「基線」狀態屬於小樣本分類範疇,但這種方法最近受到格外關注,並取得了突破性成果。

另一方面,元學習模型構建一些「訓練任務」,其訓練目標明確反映了使用關聯支持集調整任務後,在每個任務的查詢集上表現良好的目標,從而捕獲了測試時解決每個測試任務所需的能力。每個訓練任務皆通過對訓練類的子集和某些類的部分樣本(這些類充當支持和查詢集)進行隨機採樣創建而成。

通過評估基於 Meta-Dataset 的預訓練和元學習模型,我們部分發現的總結如下:

1) 現有方法難以利用異構訓練數據源

我們比較了僅使用 ImageNet 訓練類的訓練模型(來自預訓練和元學習方法)與使用 Meta-Dataset 中數據集內所有訓練類的訓練模型,以便使用更廣泛的訓練數據集合來衡量泛化收益。我們之所以選擇 ImageNet 進行此類比較,是因為在 ImageNet 上學習的特徵易於轉移到其他數據集。應用於所有模型的評估任務都衍生自訓練所用數據集的類留出集,其中至少完全留出兩個額外數據集以備評估(即這些數據集中的任何類都不用於訓練)。

人們可能會料想,對更多數據(儘管是異構數據)進行訓練可以將訓練結果更好地泛化至測試集。然而,事實並非總是如此。具體而言,下圖呈現了不同模型在 Meta-Dataset 所含十個數據集的測試任務中的準確度。我們觀察到,在所有數據集(而非只是 ImageNet)上進行訓練後,模型在手寫字符/塗鴉(Omniglot 和 Quickdraw)測試任務中的表現得到了顯著改善。這很合理,因為這些數據集在視覺上與 ImageNet 明顯不同。但是,對於自然圖像數據集的測試任務,僅在 ImageNet 上進行訓練就可以獲得近似的準確度,這表明當前模型無法有效利用異構數據來改善這一方面。

僅在 ImageNet (ILSVRC-2012) 或所有數據集上進行訓練後,每個數據集測試表現的比較

僅在 ImageNet (ILSVRC-2012) 或所有數據集上進行訓練後,每個數據集測試表現的比較

2) 測試時,某些模型更能利用額外數據

我們根據每個測試任務中可用樣本的數量來分析不同模型的表現,發現了一個有趣的利弊權衡:不同模型在訓練(支持)樣本達到某個特定數量時表現最佳。我們觀察到,當僅有很少的可用樣本(例如 ProtoNet 和我們提出的 fo-Proto-MAML)時,某些模型的表現優於其他模型,但是當提供更多的樣本,模型性能也不會有很大的提升。而其他模型在樣本很少的任務中表現平平,但是隨着樣本量增加,其性能提升速度也會加快(例如 Finetune 基線)。但是在實踐中,我們可能事先不知道測試時可以使用的樣本數量,因此,我們希望設計一種可以靈活利用任意樣本數量,而不會受特定條件不當限制的模型。

不同數據集之間平均測試表現與測試任務中每個類可用樣本數量的比較。表現根據類精確度衡量:獲得準確標記的類的樣本比例,取所有類的平均值

3) 與元學習器經過端到端訓練(即元訓練)這一事實相比,其自適應算法對其自身性能的影響更大

我們開發了一套全新的基線用于衡量元學習的優勢。具體而言,對於若干個元學習模型,我們考慮使用預訓練特徵提取器的非元學習模型,之後,僅在評估中像對應的元學習模型一樣將同樣的自適應算法應用於這些特徵。僅對 ImageNet 進行訓練時,元學習訓練通常有一點幫助或至少沒有多少壞處,但對所有數據集進行訓練時,結果較為複雜。這說明,未來的研究工作需要側重於理解和改進元學習,尤其是面向各種數據集的情況。

三種不同元學習器變體與其對應的僅推斷基線的比較(僅對 ImageNet (ILSVRC-1012) 或所有數據集進行訓練):每個矩形表示元訓練和僅推斷基線之間的差異,正值表示性能與元訓練相比有所改進

結論

Meta-Dataset 為小樣本分類帶來了新的挑戰。我們的初期探索揭示了現有方法的局限性,同時表明了開展進一步研究的必要性。在 Meta-Dataset 方面,最近的研究已經取得了一些很不錯的成果,例如使用巧妙設計的任務調節,以及更複雜的超參數調優、結合預訓練和元學習優勢的「元基線」,以及最後使用特徵選擇將每個任務的通用表徵專門化。我們希望 Meta-Dataset 有助於推動機器學習這一重要子領域的研究。

致謝

Meta-Dataset 由 Eleni Triantafillou、Tyler Zhu、Vincent Dumoulin、Pascal Lamblin、Utku Evci、Kelvin Xu、Ross Goroshin、Carles Gelada、Kevin Swersky、Pierre-Antoine Manzagol 和 Hugo Larochelle 共同開發。我們在此感謝 Pablo Castro 對本篇博文給予的寶貴指導,感謝 Chelsea Finn 參與卓有成效的討論並確保 fo-MAML 正確實現,還要感謝 Zack Nado 和 Dan Moldova 調整初期代碼集代碼,感謝 Cristina Vasconcelos 指出模型排名中的問題,感謝 John Bronskill 建議我們針對 MAML 利用更大的內部循環學習率進行實驗,這確實大大改善了我們的 fo-MAML 結果。