在某些狀況下,沒有類標籤的數據至關豐富而有類標籤的數據至關稀少,而且人工對數據進行標記的成本又至關高昂。在這種狀況下,咱們可讓學習算法主動地提出要對哪些數據進行標註,以後咱們要將這些數據送到專家那裏讓他們進行標註,再將這些數據加入到訓練樣本集中對算法進行訓練。這一過程叫作主動學習。算法
主動學習方法通常能夠分爲兩部分: 學習引擎和選擇引擎。學習引擎維護一個基準分類器,並使用監督學習算法對系統提供的已標註樣例進行學習從而使該分類器的性能提升,而選擇引擎負責運行樣例選擇算法選擇一個未標註的樣例並將其交由人類專家進行標註,再將標註後的樣例加入到已標註樣例集中。學習引擎和選擇引擎交替工做,通過屢次循環,基準分類器的性能逐漸提升,當知足預設條件時,過程終止。函數
根據得到未標註樣例的方式,能夠將主動學習分爲兩種類型:基於流的和基於池的。性能
基於流(stream-based)的主動學習中,未標記的樣例按前後順序逐個提交給選擇引擎,由選擇引擎決定是否標註當前提交的樣例,若是不標註,則將其丟棄。學習
基於池(pool-based)的主動學習中則維護一個未標註樣例的集合,由選擇引擎在該集合中選擇當前要標註的樣例。優化
1)基於不肯定度縮減的方法spa
這類方法選擇那些當前基準分類器最不能肯定其分類的樣例進行標註。這類方法以信息熵做爲衡量樣例所含信息量大小的度量,而信息熵最大的樣例正是當前分類器最不能肯定其分類的樣例。從幾何角度看,這種方法優先選擇靠近分類邊界的樣例。文檔
2)基於版本縮減的方法it
這類方法選擇那些訓練後可以最大程度縮減版本空間的樣例進行標註。在二值分類問題中,這類方法選擇的樣例老是差很少平分版本空間。class
表明:QBC算法stream
QBC算法從版本空間中隨機選擇若干假設構成一個委員會,而後選擇委員會中的假設預測分歧最大的樣例進行標註。爲了優化委員會的構成,能夠採用Bagging,AdaBoost等分類器集成算法從版本空間中產生委員會。
3)基於泛化偏差縮減的方法
這類方法試圖選擇那些可以使將來泛化偏差最大程度減少的樣例。其通常過程爲:首先選擇一個損失函數用於估計將來錯誤率,而後將未標註樣例集中的每個樣例都分別估計其能給基準分類器帶來的偏差縮減,選擇估計值最大的那個樣例進行標註。
這類方法直接針對分類器性能的最終評價指標,可是計算量較大,同時損失函數的精度對性能影響較大。
4)其它方法
COMB算法:組合三種不一樣的學習器,迅速切換到當前性能最好的學習器從而使選擇樣例儘量高效。
多視圖主動學習:用於學習問題爲多視圖學習的狀況,選擇那些使不一樣視圖的預測分類不一致的樣例進行學習。這種方法對於處理高維的主動學習問題很是有效。
預聚類主動學習:預先運行聚類算法預處理,選擇樣例時優先選擇最靠近分類邊界的樣例和最能表明聚類的樣例(即聚類中心)。
基於池的算法大多能夠經過調整以適應基於流的狀況。但因爲基於流的算法不能對未標註樣例逐一比較,須要對樣例的相應評價指標設定閾值,當提交給選擇引擎的樣例評價指標超過閾值,則進行標註,但這種方法須要針對不一樣的任務進行調整,因此難以做爲一種成熟的方法投入使用。
QBC曾用於解決基於流的主動學習問題。樣例以流的形式連續提交給選擇引擎,選擇引擎選擇那些委員會(此處委員會只由兩個成員分類器組成)中的成員分類器預測不一致的樣例進行標註。
以貝葉斯方法位基準分類器,使用基於不肯定度縮減的樣例選擇算法進行文本分類。
將EM算法同基於QBC方法的主動學習集合。EM算法可以有效的利用未標註樣例中的信息提升基準分類器的分類正確率。而QBC方法可以迅速縮減版本空間。
利用SVM做爲基準分類器的主動學習算法來處理圖像檢索。該算法採用最近邊界方法做爲樣例選擇算法,同時將圖像的顏色、紋理等提取出來做爲部分特徵進行學習。
因爲入侵檢測系統較多地依賴專家知識和有效的數據集,因此能夠採用主動學習算法下降這種依賴性。