USB:首個將視覺、語言和音頻分類任務進行統一的半監督分類學習基準
當前,半監督學習的發展如火如荼。但是現有的半監督學習基準大多局限于計算機視覺分類任務,排除了對自然語言處理、音頻處理等分類任務的一致和多樣化評估。此外,大部分半監督論文由大型機構發表,學術界的實驗室往往由于計算資源的限制而很難參與到推動該領域的發展中。
為此,微軟亞洲研究院的研究員們聯合西湖大學、東京工業大學、卡內基梅隆大學、馬克斯-普朗克研究所等機構的科研人員提出了 Unified SSL Benchmark(USB):第一個將視覺、語言和音頻分類任務進行統一的半監督分類學習基準。
該論文不僅引入了更多樣化的應用領域,還首次利用視覺預訓練模型大大縮減了半監督算法的驗證時間,使得半監督研究對研究者,特別是小研究團體更加友好。相關論文已被國際人工智能領域頂級學術大會 NeurIPS 2022 接收。
文章鏈接:https://arxiv.org/pdf/2208.07204.pdf
代碼鏈接:https://github.com/microsoft/Semi-supervised-learning?
監督學習通過構建模型來擬合有標記數據,當使用監督學習 (supervised learning)對大量高質量的標記數據(labeled data)進行訓練時,神經網絡模型會產生有競爭力的結果。
例如,據 Paperswithcode 網站統計,在 ImageNet 這一百萬量級的數據集上,傳統的監督學習方法可以達到超過88%的準確率。然而,獲取大量有標簽的數據往往費時費力。
為了緩解對標注數據的依賴,半監督學習(semi-supervised learning/SSL)致力于在僅有少量的標注數據時利用大量無標簽數據(unlabeled data)來提升模型的泛化性。半監督學習亦是機器學習的重要主題之一。深度學習之前,這一領域的研究者們提出了諸如半監督支持向量機、熵正則化、協同訓練等經典算法。
深度半監督學習
隨著深度學習的興起,深度半監督學習算法也取得了長足的進步。同時,包括微軟、谷歌、和 Meta 等在內的科技公司也認識到了半監督學習在實際場景中的巨大潛力。
例如,谷歌利用噪聲學生訓練(noisy student training)這一半監督算法提高了其在搜索方面的性能[1]。當前最具代表性的半監督算法通常對標注數據使用交叉熵損失進行訓練,對無標注數據使用一致性正則技術(consistency regularization)鼓勵對輸入擾動進行不變預測。
例如,谷歌在 NeurIPS 2020 提出的 FixMatch[2] 算法,利用增強錨定(augmentation anchoring)和固定閾值(fixed thresholding)技術來增強模型對不同強度增強數據的泛化性和減少噪聲偽標簽(noisy pseudo labels)的影響。在訓練中,FixMatch 過濾了低于用戶指定(user-provided / pre-defined)閾值的無標簽數據。
微軟亞洲研究院與東京工業大學等在 NeurIPS 2021 合作提出的 FlexMatch[3] 則考慮到了不同類之間的學習難度不同,因此提出了課程偽標簽(curriculum pseudo labeling)技術,對于不同類應該采用不同的閾值。
具體來說,對于容易學習的類別,模型應該設置高閾值以降低噪聲偽標簽的影響;對于難學習的類別,模型應該設置低閾值鼓勵該類的擬合。每個類的學習難度評估取決于落入該類且高于固定值的未標記數據樣本的數量。
同時,微軟亞洲研究院的研究員們還合作提出了一個統一的基于 Pytorch 的半監督方法代碼庫 TorchSSL[4],對該領域的深度方法、常用數據集和基準結果進行了統一的支持。
圖1:FlexMatch 算法流程
當前半監督學習代碼庫存在的問題與挑戰
盡管半監督學習的發展如火如荼,但是,研究員們注意到目前大部分半監督方向的論文只關注計算機視覺 (CV) 分類任務,對于其他領域,例如自然語言處理 (NLP)、音頻處理 (audio),研究者無法得知這些在 CV 任務上有效的算法到了不同領域是否依然有效。
另外,大部分半監督相關的論文都是由大型機構發表,學術界的實驗室往往由于計算資源的限制而很難參與到推動該領域的發展中。總的來說,半監督學習基準目前存在以下兩個問題:
(1)多樣性不足。現有的半監督學習基準大多局限于 CV 分類任務(即 CIFAR-10/100,SVHN,STL-10 和 ImageNet 分類),排除了對 NLP、audio 等分類任務的一致和多樣化評估,而在 NLP 和 audio 中缺乏足夠的標記數據也是一個普遍問題。
(2)耗時且對學術界不友好。現有的半監督學習基準(如 TorchSSL)通常是耗時且不環保的,因為它往往需要從頭開始訓練深度神經網絡模型。具體而言,使用TorchSSL 評估 FixMatch[1]大約需要300個 GPU 日。如此高的訓練成本使得許多研究實驗室(尤其是學術界的實驗室或小研究團體)無法負擔得起 SSL 的相關研究,從而阻礙了 SSL 的進展。
USB:任務多樣化且對研究者更友好的新基準庫
為了解決上述問題,微軟亞洲研究院的研究員們聯合西湖大學、東京工業大學、卡內基梅隆大學、馬克斯-普朗克研究所等機構的科研人員提出了 Unified SSL Benchmark(USB),這是第一個將視覺、語言和音頻分類任務進行統一的半監督分類學習基準。
相比于之前的半監督學習基準(如 TorchSSL)只關注少量視覺任務,該基準不僅引入了更多樣化的應用領域,還首次利用視覺預訓練模型(pretrained vision Transformer)大大縮減了半監督算法的驗證時間(從7000 GPU 時縮減至900 GPU 時),從而使得半監督研究對研究者、特別是小研究團體更為友好。
相關論文已被國際人工智能領域的頂級學術大會 NeurIPS 2022 接收。(點擊「閱讀原文」可了解更多)
USB 提供的解決方案
那么,USB 如何一次性解決當前半監督基準所存在的問題呢?研究員們主要進行了如下改進:
(1)為增強任務多樣性,USB 引入了5個 CV 數據集,5個 NLP 數據集和5個 audio 數據集,并提供了一個多樣化且具有挑戰性的基準,從而能夠對來自不同領域的多個任務進行一致的評估。表1提供了 USB 與 TorchSSL 的任務和訓練時間等方面的詳細對比。
表1:USB 與 TorchSSL 框架的任務和訓練時間對比
(2)為了提高訓練效率,研究員們將預訓練的 vision Transformer 引入 SSL,而不是從頭訓練 ResNets。具體而言,研究員們發現在不影響性能的情況下使用預訓練模型可以大大減少訓練迭代次數(例如,將 CV 任務的訓練迭代次數從100萬步減少到20萬步)。
(3)為了對研究人員更加友好,研究員們開源實現了14種 SSL 算法并開源了一個模塊化代碼庫和相關的配置文件以供研究者輕松再現 USB 報告中的結果。為了快速上手,USB 還提供了詳細的文檔和教程。此外,USB 還提供了 pip 包以供使用者直接調用 SSL 算法。研究員們承諾未來會在 USB 中不斷加入新的算法(例如不平衡半監督算法等)和更多更具挑戰性的數據集。表2展示了 USB 中已支持的算法和模塊。
表2:USB 中已支持的算法和模塊
半監督學習通過利用大量無標簽數據來訓練更精確、更魯棒的模型,在未來有著重要的研究和應用價值。微軟亞洲研究院的研究員們期待通過 USB 這一工作,能夠予力學術界和工業界在半監督學習領域取得更大的進展。