【Active Learning - 11】一種噪聲魯棒的半監督主動學習框架

寫在前面:

在本章中,首先,我們簡要地分析了半監督主動學習方法存在的一些不足。然後,針對這些不足,我們提出了一個噪聲魯棒的半監督主動學習框架,並分別對框架的各個核心部分展開詳細地介紹。最後,通過第二章介紹的五組圖像數據集驗證了所提出框架的有效性。

說明:本文只分享理論方法,具體實驗結果暫略。


主動學習系列博文:

【Active Learning - 00】主動學習重要資源總結、分享(提供源碼的論文、一些AL相關的研究者):https://blog.csdn.net/Houchaoqun_XMU/article/details/85245714

【Active Learning - 01】深入學習“主動學習”:如何顯著地減少標註代價:https://blog.csdn.net/Houchaoqun_XMU/article/details/80146710

【Active Learning - 02】Fine-tuning Convolutional Neural Networks for Biomedical Image Analysis: Actively and Incrementally:https://blog.csdn.net/Houchaoqun_XMU/article/details/78874834

【Active Learning - 03】Adaptive Active Learning for Image Classification:https://blog.csdn.net/Houchaoqun_XMU/article/details/89553144

【Active Learning - 04】Generative Adversarial Active Learning:https://blog.csdn.net/Houchaoqun_XMU/article/details/89631986

【Active Learning - 05】Adversarial Sampling for Active Learning:https://blog.csdn.net/Houchaoqun_XMU/article/details/89736607

【Active Learning - 06】面向圖像分類任務的主動學習系統(理論篇):https://blog.csdn.net/Houchaoqun_XMU/article/details/89717028

【Active Learning - 07】面向圖像分類任務的主動學習系統(實踐篇 - 展示):https://blog.csdn.net/Houchaoqun_XMU/article/details/89955561

【Active Learning - 08】主動學習(Active Learning)資料彙總與分享:https://blog.csdn.net/Houchaoqun_XMU/article/details/96210160

【Active Learning - 09】主動學習策略研究及其在圖像分類中的應用:研究背景與研究意義:https://blog.csdn.net/Houchaoqun_XMU/article/details/100177750

【Active Learning - 10】圖像分類技術和主動學習方法概述:https://blog.csdn.net/Houchaoqun_XMU/article/details/101126055

【Active Learning - 11】一種噪聲魯棒的半監督主動學習框架:https://blog.csdn.net/Houchaoqun_XMU/article/details/102417465

【Active Learning - 12】一種基於生成對抗網絡的二階段主動學習方法:https://blog.csdn.net/Houchaoqun_XMU/article/details/103093810

【Active Learning - 13】總結與展望 & 參考文獻的整理與分享(The End...):https://blog.csdn.net/Houchaoqun_XMU/article/details/103094113

 


3.1 導言

近年來,主動學習和半監督學習方法被廣泛應用於緩解樣本不足的問題。半監督學習能夠在零標註成本的情況下訓練模型,但由於樣本僞標籤的質量不高,導致模型的性能提升緩慢。主動學習方法通過獲取高質量的標註樣本,從而高效地提升模型的性能,但需要額外的標註成本。半監督主動學習方法[44,45,46,47,48,49]通過將兩者進行組合訓練,充分發揮了兩者的優勢。但是,目前大多數半監督主動學習方法仍存在一些缺陷: 1)未能夠充分考慮噪聲樣本對分類器的影響,導致模型的性能提升緩慢甚至被噪聲樣本帶偏; 2)在主動學習篩選樣本的環節中,未能夠充分考慮到樣本之間的冗餘信息,造成額外的標註成本。基於此,我們提出了一個噪聲魯棒的半監督主動學習框架(Noisy Robust Memorized Self Learning based BatchMode Active Learning, NRMSL-BMAL)。首先,對於半監督學習環節,我們提出了一個噪聲魯棒的記憶式自學習算法,分別從減少噪聲樣本數量和分類器的抗噪能力等方面提升模型的魯棒性。然後,對於主動學習環節,我們嘗試將卷積自編碼(Convolutional Autoencoder, CAE)聚類算法引入主動學習方法中(下文稱爲CAE-C-BMAL,字母 C 表示聚類),並將其與傳統的樣本篩選策略進行組合,從而減少被選中的樣本之間的冗餘信息。最後,我們通過 NRMSL-BMAL 框架巧妙地將改進後的半監督學習方法融入主動學習方法中,從而更進一步減少了標註成本。

