首頁 >科技週邊 >人工智慧 >達摩院開源半監督學習框架Dash,刷新多項SOTA

達摩院開源半監督學習框架Dash,刷新多項SOTA

PHPz
PHPz轉載
2023-04-11 17:07:031653瀏覽

一、研究背景

監督學習(Supervised Learning)

達摩院開源半監督學習框架Dash,刷新多項SOTA

我們知道模型訓練的目的其實是學習一個預測函數,在數學上,這可以刻畫成一個學習從資料(X) 到標註(y) 的映射函數。監督學習就是一種最常用的模型訓練方法,其效果的提升依賴於大量的且進行了很好標註的訓練數據,也就是所謂的大量標籤數據 ((X,y))。但是標註數據往往需要大量的人力物力等等,因此效果提升的同時也會帶來成本過高的問題。在實際應用中經常遇到的情況是有少量標註數據和大量未標註數據,由此引出的半監督學習也越來越引起科學工作者的注意。

半監督學習(Semi-Supervised Learning)

達摩院開源半監督學習框架Dash,刷新多項SOTA

半監督學習同時對少量標註資料和大量未標註資料進行學習,其目的是藉助無標籤資料來提升模型的精確度。例如self-training 就是一種很常見的半監督學習方法,其具體流程是對於標註資料(X, y) 學習資料從X 到y 的映射,同時利用學習得到的模型對未標註資料X 預測出一個偽標籤達摩院開源半監督學習框架Dash,刷新多項SOTA,透過對偽標籤資料(X, 達摩院開源半監督學習框架Dash,刷新多項SOTA)進一步進行監督學習來幫助模型進行更好的收斂與精確度提升。

核心解決問題

達摩院開源半監督學習框架Dash,刷新多項SOTA

現有的半監督學習框架無標籤資料的利用大致可以分為兩種,一是全部參與訓練,二是用一個固定的閾值卡出置信度較高的樣本進行訓練(比如FixMatch)。由於半監督學習對未標註資料的利用依賴於目前模型預測的偽標籤,所以偽標籤的正確與否會為模型的訓練帶來較大的影響,好的預測結果有助於模型的收斂與對新的模式的學習,差的預測結果會幹擾模型的訓練。所以我們認為:不是所有的無標籤樣本都是必須的!

二、論文& 程式碼

達摩院開源半監督學習框架Dash,刷新多項SOTA

  • #論文連結:https://proceedings. mlr.press/v139/xu21e/xu21e.pdf
  • #程式碼位址:https://github.com/idstcv/Dash
  • #技術應用:https://modelscope.cn/models/damo/cv_manual_face-liveness_flrgb/summary

這篇論文創新地提出用動態閾值(dynamic threshold)的方式篩選無標籤樣本進行半監督學習(semi-supervised learning,SSL)的方法,我們改造了半監督學習的訓練框架,在訓練過程中對無標籤樣本的選擇策略進行了改進,透過動態變化的閾值來選擇更有效的無標籤樣本進行訓練。 Dash 是一個通用策略,可以輕鬆與現有的半監督學習方法整合。實驗方面,我們在 CIFAR-10, CIFAR-100, STL-10 和 SVHN 等標準資料集上充分驗證了其有效性。理論方面,論文從非凸優化的角度證明了 Dash 演算法的收斂性質。

三、方法

Fixmatch 訓練框架

#

達摩院開源半監督學習框架Dash,刷新多項SOTA

在引出我們的方法 Dash 之前,我們介紹一下 Google 提出的 FixMatch 演算法,一種利用固定閾值選擇無標籤樣本的半監督學習方法。 FixMatch 訓練框架是先前的 SOTA 解決方案。整個學習框架的重點可以歸納為以下幾點:

1、對於無標籤資料經過弱資料增強(水平翻轉、偏移等)得到的樣本透過目前的模型得到預測值 達摩院開源半監督學習框架Dash,刷新多項SOTA

2、對於無標籤資料經過強資料增強(RA or CTA)得到的樣本透過目前的模型得到預測值 達摩院開源半監督學習框架Dash,刷新多項SOTA

#3、以具有高置信度的弱資料增強的結果達摩院開源半監督學習框架Dash,刷新多項SOTA,透過one hot 的方式形成偽標籤達摩院開源半監督學習框架Dash,刷新多項SOTA,然後用 達摩院開源半監督學習框架Dash,刷新多項SOTA 和X 經過強資料增強得到的預測數值 達摩院開源半監督學習框架Dash,刷新多項SOTA 進行模型的訓練。

