Semi-Supervised Learning
半監督學習(一)
入門級介紹
傳統的機器學習任務分為無監督學習(數據無標簽,如,聚類,異常檢測等)和監督學習(數據有標簽,如,分類,回歸等)。半監督學習針對的是只有部分數據有標簽的學習任務,而其中有標簽數據往往遠遠小於無標簽數據。它是機器學習領域研究的熱點,因為現實場景中標簽獲取往往是十分昂貴的,很多研究者發現結合少量有標簽數據和大量無標簽數據可以有效提升學習任務的准確率。小編最近也在學習和研究半監督學習,特開此專欄分享自己的學習心得,知識點整理,paper sharing。
統計機器學習
相信很多同學對統計機器學習已經有或深或淺的了解了,作為一個入門教程,為了后面學習的順暢,還是要對這些基礎知識進行回憶,整理。
1、數據集
一個樣本x代表的是一個對象,我們通常用一個特征向量
,d代表樣本x的維度(特征個數),機器學習的任務往往就是學習輸入的d維訓練樣本集中潛在的模式,而根據訓練樣本是否有標簽,學習任務又分為有監督/無監督學習。
2、無監督學習
無監督學習的特點是訓練樣本無標簽,它通常可以分為以下幾個任務:
- 聚類,即將樣本分到不同的組,使一個組中的樣本盡量相似,不同組間的樣本盡量不相似(之后會出專門寫聚類的專欄,敬請期待);
- 異常檢測,即檢測出少量偏離主體的樣本(離群點);
- 維度歸約:在高維樣本中很多維度對學習的作用不大而且會減弱關鍵維度的作用,而且,在高維空間中,相似和不相似的樣本之間的距離不好區分,所以降維十分關鍵;
3、監督學習
監督學習針對的是帶標簽的訓練集,根據標簽的離散/連續,監督學習又分為分類/回歸。我們定義樣本集合為X,與X中樣本一一對應的標簽組成的集合記為Y,令
表示樣本和標簽服從的聯合分布(未知),監督學習的任務就是訓練一個方程
,使得f(x)可以預測出x的真實標簽。
如何定義f的好壞呢?損失函數是將隨機事件或其有關隨機變量的取值映射為非負實數以表示該隨機事件的“風險”或“損失”的函數。在應用中,損失函數通常作為學習准則與優化問題相聯系,即通過最小化損失函數求解和評估模型。
4、誤差
在學習的過程中,我們通常通過訓練樣本的誤差來衡量模型的性能:
-
訓練誤差:
給定一個訓練樣本集
,我們定義訓練樣本的誤差為:
,c()表示損失函數你可以根據不同的任務定義不同的損失函數,比如說,對於分類問題,
通常為0-1損失函數(
時預測正確損失為0,否則為1)。當然,只專注於減小訓練誤差會造成模型過擬合,但在未來的測試數據上可能表現不好。機器學習中一有個方向叫做計算學習理論研究就是研究過擬合問題的,它在訓練樣本和真實誤差之間建立了嚴格的聯系,如Vapnik-Chervonenkis維數或Rademacher復雜性,根據這種理論,一種合理的策略是最小化訓練誤差的同時對f進行正則化,使模型不要太復雜。
-
測試誤差:
為了估計模型的未來表現,我們可以划分出部分有標簽數據作測試數據,這些數據不作為訓練數據使用,因此提供了模型的表現的無偏估計。測試誤差就是模型在測試集上的表現。
半監督學習概念
上文簡單介紹了監督學習和無監督學習,那么半監督學習介於兩者之間,事實上,半監督學習的策略往往都是利用額外信息,在無監督學習或者監督學習的基礎上擴展的一種學習模式,這么說可能有點抽象,我們從常見的幾種常見的半監督學習任務開始介紹:
1、半監督分類:
在分類任務的訓練集中同時包含有標簽數據和無標簽數據,通常無標簽數據遠遠多於有標簽數據,半監督分類的任務就是訓練一個分類器f,這個分類器的表現比只用有標簽數據訓練得到的分類器好;
2、半監督聚類(有約束聚類):
是無監督聚類的一種擴展,與傳統的無標簽訓練集不同的是,約束聚類的數據集還包含一些關於聚類的“監督信息”。最常見的約束如must-link約束和cannot-link約束,分別表示兩個樣本點一定在一個類中或一定在不同的類中,約束聚類的目標就是提升原本無監督聚類的表現;
半監督學習的任務還有很多,比如,半監督回歸,維度規約等,在之后的專欄中會又詳細的介紹和相關論文導讀。
半監督學習的例子
下面我們用一個簡單例子帶你走進半監督學習:

在上圖中,訓練樣本是一維的,有兩種分類(positive & negative),可以考慮以下兩種情景:
-
在監督學習中,只給出兩個有標簽樣本(-1,-)和(1,+),從圖中可以看出最佳決策邊界是x=0,那么所有的樣本x<0,被分類為負,大於0分類為正;
-
假如我們給出大量的無標簽樣本(綠色點),這時問題轉化為半監督學習,我們可以觀察到綠色樣本可以分成兩組,假設每個類的實例都圍繞在類中心,我們可以從無標簽樣本中獲得更多信息。比如上圖,紅色點和藍色點並不是每個類的中心點,所以我們半監督估計的決策邊界是x=0.4。如果我們的假設成立,那么半監督的決策邊界比監督學習和無監督學習給出的決策邊界更加可靠。
-
總的來說,無標簽數據的分布幫助我們定義了同類樣本的邊界,少量有標簽樣本又為類提供了標簽信息。,在接下來的文章中,我們會介紹一些常用的半監督學習假設。
總結:
今天的內容只是簡單地引入半監督學習的概念,也是為我們的專欄開了個頭,接下來的文章會是滿滿的干貨,敬請期待!希望大家多多支持我的公眾號,掃碼關注,我們一起學習,一起進步~