本章的主要貢獻包括: 1)提出了一個噪聲魯棒的記憶性半監督學習(Noisy Robust Memorized Self Learning, NRMSL)算法。首先,我們設計了一個記憶式的自學習算法,充分利用了樣本在每次迭代中的預測信息,並以約束條件的形式減少了噪聲樣本的產生。緊接着,爲了進一步處理剩餘的噪聲樣本,我們引入了噪聲調整算法[88],以一定的概率調整噪聲樣本的類標。 2)我們嘗試將卷積自編碼聚類算法引入批量式主動學習方法中,從而提升了被選中樣本的多樣性和代表性,減少了被篩選的樣本之間的冗餘信息。 3)提出了一個 NRMSL-BMAL 框架,並通過在第二章介紹的五組圖像分類數據集上進行實驗,驗證框架的有效性。
 

3.2 噪聲魯棒的半監督主動學習框架

NRMSL-BMAL 框架的核心組成部分如圖3.1所示,包括: 1)“編號-1”展示了基於 CAE 聚類算法的基本網絡結構,下文將結合 BMAL 展開介紹。 2)“編號-2”展示了使用不確定性策略的主動學習方法,將滿足不確定性最高的樣本作爲候選樣本,如圖中紅色矩形框內的樣本。“編號-3”展示了將聚類算法和不確定性策略進行組合的 BMAL,橢圓形虛線表示聚類算法框出了每個簇包含的樣本集,簇中的黑色實心圖標表示對應的簇中心;淺綠色三角形框出了通過當前分類器得到的預測結果中,確定性比較高的樣本;橢圓形虛線與紅色矩形框、淺綠色三角形的交集分別表示 BMAL 和 NRMSL 算法的候選樣本集(分別記爲 L1 和 L2)。 3)“編號-4”表示多名標註專家同時對 BMAL 算法篩選出來的樣本進行標註。 4)“編號-5”表示NRMSL 算法:首先,根據當前模型對樣本集 L2 進行預測;然後,直接將預測結果作爲樣本的類標;最後,結合噪聲樣本調整方法對 L2 中的樣本進行調整。 5)“編號-6”表示訓練目標模型:使用更新後訓練樣本集(L1 [ L2)對目標模型(本章使用第2.2.2 節介紹的 AlexNet 模型)進行訓練。 NRMSL-BMAL 通過將上述核心部分以協同的方式整合到同一個學習框架中,充分利用了 BMAL 和半監督學習方法的優勢,在保證能夠高效地提升分類器性能的同時,又能夠顯著地減少標註成本。

目前大部分主動學習相關的研究中,都需要先隨機篩選少量的樣本進行標註作爲初始訓練樣本集,並對目標模型進行預訓練。然而,一般情況下,隨機篩選策略相比主動學習策略需要更多的標註成本。算法 3-1展示了 NRMSL-BMAL 的基本流程中,初始化環節使用了遷移學習方法對目標模型進行預訓練,並且初始訓練樣本集爲空集。此外,第二章介紹了半監督學習的效果在一定程度上依賴於初始模型的質量。在初始訓練樣本集爲空集的情況下, NRMSL-BMAL 框架能夠緩解半監督學習將模型帶偏的問題,主要歸功於 BMAL 環節(步驟 13 至 16)提供的高質量標籤以及 NRMSL 算法(步驟 17 至 22)引入的噪聲樣本自動調整方法。在獲取樣本類標的環節中:首先,專家標註的樣本加入集合 L1 中並從未標註樣本池 U 中移除;然後,通過目標模型得到標籤的樣本加入集合 L2 中並從 U 中移除;最後,將上述兩個集合共同組成訓練樣本集 L。由於集合 L1 中的樣本標籤來源於標註專家,因此,噪聲樣本的自動調整方法主要針對噪聲樣本較多的集合 L2;但是在實際應用場景中,專家標註的樣本也可能引入噪聲,因此,需要根據實際情況決定噪聲處理方法的對象。算法 3-1的終止條件是目標模型達到預設的目標準確率,詳見本章的實驗部分。

 

3.2.1 批量式主動學習算法

批量式主動學習(Batch Mode Active Learning, BMAL)旨在緩解樣本篩選過程中的串行問題(每次迭代只篩選出一個樣本)。然而,在實際應用中往往需要並行的標註環境,允許多名專家同時對一批樣本進行標註,並儘可能權衡時間成本和標註成本。 BMAL 算法最核心的挑戰是:緩解選的批量樣本之間存在的大量冗餘信息。這樣使 BMAL 既能夠提供並行的標註環境,又能夠進一步減少額外的標註成本。本節將圍繞兩種不同的 BMAL 算法展開詳細地介紹,包括: 1) CAE-C-BMAL通過聚類算法衡量樣本之間的差異性和代表性,並結合不確定性策略綜合篩選出一批待標註樣本; 2)基於差異性度量方法的 BMAL:將 CNN 提取的特徵作爲樣本差異性的指標,並結合不確定性策略綜合篩選出一批待標註樣本。其中,本章將使用entropy 和 BvSB 策略分別作爲二分類任務和多分類任務的不確定性指標。

