©作者 | Doreen
01 介紹
深度學習之所以能在影像分類、自然語言處理等方面取得巨大成功的原因在於大量的訓練資料得到了高質量的標註。
然而在一些極其複雜的場景(例如:無人駕駛)中會產生海量的資料,對這些資料進行標註將會產生大量的時間成本和人工成本。
近些年,研究人員提出了active learning, crowd labeling, distant supervision,
semi/weak/self-supervision等方法試圖緩解人工標記的工作量。其中,半監督學習 (SSL)是運用最為廣泛的一種。
SSL主要運用了兩種策略即偽標籤(利用模型的預測作為標籤來訓練模型)和一致性正則化(令模型在經過不同變換後仍能得到相同的預測結果)。
該方法雖然在一定程度上解決了手工標註資料的麻煩,但在標記資料的數量極其有限的情況下,SSL在準確性和魯棒性上都表現不佳。
為了解決這個問題,研究人員提出了一種基於多選擇性(MCL, multiple choice learning)的半監督學習方法DP-SSL(Data Programming Semi-supervised Learning) 對未標記的資料自動生成概率標籤,大大提升了影像分類的準確率和魯棒性。
02 相關工作
多選擇性學習(MCL)主要用來提升模型的多樣性,但在實際訓練過程中,MCL容易讓模型處於over-confident狀態,導致最終的預測結果不優。
為了解決這個問題,部分研究人員強迫非特定模型的預測結果滿足均勻分佈,然後對多樣化的輸出求和得到最終的預測。
半監督學習(SSL)已經被廣泛應用於影像分類,目標檢測和語義分割中。在影像分類領域,SSL主要通過偽標籤或一致性正則化來解決標記樣本較少的情況。例如FixMatch將兩者簡單地結合起來,採用無監督學習和聚類方式給未標記的目標打上了偽標籤。
資料程式設計(Data Programming)是一種弱監督正規化,從標籤函式產生的各類帶噪聲標籤中獲取相關知識從而推斷出正確的標籤。利用該方法可以自動生成一些概率標籤。
雖然以上三種方法都能很好地處理未標記的樣本,但在標記樣本較少的情況下,僅靠其中任何一種方法都不能得到準確的預測結果。
03 流程圖及程式碼註釋
為了解決現存方法的缺陷,作者首次提出了將MCL、SSL和DP結合起來的DP-SSL,其結構如圖1所示。
(圖片來自論文:DP-SSL: Towards Robust Semi-supervised Learning with A Few Labeled Samples. https://arxiv.org/abs/2110.13740)
1、建立標籤函式
建立標籤函式的目的是為未標記的影像生成帶有噪聲的標籤。現有的標籤是基於影像不可知(image-agnostic)知識和預訓練模型生成的,這類標籤很難清楚地描述影像分類的規則。
為了改進這類標籤,作者將MCL和SSL結合起來,利用MCL為每個標籤函式生成特定的集合,使其在標記樣本數量較少的情況下也能通過SSL區分出來。
如圖1所示,首先利用一個Wide ResNet模型提取影像特徵,生成多個標籤函式。然後將影像特徵經過特定的變換(如公式(1)所示)送入每個標籤函式中。
其中,k是標籤函式的個數,
f[j]是空間位置下的特徵向量,
:是第k個標籤函式的聚類中心,
:是第k個聚類中心的變數,
為了提高標籤函式的多樣性,作者對傳統的MCL方法進行了改進,在反向傳播的過程中增加了特定標籤函式的比例,其損失函式如公式(2)所示。
公式(2)中
:是集合M的第K個元素,
:表示特定標籤函式的比例。
經過MCL方法後,每個標籤函式對應於一個特定的分類,因此在這些特定範圍內的樣本能被準確地分類。
但在實際情況下,有些樣本不在特定範圍內,會因為模型的over-confidence導致分類錯誤。
針對這個問題,作者允許每個標籤函式放棄樣本中的某些不確定分類,並將其作為abstention label,此時對已標記影像進行分類的目標函式可改寫為公式(3)。
對於未標記的影像,結合FixMatch模型的相關策略,將資料進行弱增廣後用偽標籤進行監督學習,此時的目標函式為公式(4)。
綜合以上三種情況,模型的目標函式可以進一步改寫為公式(5)。
公式(5)中的
均為超引數。
作者將三者初始化為
當
收斂後將其調整為
2、搭建標籤模型
為了在源標籤和帶噪聲的標籤混合後的情況下進行預測,作者假設K個標籤函式都是相互獨立的,
:是K個標籤函式的預測值的向量形式,
標籤模型的聯合分佈可以用公式(6)描述。
式中,Z是聯合分佈的歸一化值,由公式(7)表示;φ是目標和偽標籤的耦合量,可由公式(8)表示。
其中
,
y是目標,
是第個偽標籤,
是第個標籤函式所包含的類別。
標籤模型的目標函式用SSL方式可表示為公式(9)。函式的第一部分是交叉熵損失,第二部分是偽標籤的log邊際似然函式,第三部分是正則化值。
3、預測標籤函式的準確性並建立最終的目標函式
確定了影像屬於哪一類標籤函式後,接著需要驗證目標屬於標籤函式中的哪一個類別。
作者將待分類的標籤設為
(表示目標屬於標籤函式的第i類;
表示目標不屬於標籤函式的第i類)。
同時,作者將屬於第k個標籤函式的帶噪聲標籤
設為,
具體表示如公式(10)所示。
通過計算
即可估計每個標籤函式的正確率。
利用標籤函式生成了偽標籤後可以將這些概率標籤送入末端模型進行訓練,從而得到目標影像的分類。
此處,作者利用噪聲感知的經驗風險預期模型作為目標函式,如公式(11)所示。
其中,
分別是標記影像和未標記影像的概率分佈,
n是標籤模型輸出結果的分佈。
04 實驗
作者採用了CIFAR-10、CIFAR-100和SVHN這三個公開資料集。
前兩者包含了50000個訓練樣本,10000個驗證樣本,所有影像的尺寸均為32*32,分別分成了10類和100類。
SVHN包含了訓練集、測試集和其他集的影像數量分別為73257,26032和531131,其影像質量與CIFAR-10相同。
文中將DP-SSL與現有的半監督學習方法(Π-Model, Pseudo-Labeling,Mean Teacher, MixMatch, UDA, ReMixMatch, FixMatch, USADTM)在這三個資料集上進行了對比,誤差率如表1所示。
表1 不同演算法在CIFAR-10, CIFAR-100,SVHN資料集上的誤差率(其中CIFAR-10和SVHN資料集都採用了Wide ResNet-28-2的網路架構,CIFAR-100採用了WRN-28-8的網路架構。
表格來自論文:DP-SSL: Towards Robust Semi-supervised Learning with A Few Labeled Samples. https://arxiv.org/abs/2110.13740)
從表1 可以看出,DP-SSL在大多數情況下的誤差率較低,尤其在每類僅有4個標記樣本的情況下誤差率最低。
對於CIFAR-100資料集,DP-SSL在2500和10000這兩種標記樣本數量的情況下,雖然誤差率較低,但標準差相對較高,可能是由於標籤函式準確率的估計誤差導致的。
為了驗證DP-SSL的標籤質量,作者採用了Precision, Recall, FI score, Coverage這四個指標,結果如表2所示。
從表2中可以看出,DP-SSL給99%以上未標記的影像都打上了概率標籤,且在三個資料集上的FI score均高於Majority Vote FlyingSquid方法。
表2 利用macro Precision, Recall, FI score, Coverage四個指標驗證不同方法在CIFAR-10, CIFAR-100,SVHN資料集上的標籤質量
(表格來自論文:DP-SSL: Towards Robust Semi-supervised Learning with A Few Labeled Samples. https://arxiv.org/abs/2110.13740)
05 結論
作者將SSL、MCL、DP三種方法結合起來,提出了一種新的半監督學習方法DP-SSL對未標記的樣本打上較準確的標籤用於影像分類。
首先作者採用改進的MCL生成了多個種類的標籤函式,然後設計了一個有效的標籤模型使其能預測帶噪聲的標籤屬於哪一個標籤函式,並通過合適的目標函式評價了標籤函式的準確性。
利用該標籤模型可以解決由標籤函式生成的帶噪聲的標籤之間的相互重疊和衝突問題。最後以標籤模型生成的概率標籤作為監督學習的依據對未標記的影像進行分類。
通過在CIFAR-10、CIFAR-100和SVHN這三個資料集上與現有方法的對比實驗,DP-SSL不僅可以自動對99%以上未標記的影像打上概率標籤,而且在影像分類上的準確性優於現有的方法。
參考文獻
[1] DP-SSL: Towards Robust Semi-supervised Learning with A Few Labeled Samples. https://arxiv.org/abs/2110.13740