淺談主動學習(Active Learning)

1背景概述

 

在機器學習領域有很多學習模式,比方說監督學習、半監督學習、強化學習、無監督學習等。平時大家接觸比較多的一般都是監督學習,在監督學習裏面,比方說要做個人和魚的圖像分類模型,假設有200張圖片,那就需要把這200張樣本都打好標記再訓練。

監督學習存在很多問題,比如最直接的一點,當樣本打標成本很高的時候,比如要標記一個人臉,可能需要在圖片上打上百個點,用監督學習很消耗資源。

主動學習(Active Learning)很好地解決了這個問題,主動學習的本質是讓訓練樣本的利用率最大化,今天就來介紹下主動學習的一些內容。

 

2Active Learning基本原理

 

ActiveLearning的基本邏輯很好理解,就是構建一個打標和訓練流程的閉環,有點類似於boosting算法。

在ActiveLearning中,不需要訓練樣本全部打標,可以先打標部分樣本,然後跑一次分類模型,接着對未打標樣本做一次預測。可以根據預測結果將未打標樣本分成兩類,一類是不確定性大,也就是信息熵大的樣本,另一類是不確定性小但是信息熵也小的樣本。然後針對信息熵大的樣本再次訓練。

這裏面有個問題,什麼叫不確定性大的樣本呢?還是舉文章開篇的例子,假設做人和魚的分類模型,什麼樣的樣本是不確定性高的呢?當然是哪種很難分辨人還是魚的樣本,比如美人魚,哈哈。

總結下,ActiveLearning的本質就是先標記部分樣本,然後訓練一個簡單分類模型,通過這個模型找到高信息熵樣本並打標,然後再重新用新訓練集finetune模型。

 

3業務價值

 

ActiveLearning顯而易見的一個業務價值就是比較節省數據打標資源。很多論文已經講了ActiveLearning在一些場景下的優勢。

我個人感覺,ActiveLearning會在一些數據樣本打標代價很高的場景落地,比如金融風控領域的負樣本模型訓練、圖像語音的模型訓練。

另外,一些雲端機器學習平臺產品如果可以集成Active Learning的能力對客戶是很有吸引力的。雖然我還沒機會做這種產品的設計,但是可以預想到未來雲上的機器學習平臺,能否對高信息熵樣本做主動學習,將是一個重要的用戶抓手。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章