1.14 半監督學習?
Semi-supervised learning是指訓練數據中一些樣本數據沒有標簽的情況。sklearn.semi_supervised
中的半監督估計器,能夠利用這些附加的未標記數據來更好地捕獲底層數據分布的形狀,并將其更好地類推廣到新的樣本。當訓練數據中有非常少量的有標簽的點和大量的無標簽的點時,這些算法可以表現良好。
y 中含有未標記的數據
在使用
fit
方法訓練模型時,重要的是將標識符與標記數據一起分配給未標記點。此實現使用的標識符是整數值?1。
1.14.1 標簽傳播
標簽傳播表示半監督圖推理算法的幾個變體。
該模型中有以下幾個特性:
可用于分類和回歸任務 使用內核方法將數據投影到備用維度空間
scikit-learn
提供了兩種標簽傳播模型: LabelPropagation
和 LabelSpreading
。 兩種方法都是在輸入數據集中的所有項上構造一個相似圖。
標簽傳播的說明: 未標記觀測的結構與類結構是一致的,從而可以將類標簽傳播到訓練集的未標記觀測。
LabelPropagation
和 LabelSpreading
在對圖形的相似性矩陣以及對標簽分布的夾持效應(clamping effect)方面的修改不太一樣。 夾持效應允許算法在一定程度上改變真實標簽化數據的權重。 LabelPropagation
算法執行輸入標簽的全加持(hard clamping),這意味著 。夾持因子可以不一定很嚴格。例如 意味著我們將始終保留原始標簽分布的 80%,但該算法可以將其分布的置信度改變在 20% 以內。
LabelPropagation
使用未經修改的數據構造的原始相似度矩陣。相反 LabelSpreading
最小化了具有正則化特性的損失函數,因此它通常對噪聲更有魯棒性。該算法在原始圖形的修改版本上進行迭代,并通過計算 normalized graph Laplacian matrix(歸一化圖拉普拉斯矩陣)來對邊緣的權重進行歸一化。這一過程也用于光譜聚類。
標簽傳播模型有兩個內置的核方法。核的選擇對算法的可擴展性和性能都有影響。可獲得以下:
, 通過關鍵字gamma指定 , 通過關鍵字 n_neighbors 指定
RBF核將生成一個完全連通的圖,在內存中用稠密矩陣表示。該矩陣可能非常大,再加上對算法的每一次迭代執行全矩陣乘法計算的成本,可能導致運行時間過長。另一方面,KNN核將產生一個對內存更友好的稀疏矩陣,可以大大減少運行時間。
示例 |
---|
Iris數據集上的標簽傳播與SVM的決策邊界 使用標簽傳播學習復雜的結構 手寫數據集上的標簽傳播:性能展示 手寫數字數據集上的標簽傳播:主動學習 |
參考
[1] Yoshua Bengio, Olivier Delalleau, Nicolas Le Roux. In Semi-Supervised Learning (2006), pp. 193-216
[2] Olivier Delalleau, Yoshua Bengio, Nicolas Le Roux. Efficient Non-Parametric Function Induction in Semi-Supervised Learning. AISTAT 2005 https://research.microsoft.com/en-us/people/nicolasl/efficient_ssl.pdf