(1) CAE-C-BMAL: 聚類算法通過無監督的訓練方式將相似度較高的樣本聚成同一個簇,相似度較低的樣本分佈在不同的簇。在圖像處理領域中,由於樣本的維度較高,因此傳統的聚類算法需要先進行特徵提取再聚類,聚類效果在一定程度上取決於特徵的質量。近幾年,深度聚類算法將深度學習應用到無監督學習領域,在圖像處理領域表現出更加明顯的優勢。 Xie 等[89]在 2016 年提出了一種深度潛入聚類算法(Deep Embedded Clustering, DEC),通過降噪自編碼逐層貪婪訓練,組合成棧式自編碼,並使用相對熵作爲損失函數對模型進行優化。但 DEC 在處理複雜圖像數據的時候,直接使用傳統手工特徵 HOG[57],特徵尚未能較好的表示未標註圖像數據集。 Guo 等[90]在 DEC 的基礎上提出了 IDEC 算法,使用完備自編碼提升嵌入式空間的代表性,但在處理複雜圖像時仍需要大量的參數。 CNN 在提取複雜圖像的特徵時能夠大量減少參數量(詳見第2.2.2 節),卷積自編碼能夠以較少的參數量提取出具有代表性的特徵。鑑於此, Guo 等[43]在 DEC 網絡結構的基礎上加入了卷積自編碼,提出了深度卷積嵌入式聚類算法(Deep Convolutional EmbeddedClustering, DCEC),在處理複雜圖像時取得了更好的聚類效果。如圖3.2展示了DEC 的網絡結構示意圖, DCEC 的網絡結構只需將圖3.2中的全連接層換成卷積層。