fixmatch 的優點是用弱增強資料進行偽標籤的預測,增加了偽標籤預測的準確性,並在訓練過程中以固定的閾值0.95(對應loss 為0.0513 ) 選取高置信度(閾值大於等於0.95,也就是loss 小於等於0.0513)的預測樣本產生偽標籤,進一步穩定了訓練過程。

Dash 訓練框架

#針對全部選擇偽標籤和用固定閾值選擇偽標籤的問題,我們創新地提出用動態閾值來進行樣本篩選的策略。即動態閾值 達摩院開源半監督學習框架Dash,刷新多項SOTA是隨 t 衰減的

達摩院開源半監督學習框架Dash,刷新多項SOTA

#

式中 C=1.0001,達摩院開源半監督學習框架Dash,刷新多項SOTA是有標籤資料在第一個 epoch 之後 loss 的平均值,我們選擇那些達摩院開源半監督學習框架Dash,刷新多項SOTA的無標籤樣本參與梯度回傳。下圖展示了不同達摩院開源半監督學習框架Dash,刷新多項SOTA值下的閾值 達摩院開源半監督學習框架Dash,刷新多項SOTA 的變化曲線。可以看到參數 達摩院開源半監督學習框架Dash,刷新多項SOTA 控制了閾值曲線的下降速率。 達摩院開源半監督學習框架Dash,刷新多項SOTA 的變化曲線類似模擬訓練模型時損失函數下降的趨勢。

達摩院開源半監督學習框架Dash,刷新多項SOTA

下圖比較了訓練過程中的FixMath 和Dash 選擇的正確樣本數和錯誤樣本數隨訓練進行的變化情況(使用的資料集是cifar100)。從圖中可以很清楚地看到,比較 FixMatch,Dash 可以選取更多正確 label 的樣本,同時選擇較少的錯誤 label 的樣本,最終有助於提高訓練模型的精確度。

達摩院開源半監督學習框架Dash,刷新多項SOTA

我們的演算法可以總結為如下 Algorithm 1。 Dash 是一個通用策略,可以輕鬆與現有的半監督學習方法整合。為了方便,在本文的實驗中我們主要將 Dash 與 FixMatch 整合。更多理論證明詳見論文。

達摩院開源半監督學習框架Dash,刷新多項SOTA

四、結果

我們在半監督學習常用資料集:CIFAR-10,CIFAR-100,STL-10和SVHN 上進行了演算法的驗證。結果分別如下:

達摩院開源半監督學習框架Dash,刷新多項SOTA

達摩院開源半監督學習框架Dash,刷新多項SOTA

#可以看到我們的方法在多個實驗設定上都取得了比SOTA 更好的結果,其中需要說明的是針對CIFAR-100 400label 的實驗,ReMixMatch 用了data align 的額外trick 取得了更好的結果,在Dash 中加入data align 的trick 之後可以取得43.31% 的錯誤率,低於ReMixMatch 44.28% 的錯誤率。

五、應用

實際面向任務域的模型研發過程中,該半監督 Dash 框架經常會被應用到。接下來跟大家介紹下我們研發的各個網域上的開源免費模型,歡迎大家體驗、下載(大部分手機端即可體驗):

  • https://modelscope.cn/models/damo/cv_resnet50_face-detection_retinaface/summary
  • #https://modelscope.cn/models /damo/cv_resnet101_face-detection_cvpr22papermogface/summary​
  • ​https://modelscope.cn/models/damo/cv_manual_face-detection_tinymog/summary​
  • https://modelscope.cn/models/damo/cv_manual_face-detection_ulfd/summary
  • https://modelscope.cn/models/damo/cv_manual_face-detection_mtcnn/摘要
  • https://modelscope.cn/models/damo/cv_resnet_face-recognition_facemask/summary
  • #https:// modelscope.cn/models/damo/cv_ir50_face-recognition_arcface/summary
  • https://modelscope.cn/models/damo/cv_manual_face-liveness_flir/summary
  • ##https://modelscope.cn/models/damo/cv_manual_face-liveness_flrgb/summary
  • https://modelscope.cn/models/damo /cv_manual_facial-landmark-confidence_flcm/summary​
  • ​https://modelscope.cn/models/damo/cv_vgg19_facial-express-recognition_fer/summary​
  • https://modelscope.cn/models/damo/cv_resnet34_face-attribute-recognition_fairface/summary
###

以上是達摩院開源半監督學習框架Dash,刷新多項SOTA的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:51cto.com。如有侵權,請聯絡admin@php.cn刪除