主動學習(Active learning)演算法的原理是什麼 - GetIt01

文章推薦指數: 80 %
投票人數:10人

搞風控的同學們可能都遇到過壞樣本太少的問題,最近同事提示可以研究一下主動學習(active learning),據說這個演算法可以減少人工打標的數量、成本?回答分... 標籤:主動學習反欺詐數據挖掘機器學習風險控制 主動學習(Activelearning)演算法的原理是什麼,有哪些比較具體的應用? 06-30 搞風控的同學們可能都遇到過壞樣本太少的問題,最近同事提示可以研究一下主動學習(activelearning),據說這個演算法可以減少人工打標的數量、成本? 回答分4部分吧: 一、啥時候用?二、為啥管用?三、舉個栗子?四、有多好用? 下面開始回答*****************************************************************************************一、主動學習演算法(ActiveLearning)適用的情景機器學習建模(比如:風險控制)工作中常常陷入的窘境:樣本極不平衡(風險數據量太少)!在訓練模型的時候,他們常常會因真實確定的風險樣本數量之稀少而感到無力。

為了得到更多的樣本,通常可以進一步地人工查看、打標數據。

然而如果我們把所有現有數據都人工的審核、打標一遍的話,成本將會非常高。

但是如果我們應用主動學習演算法的話,我們就可以以相對小的人工成本完成這個任務。

下圖(圖1[1])中,粉線代表用隨機抽樣,紅線代表用主動學習抽樣,可以看到如果成本限制我們只能給20個樣本打標的話,採用主動學習演算法得到的模型準確率已經可以達到接近80%,而隨機抽樣(或者說「被動學習」只能達到50%的準確率。

)圖1一句話總結起來就是:欲對大量無標註數據進行分類,但沒有任何可用的已標註數據來訓練分類器,且因成本所限,難以大量標註數據集以訓練分類器。

二、演算法原理與優勢 核心思想:「主動學習」會抽取那些比較「難」分類的樣本,即每次都挑選當前分類器分類效果不理想的那些樣本進行訓練。

而不是從樣本總體中隨機地抽取樣本進行學習。

下圖(圖2[1])中,(a)代表我們數據的真實分布情況,也就是顏色是我們需要學習的Y;(b)代表用隨機抽樣的方法得到樣本,然後人工打標,最後用打標後的數據訓練出的分割線,也就是得到的模型;(c)代表用主動學習演算法得到的樣本,然後打標,最後用打標後的數據訓練出的分割線。

直觀吧,主動學習很好的去關注了兩個類之間的邊界,也就是比較難學的部分。

圖2 演算法描述:1.從無標註的數據集中隨機抽樣,並人工分類這些樣本;2.在標註過的數據集上訓練分類器,得到預測值;3.挑出來那些「信息量大(預測值接近0.5)的」樣本,人工對這批樣本進行分類;4.重複步驟2和步驟3,直到(1)沒有更多資源對數據集進行標註;(2)當前分類器對選出來的數據分類正確;(3)選出來的數據人工也無法進行分類。

三、演算法應用舉例個性化垃圾郵件分類器訓練:每個人對於垃圾郵件的定義是不一樣的,有的人覺得只有詐騙郵件是垃圾郵件,有的人認為推銷郵件也是垃圾郵件。

為了尋找個人對垃圾與非垃圾郵件的分類界限,演算法需要去詢問用戶的選擇來得到這個邊界。

效率最高的方式應當是沿著你的分類界限提問,而不是問那些答案極其明顯的問題。

開始訓練時,演算法將用一個簡單的分類器初步地對用戶歷史上所有的郵件進行分類,找出此時分類器不能確定用戶態度的一部分郵件讓用戶進行判斷,之後分類器再從新在用戶本人分類好的樣本中進行訓練,之後再對用戶未手工分類過的郵件進行分類,不確定的那部分繼續詢問用戶的判斷,直到用戶不再想繼續判斷了,或用戶的分類和分類器分類吻合,或用戶對分類也開始猶豫不決。

(註:主動學習演算法在自然語言識別領域應用廣泛。

)四、應用效果過往實驗顯示,若對獲得同等分類準確率的隨機抽樣學習演算法和主動學習抽樣演算法進行比較,主動學習抽樣演算法可節約高達44%的人工標註成本。

[2]*****************************************************************************************[1]ActiveLearningLiteratureSurveyhttp://burrsettles.com/pub/settles.activelearning.pdf[2]ActiveLearningforNaturalLanguageParsingandInformationExtractionhttp://www.cs.utexas.edu/~ml/papers/active-nll-ml99.pdf 淺答。

主動學習演算法可以減少人工打標的數量、成本。

主動學習是這樣的:當有類標數據少、而無類標數據多,同時人工標註成本太高(比如沒錢或沒時間等)的時候,演算法主動請求標註部分數據如信息量大的數據,用這些標註數據優化模型。

如何篩選出需要請求標註的數據,這是主動學習演算法需要搞定的部分;誰來標註這些數據呢,人工標註,所以還是需要人工打標。

但是因為需要打標的數據是經過了篩選的,降低了打標成本,我們可能只需要打標一小部分數據也就能達到或者接近打標全部數據的效果。

主動學習技術在自然語言處理方面也有應用。

推薦閱讀: ※無監督第一課:如何選擇場景和時間窗口?※數美科技攜手游族網路,決勝遊戲行業AI反欺詐大戰※有妖氣?個人隱私泄露帶來的巨額損失!※AI風控落地:同盾科技複雜網路4.0重磅發布,多項創新加碼團伙欺詐分析※花600元不到就可以輕鬆複製盜刷銀行卡,欺詐原來離我們這麼近 TAG:數據挖掘|機器學習|風險控制|反欺詐|主動學習| 一點新知 GetIt01



請為這篇文章評分?