本章的 CAE-C-BMAL 算法借鑑了 DCEC 算法,如圖3.1的“編號-1”展示了一個簡易版的 CAE 聚類模型。首先,我們使用 CAE 聚類算法衡量樣本之間的差異性和代表性。緊接着,我們將 CAE 聚類算法與主動學習方法的不確定性策略進一步結合,從而提出 CAE-C-BMAL 算法。通常情況下,主動學習方法在每次迭代篩選樣本時,篩選的樣本個數往往大於聚類算法得到的簇數。換言之,我們需要從每個簇中篩選出多個樣本。 CAE-C-BMAL 採用兩個階段的篩選策略,第一個階段使用不確定性策略篩選出一批規模較大的樣本集;第二個階段使用聚類算法從樣本集中篩選出比較具有代表性的樣本。綜上所述, CAE-C-BMAL 算法在一定程度上緩解了批量樣本之間存在的大量冗餘信息。

(2)結合 CNN 特徵與不確定性策略的批量式主動學習方法: CNNs 以端到端的方式將特徵提取和分類整合在同一個網絡結構中,同時具有較好的特徵提取能力,本章相關實驗部分的目標模型也是基於 CNN 網絡結構的 AlexNet 模型(相關理論詳見第二章,此處不再贅述)。因此,假設當前模型的性能已經具有提取代表性特徵的能力。此時,我們通過將樣本的特徵作爲距離度量方法的輸入,從而衡量樣本之間的差異性。在本章的實驗部分,我們設置一個驗證集準確率閾值來體現當前模型在提取特徵方面的能力。換言之,當模型在驗證集上的預測準確率達到預先設定的閾值(例如, 85%),我們就認爲通過當前模型提取的特徵已經具有一定的代表性。

如圖3.3展示了結合不確定性策略和樣本差異性的 BMAL 示意圖。左圖展示了樣本之間的差異性,未標註樣本的差異性度量對象包括: 1)已標註樣本; 2)當前迭代中已被篩選的未標註樣本。左圖中列舉出部分帶有權值的連接線表示樣本之間的距離,值越大表示樣本的差異性越大。公式化描述如下:每個未標註樣本 u 得到的最終差異值(dissimilarity)取決於與之相關聯的所有樣本組成的集合X, dissimilarity = min ({distance (x; u) jx 2 X})。其中, distance (x; u) 表示距離度量函數,例如歐式距離或者 cosine 距離等。假設只使用差異性度量篩選樣本時,左圖所示的 3 個未標註樣本中,編號-1 所代表的未標註樣本將會被優先選中。因爲編號-1 與已標註樣本之間的最終差異值爲 1.0,而編號-2 和編號-3 的未標註樣本的最終差異值分別爲 0.4 和 0.2,因此優先選中差異值最高的未標註樣本(編號-1)。但實際上編號-1 具有的信息量相對更少,加入訓練集後對提升模型性能的貢獻較小,理想狀態下應該優先選擇編號-2。因此,我們同時使用了不確定性策略和樣本差異性策略,如3.3右圖所示,紅色矩形框內表示通過不確定性策略篩選的樣本集。首先,框外的未標註樣本(編號-1)已經通過不確定性策略排除。緊接着,由於框內的未標註樣本(編號-2)和未標註樣本(編號-3)滿足不確定性指標,因此,再根據樣本差異性策略進一步篩選。最後,綜合篩選出編號-2 所代表的未標註樣本,同時保證了樣本的信息量和差異性。

兩種 BMAL 方法的總結: 基於樣本差異性的 BMAL 與 CAE-C-BMAL 都希望能夠挑選出差異值較高的一批樣本,從而減少所篩選樣本之間的冗餘信息。值得注意的是,這兩種方法在篩選樣本的過程中都需要跟主動學習策略進行結合,才能發揮更好的效果。例如,首先,通過不確定性策略先篩選出一批候選樣本,能夠在一定程度上剔除部分離羣樣本和信息量較低的樣本。然後,通過差異性指標進一步篩選出最具有代表性的樣本。本章的實驗部分將上述兩種不同的 BMAL 方法進行組合應用: 1)目標模型 AlexNet 在提取圖像的特徵時,由於前幾次迭代的目標訓練樣本較少,因此 AlexNet 提取特徵的能力較弱。此時,我們將使用 CAE 聚類算法作爲篩選多樣性樣本的指標; 2)隨着訓練樣本不斷增多, AlexNet 的性能也將隨之提升。當性能滿足閾值條件時,我們同時將上述兩種方法作爲衡量樣本多樣性的指標。這樣做的主要原因在於:通過多個視角進行衡量,從而更進一步保證了樣本的多樣性。
 

