半監督學習分類——???


半監督學習

主動學習

用已標記樣本訓練出一個模型,用模型對未標記樣本進行預測,選出對改善性能有幫助(比如選出那些不太確定的未標記樣本)的樣本,向專家征求最終標記的意見,並將專家意見作為標記,將該樣本加入訓練集得出新模型,不斷重復這個工作。

關鍵:外界因素,即專家經驗;

半監督學習

讓學習器不依賴外界交互、自動地利用未標記樣本提升學習性能,就是半監督學習;當然也可以用這種方法給金融樣本打標簽,進行拒絕推斷。

純半監督學習,其實就是充分利用已標記樣本與未標記樣本,得到一個模型,具有相當好的預測性;而直推學習,其實就是利用已知與未知標記樣本建模,最終得到未標記樣本的標簽的預測。前者是得到了高泛化能力的模型,后者是得到未知標記樣本的最優預測;其實可以看做是一回事。

通常需要做出一些假設,即未標記樣本的數據分布信息與已標記樣本直接相聯系。

生成式方法(generative methods)

假設所有的數據,不論標記與否都由同一個潛在的模型生成的;而未標記數據的標記看作是潛在模型的缺失參數。使用EM算法(專門求解含有隱變量的參數解問題)進行求解,相當於潛在模型的缺失參數是隱變量,模型的假設不同,方法不同。

這種方法在有標記數據極少的情形下往往比其他方法性能更好。

關鍵:模型假設必須准確,否則會降低泛化性能;這需要充分可靠的領域知識。

模型假設:比如高斯混合模型、混合專家模型、朴素貝葉斯模型。

學習到:最終得到樣本的概率(當然也看假設的模型是什么)。

半監督SVM

半監督支持向量機(semi-supervised support vector machine,簡稱為S3VM)。

在不考慮標記樣本時,SVM試圖找到最大間隔划分的超平面,而考慮未標記樣本后,S3VM試圖找到的,是能夠將兩類有標記樣本分開,同時要穿過數據低密度區域的超平面。(之所以要穿過低密度區,是因為存在未標記樣本,有一些聚類的思想)

 

 

TSVM算法,針對二分類問題:

步驟:

首先利用有標記樣本學得一個SVM,利用該分類器對未標記數據進行標記指派,並將結果當做真實標記重新訓練一個SVM,可以得出新的超平面和松弛向量,因為此時的未標記樣本不准確,所有Cu<Cl,使得已標記樣本所占比重更大;

之后找出兩個標記指派為異類的且很可能發生錯誤的未標記樣本,交換它們的標記,繼續訓練SVM得到超平面和松弛向量;

再繼續重復上個過程直到標記調整完成;逐漸增大Cu的值,直到Cu=Cl。

此時可以得到未標記樣本的標記,

Dl為已知標記的樣本,Du是未知標記的樣本。

 

 

存在的問題:計算開銷很大;若存在多個低密度划分,則效果很差。

針對高效優化求解問題,有基於圖核(graph kernel)函數梯度下降的LDS、基於標記均值估計的meanS3VM等。

或許可以這樣理解,其實就是使用SVM算法進行預測,只是加入的調整SVM模型的步驟(反復試錯),不斷迭代調整,找到使得所有樣本(包括已標記和未標記)的良好的分割面。

圖半監督學習

即標簽傳播算法,基於高斯核來定義兩樣本的相似度/邊的權重(每個樣本就是一個節點,相連的邊的強度就是權重大小)。

 

 

每個節點的標簽按相似度傳播給相鄰節點,在節點傳播的每一步,每個節點都根據相鄰節點的標簽來更新自己的標簽,與該節點相似度越大,則相鄰節點對其標注的影響權值越大,節點的標簽更趨於一致。傳播過程中,已標記數據的標簽不變,最終迭代結束時,相似節點的概率分布也趨於相似。

 

關鍵:圖的質量很重要,常用高斯距離圖、k近鄰圖、ε近鄰圖。

存在的問題:1.存儲開銷大,難以處理大規模數據;2.接收到新樣本時,需要對圖進行重構並重新進行標記傳播;當然,可以引入預測機制,將更新的未標記樣本作為訓練集的一部分,單獨訓練一個模型對新樣本進行預測。

 

或許可以這樣理解:就是近鄰與基於距離的聚類思想,相似的樣本具有相似的標記。

基於分歧的方法

協同訓練(co-training),協同訓練能夠很好的利用不同特征之間,不同模型之間,不同數據采樣,甚至不同參數產生的不同學習器,利用它們之間的相容性與互補性,提高弱分類器的泛化能力。

原本是針對多視圖數據設計的,多視圖就是樣本對象有多個屬性集,每個屬性集就是一個視圖。比如電影中的畫面類和聲音類就是兩個視圖。

相容性:即視圖最終的輸出空間(輸出結果范圍)是一致的:{好,壞},{+1,-1}。

互補性:各自提供了不同的視角看待問題,相互補充,集成的思想。

關鍵:使得分類器之間存在顯著的差異。

可以通過不同的特征、不同的算法、不同的數據采樣、不同參數設置來得到這些差異。

 

具體過程:

前提:數據擁有兩個充分且條件獨立的視圖。充分是每個視圖都包含足以產生最優學習器的信息,條件獨立是指非定類別標記條件下兩個視圖獨立。(即將數據分成兩部分,每個部分都能得到較好的分類器)

首先,使用每個視圖基於有標記樣本分別訓練出一個分類器;

之后,利用這兩個分類器,均對所有未標記樣本進行預測,並挑選出各自分類器中置信度最高的那些交給另一個分類器重新訓練模型;

重復這樣的操作,直到終止。

 

選擇合適的基學習器很重要!不同特征、不同算法、不同數據采用、不同參數設置等僅是產生差異的方法。

 

或許可以這樣理解:就是利用兩個分類器(有顯著不同的兩個)進行預測,並結合了迭代調整的過程(分別取出單個分類器預測較准確的值交給另一個作為已標記樣本,訓練模型),還擁有一個特點是集成的思想(不同分類器從不同的角度學習樣本,綜合起來效果更好),最終得到兩個分類器相互調整建模預測的結果。

 

半監督聚類

先將已知類別聚類得到各類別的聚類中心,再根據已知類別樣本聚類結果,擴展到未標記樣本繼續聚類,已知類別的標記始終不變。

本質:k均值聚類的距離相似性來判斷標簽。

 

流形假設

假設數據分布在一個流形結構上,鄰近的樣本擁有相似的輸出值。鄰近程度用相似程度來刻畫,可以說是聚類的假設的推廣。本質與聚類假設是相同的:相似的樣本具有相似的輸出!

上述這些方法的思想或許可以分為兩種:

近鄰與聚類的思想,直接或間接的衡量樣本的空間分布信息,根據空間分布情況來進行預測;分類器集成預測的思想,利用的是不同分類器從不同角度學習數據,並進行預測。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM