半監督學習也能自動化?南大和第四正規化提出Auto-SSL
模型選擇和超引數優化是機器學習技術應用過程中的關鍵步驟。給定⼀個機器學習任務,人工參與模型選擇以及超引數優化通常是⼀個耗時、繁瑣的過程。為了解決這樣的問題,⼀些關於自動化機器學習的研究工作被提出,比如 Auto-WEKA 、Auto-Sklearn 和 Auto-Keras 等。
另外近幾年 NIPS、PAKDD 等會議已經開始舉辦 AutoML 比賽,這一新興領域已經獲得學術界和工業界的廣泛關注。
以往 AutoML 的工作通常側重於監督學習問題,需要解決包括特徵工程、模型選擇、和超引數優化等問題。已有的 AutoML 系統已經可以得到不錯的模型預測效能。例如,Auto-WEKA 結合了機器學習框架 WEKA,並利用貝葉斯優化方法對新資料集進行模型以及超引數的選擇。
Auto-Sklearn 改進了 Auto-WEKA,它使用元學習來初始化學習演算法以及超引數,並集成了評估過程中產生的模型,從而得到魯棒的模型選擇結果。另外,谷歌也開發了一套針對影象分類的自動機器學習產品 Cloud AutoML。以上研究表明 AutoML 可以自動地選擇一個適合當前任務的監督學習模型以及超引數。
然而在⼀些實際的應⽤場景中,獲取有標記資料會⾮常困難。例如,在網頁分類、醫學影象分類等領域中通常只能獲得大量的未標記資料以及少量標記資料。因此能利用未標註資訊的半監督學習(SSL)在現實應用中普遍存在,但自動化的 SSL 研究仍然有限。在本文工作中,我們主要研究了現有 AutoML 技術無法直接解決的 SSL 問題。
-
首先,已有的元學習主要從大量有標記資料提取元特徵,從而初始化學習演算法以及超引數。對於含有大量未標記資料以及少量有標記資料的資料集,提取能刻畫資料分佈的元特徵對於半監督學習演算法的選擇至關重要。
-
其次,SSL 在實施過程中可能會出現效能的嚴重下降,也就是說 SSL 利用了未標記資料以後的模型預測效能還不如僅僅利用有標記資料的監督學習演算法。最近一些關於安全半監督的方法已經提出,然而這些研究方法通常側重學習過程的某一個方面,並沒有關注一個自動化的 SSL 解決方案。
為了解決以上問題,本文針對 SSL 提出了自動半監督學習方法(AUTO-SSL)。首先,受到 Auto-Sklearn 的啟發,本文使用元學習以快速初始化 SSL 演算法。考慮到未標記的資料分佈對於 SSL 演算法的選擇至關重要,本文使用多種無監督聚類演算法提取簇內和簇間的統計資訊以增強元學習的表現。
其次,本文使用一種大間隔方法,用於微調超引數以緩解 SSL 可能出現的效能降低問題。這種方法的基本思想是,如果某個超引數較好,其在未標記資料上的模型預測結果分類間隔較大。在不同領域的 40 個數據集上,實驗結果表明本文提出的方法相比以往的系統有較大的效能提升,包括 AutoML 系統 AUTO-SKLEARN 以及經典 SSL 方法。此外不同於傳統的 SSL 方法會出現效能下降的情況,本文提出的方法幾乎不會出現這樣的情況。
論文:Towards AutomatedSemi-Supervised Learning
論文地址:http://lamda.nju.edu.cn/liyf/paper/aaai19-autossl.pdf
自動半監督學習定義
符號表示:給定包含大量未標記資料和少量有標記資料的半監督資料集 ,其中
Line"/> 表示有標記資料,
表示未標記資料,
表示樣本
的標記。自動半監督學習的目標如下:
定義:給定半監督學習演算法 以及每個學習演算法
對應的超引數集合
,基準監督學習演算法
以及對應的超引數集合。假定模型
是自動半監督學習系統(AUTO-SSL)在資料集
上得到的訓練模型,
是基準監督學習演算法在有標記資料
上得到的訓練模型。那麼 AUTO-SSL 的目標可以表示為:
通常要顯著好於
,最壞情況下,也不會比
差。其中,
表示模型
在未標記資料上的預測效能。
傳統元學習和增強元特徵
元學習[Brazdil et al.2008] 旨在利用以往的經驗知識來指導新任務的學習,具有學會學習的能力。具體來說,在 AutoML 中,我們收集大量經驗資料集的效能資料和其對應的元特徵,其中元特徵是用來刻畫資料集的特徵,有助於有效地初始化目標任務上的學習演算法 [Feurer et al.2015]。元特徵是元學習的核心,傳統的元特徵主要包括描述資料集基本的結構資訊的元特徵 (Simple metafeatures)、表示資料集主要成分統計量的 PCA 元特徵 (PCA metafeatures )、統計資料的分佈情況的統計元特徵 (Statistical metafeatures )。詳細的傳統元特徵如下表:
對於 SSL,資料分佈資訊對於 SSL 演算法選擇至關重要,例如,基於圖的半監督學習演算法要求資料具有平滑性假設,即相似的樣本具有相同的標記;而半監督支援向量機要求資料具有低密度假設,即半監督支援向量機試圖找到能將兩類資料分開,且穿過資料低密度區域的劃分超平面。本文通過無監督學習演算法提取資料的分佈資訊,詳細的聚類演算法以及提取的特徵如下表所示:
大間隔方法用於超引數優化
元學習能夠有效地給目標任務初始化 SSL 演算法,但無法對超引數進行優化。然而,實際的應用場景中,超引數優化雖然可以得到不錯的效能調整,但效率低下,通常需要消耗大量的時間。傳統的 AutoML 系統通過貝葉斯優化調整超引數,需要大量的標記資料切分驗證集並多次進行模型評估,對於 SSL,標記資料通常不足以用來切分驗證集進行模型評估。本文提出了一種大間隔的方法來優化超引數,基本思想是,如果某個超引數較好,其在未標記資料上的模型預測結果分類間隔較大,反之亦然。下圖給出了大間隔方法用於優化超引數的示例。
實驗結果
為了充分考察 AUTO-SSL 在實際場景中的效果,本文在 40 個數據集上同 AUTO-SKLEARN、傳統 SSL 方法以及監督學習方法進行了對比實驗。其中資料集涵蓋了商業、生命科學、物理、社交、金融、計算機等各種不同的應用領域。因為有標記資料數量是影響 SSL 效能的重要因素之一,我們展示了 AUTO-SSL 在多種場景下可以獲得同傳統 SSL 方法相比更加魯棒的結果。
5.1AUTO-SSL 與 AUTO-SKLEARN 的比較結果
圖 3 給出了在 20 個有標記資料情況下,AUTO-SSL 與 AUTO-SKLEARN 模型預測效能的比較結果,其中綠色部分表示效能的提升量,紅色部分表示效能的下降量。可以看出,AUTO-SSL 利用了未標記資料輔助提升模型預測效能,相比僅僅利用標記資料的 AUTO-SKLEARN 在多數情況下會有比較大的效能提升。
5.2AUTO-SSL 與傳統 SSL 方法的比較結果
表 2-3 給出了 40 資料集上 AUTO-SSL 與傳統 SSL 方法的詳細比較結果,ASSL 表示本文提出的方法。圖 4 給出了 AUTO-SSL 和傳統 SSL 方法相比基準監督學習方法 SVM 的比較結果,從圖中可以看出,傳統 SSL 方法存在一些情況下,利用未標記資料以後的模型預測效能不如僅僅利用有標記資料的監督學習方法,而 AUTO-SSL 能夠避免這種情況的出現。
5.3 有標記資料數量對結果的影響
圖 5 給出了不同有標記資料情況下,AUTO-SSL 與對比方法的平均預測效能。表 4 給出了不同有標記資料情況下,AUTO-SSL 與傳統 SSL 方法相比於基準監督學習方法「勝/平/負」的統計情況;其中,「勝/平/負」表示該方法得到的模型預測效能相比基準監督學習方法 SVM 有」顯著提升/無顯著性/顯著下降」。從實驗結果可以看出,AUTO-SSL 相比各個比較方法更能夠得到魯棒的模型預測結果。