3.2.2 噪聲魯棒的記憶式自學習算法

半監督學習方法中存在一個明顯的不足:通過模型給定樣本僞標籤的時候,將很有可能引入大量的噪聲樣本。例如,在圖像分類任務中產生大量具有錯誤類標的樣本。噪聲樣本會讓模型學習到一些錯誤的信息(例如,把貓誤認爲狗),將嚴重地削弱模型的性能。目前,大多數包括深學習的模型在訓練過程中對噪聲樣本非常敏感,少量的噪聲樣本就有可能導致模型學習不到樣本真實的分佈。因此,爲了緩解噪聲樣本對模型的影響,我們分別從減少噪聲樣本的產生、增加模型對噪聲樣本的魯棒性等兩個方面綜合考慮,提出一個噪聲魯棒的記憶式自學習算法(Noisy Robust Memorized Self Learning, NRMSL)。本節將分別圍繞記憶式自學習(Memorized Self Learning, MSL)和噪聲樣本的自動調整方法展開介紹。

(1)設計記憶式的數據結構: MSL 假設在不同迭代狀態下,模型對相同未標註樣本的預測信息具有一定的價值。因此,我們將樣本的記憶預測信息構成篩選樣本的約束條件,從而減少噪聲樣本的產生。如圖3.4所示,我們設計了一種數據結構,用於存儲未標註樣本在每次迭代過程的預測信息。我們將其體現在算法 3-1的字典變量 Dict 中,鍵和值(Key-Value)分別用於存儲每個樣本的路徑和歷史預測信息。 Dict 將不斷更新最近的 m 次預測信息及其相關的約束條件。目前,我們使用的約束條件主要包括: 1)最新的 m 次預測結果對應的類標保持一致; 2)最新的 m次不確定分數(Entropy)控制在一定的範圍內[Minentropy, Maxentropy]。這樣既能夠保證樣本預測結果比較準確,又能夠保證樣本的信息量。此外,記憶式的預測信息將很容易被擴展到更多的限制條件中(例如,方差或者均值等),從而發揮更大的性能。本章的實驗部分將簡要地圍繞 MSL 算法的執行過程展開討論,並通過實驗結果驗證 MSL 算法能夠減少部分噪聲樣本的產生。

(2)噪聲樣本的自動調整方法: Liu 等[88]假設模型通過訓練正確的標註樣本能夠不斷提升性能,從而提出了一種自動校正噪聲標籤的方法(Self-Error-Correcting Convolutional Neural Network, SEC-CNN)。 SEC-CNN 的核心思想是:首先,設計了一種置信度策略,並將其用於決定是否修改樣本類標。緊接着,通過對損失函數進行改造,使得樣本的類標將以一定的概率被修改爲當前模型輸出層中,概率最大的神經元對應的類標。例如,在十分類任務中,模型的輸出層 softmax 將返回分別屬於十個類標的概率值。值得注意的是,概率值最大的神經元所對應的類標(記爲 ~y)有可能跟樣本現有的類標不一樣,此時,我們可以選擇使用樣本原來的類標或者 ~y。我們將對 SEC-CNN 進行簡要地總結,並將其應用到半監督學習方法中。 SEC-CNN 的主要步驟如下: 1)隨機篩選一定數量的樣本對目標模型進行預訓練; 2)使用當前模型對訓練集中的所有樣本進行預測並記錄對應的概率值; 3)根據公式 Ct = C0 ∗ (1 - Tt )λ 計算出本次迭代的置信值 Ct。其中, C0 爲初始置信值、 t爲當前訓練的迭代次數、 T 爲預設的訓練迭代總次數、 λ 用於控制 Ct 對應的多項式指數;值得注意的是,隨着訓練迭代次數 t 的不斷增加,“步驟 3”中的置信值Ct 將不斷減小,意味着樣本的類標將以更大的概率修改爲 ~y; 4)結合伯努利分佈(Bernoulli Distribution)進一步決定每個樣本的類標:通過生成一個取值範圍爲 0到 1 的隨機數 r,如果 r > Ct 則將當前樣本的類標更改爲 ~y,反之不改變樣本的類標; 5)模型對更新後的標註樣本進行訓練,並觀察模型的性能是否有所提升(作者在原文中的做法是:使用了一個自定義的 softmax 損失函數,通過反向傳播過程中的梯度值反映出修改類標後的樣本信息); 6)重複執行上述“步驟 2”至“步驟5”,直到 t >= T 爲止。至此,完成了 SEC-CNN 的核心流程。

