主动学习(Active Learning)
主動學習簡介
在某些情況下,沒有類標簽的數(shù)據(jù)相當豐富而有類標簽的數(shù)據(jù)相當稀少,并且人工對數(shù)據(jù)進行標記的成本又相當高昂。在這種情況下,我們可以讓學習算法主動地提出要對哪些數(shù)據(jù)進行標注,之后我們要將這些數(shù)據(jù)送到專家那里讓他們進行標注,再將這些數(shù)據(jù)加入到訓練樣本集中對算法進行訓練。這一過程叫做主動學習。
主動學習方法一般可以分為兩部分: 學習引擎和選擇引擎。學習引擎維護一個基準分類器,并使用監(jiān)督學習算法對系統(tǒng)提供的已標注樣例進行學習從而使該分類器的性能提高,而選擇引擎負責運行樣例選擇算法選擇一個未標注的樣例并將其交由人類專家進行標注,再將標注后的樣例加入到已標注樣例集中。學習引擎和選擇引擎交替工作,經(jīng)過多次循環(huán),基準分類器的性能逐漸提高,當滿足預設(shè)條件時,過程終止。
樣例選擇算法
根據(jù)獲得未標注樣例的方式,可以將主動學習分為兩種類型:基于流的和基于池的。
基于流(stream-based)的主動學習中,未標記的樣例按先后順序逐個提交給選擇引擎,由選擇引擎決定是否標注當前提交的樣例,如果不標注,則將其丟棄。
基于池(pool-based)的主動學習中則維護一個未標注樣例的集合,由選擇引擎在該集合中選擇當前要標注的樣例。
基于池的樣例選擇算法
1)基于不確定度縮減的方法
這類方法選擇那些當前基準分類器最不能確定其分類的樣例進行標注。這類方法以信息熵作為衡量樣例所含信息量大小的度量,而信息熵最大的樣例正是當前分類器最不能確定其分類的樣例。從幾何角度看,這種方法優(yōu)先選擇靠近分類邊界的樣例。
2)基于版本縮減的方法
這類方法選擇那些訓練后能夠最大程度縮減版本空間的樣例進行標注。在二值分類問題中,這類方法選擇的樣例總是差不多平分版本空間。
代表:QBC算法
QBC算法從版本空間中隨機選擇若干假設(shè)構(gòu)成一個委員會,然后選擇委員會中的假設(shè)預測分歧最大的樣例進行標注。為了優(yōu)化委員會的構(gòu)成,可以采用Bagging,AdaBoost等分類器集成算法從版本空間中產(chǎn)生委員會。
3)基于泛化誤差縮減的方法
這類方法試圖選擇那些能夠使未來泛化誤差最大程度減小的樣例。其一般過程為:首先選擇一個損失函數(shù)用于估計未來錯誤率,然后將未標注樣例集中的每一個樣例都分別估計其能給基準分類器帶來的誤差縮減,選擇估計值最大的那個樣例進行標注。
這類方法直接針對分類器性能的最終評價指標,但是計算量較大,同時損失函數(shù)的精度對性能影響較大。
4)其它方法
COMB算法:組合三種不同的學習器,迅速切換到當前性能最好的學習器從而使選擇樣例盡可能高效。
多視圖主動學習:用于學習問題為多視圖學習的情況,選擇那些使不同視圖的預測分類不一致的樣例進行學習。這種方法對于處理高維的主動學習問題非常有效。
預聚類主動學習:預先運行聚類算法預處理,選擇樣例時優(yōu)先選擇最靠近分類邊界的樣例和最能代表聚類的樣例(即聚類中心)。
基于流的樣例選擇算法
基于池的算法大多可以通過調(diào)整以適應基于流的情況。但由于基于流的算法不能對未標注樣例逐一比較,需要對樣例的相應評價指標設(shè)定閾值,當提交給選擇引擎的樣例評價指標超過閾值,則進行標注,但這種方法需要針對不同的任務進行調(diào)整,所以難以作為一種成熟的方法投入使用。
QBC曾用于解決基于流的主動學習問題。樣例以流的形式連續(xù)提交給選擇引擎,選擇引擎選擇那些委員會(此處委員會只由兩個成員分類器組成)中的成員分類器預測不一致的樣例進行標注。
應用
文檔分類和信息提取
以貝葉斯方法位基準分類器,使用基于不確定度縮減的樣例選擇算法進行文本分類。
將EM算法同基于QBC方法的主動學習集合。EM算法能夠有效的利用未標注樣例中的信息提高基準分類器的分類正確率。而QBC方法能夠迅速縮減版本空間。
圖像檢索
利用SVM作為基準分類器的主動學習算法來處理圖像檢索。該算法采用最近邊界方法作為樣例選擇算法,同時將圖像的顏色、紋理等提取出來作為部分特征進行學習。
入侵檢測
由于入侵檢測系統(tǒng)較多地依賴專家知識和有效的數(shù)據(jù)集,所以可以采用主動學習算法降低這種依賴性。
總結(jié)
以上是生活随笔為你收集整理的主动学习(Active Learning)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Kata 架构
- 下一篇: 连襟是什么意思(连襟是什么亲属关系)