SEC-CNN 跟傳統的基於未標註樣本池的主動學習方法以及半監督學習方法有個相似的過程:上述總結的“步驟 2”中, SCE-CNN 使用當前模型對相關的樣本進行預測。其中, SEC-CNN 主要將其作爲修改樣本類別的依據,主動學習和半監督學習主要用於計算相關的策略得分(篩選樣本的依據)。因此,我們幾乎不需要額外的計算代價,就能夠將 SEC-CNN 應用到 NRMSL-BMAL 框架中,從而提升目標模型的抗噪能力。在具體的應用中,我們主要將 SEC-CNN 應用到 NRMSL 方法中,使得 NRMSL 既能夠自動標註樣本的同時,又能夠對噪聲樣本進行自動校正。

3.3 仿真實驗與分析

( 暫略。。。)

實驗參數設置

全樣本訓練實驗

對比實驗結果與分析

NRMSL-BMAL 選中樣本的代表性

單模式主動學習方法與 BMAL 的對比實驗

MSL 的分析與討論
 

3.4 本章小結

本章主要提出了一個噪聲魯棒的半監督主動學習框架(NRMSL-BMAL),旨在儘可能最大化利用有限的資源,在保證不削弱模型性能的情況下減少人爲的標註成本,並將其應用到圖像分類任務中。首先,針對半監督學習提出一個噪聲魯棒的記憶式自學習算法(NRMSL),根據歷史預測信息設置約束條件,減少了噪聲樣本的產生。此外,爲了降低剩餘噪聲樣本的影響,我們引入了 SEC-CNN 方法提升模型的抗噪能力。然後,考慮到 BMAL 可能產生一些具有重複信息的樣本,我們嘗試CAE 聚類算法引入主動學習方法中,從而增加了篩選樣本的多樣性,減少了樣本之間冗餘信息。最後, NRMSL-BMAL 巧妙地組合了 NRMSL 和 CAE-C-BMAL,並分別在五組數據集上進行了實驗。實驗結果表明, NRMSL-BMAL 在圖像分類任務上取得了較好的效果,在實驗的五組數據集中減少了 44.34% 至 95.93% 的標註成本。與此同時,爲了驗證 NRMSL-BMAL 篩選的樣本能夠在一定程度上代表剩餘未被選中的樣本。我們使用達到目標準確率的分類模型對所有未被主動學習方法篩選的樣本進行預測,並分別計算預測準確率。實驗結果表明,五組數據集得到的準確率非常接近 100%,意味着由 NRMSL-BMAL 選中的樣本足以表示未被選中的樣本。此外,我們分別從標註成本和時間成本的角度,對單模式的主動學習方法和 BMAL進行了對比實驗。實驗結果表明,雖然單模式的主動學習方法能夠在一定程度上減少具有冗餘信息樣本的產生,但在不同數據集上的效果不穩定並且非常耗時。因此,在複雜程度不同的實際應用中,時間成本和標註成本的權衡也將是值得考慮的指標。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章