下面我給大家分享幾個經(jīng)典的主動學習方法,這些方法經(jīng)常被拿來作對比。在自己以后的文章里也可以考慮和以下經(jīng)典的方法進行比較。 Entropy可直接根據(jù)預測的概率分布計算熵值,選擇熵值最大的樣本來標注。 BALDDeep Bayesian Active Learning with Image Data
https://arxiv.org/abs/1703.02910
BGADLBayesian Generative Active Deep Learning
https://arxiv.org/abs/1904.11643
Core-setActive Learning for Convolutional Neural Networks: A Core-Set Approach
https://openreview.net/forum?id=H1aIuk-RW
LLALLearning Loss for Active Learning
https://arxiv.org/abs/1905.03677?context=cs.CV
VAALVariational Adversarial Active Learninghttps://arxiv.org/abs/1904.00370
智能醫(yī)療診斷等領域:在醫(yī)療領域,深度學習的發(fā)展為包括診斷在內(nèi)的多個方面帶來了革命性的發(fā)展。數(shù)據(jù)驅(qū)動的方法必然需求大量的有標注數(shù)據(jù),而標注醫(yī)療圖像不僅耗時耗力,而且需要特定的專業(yè)知識,所以利用主動學習選擇模型難以預測的樣本進行選擇地標注是非常有實際意義的。 有很多論文在研究主動學習在醫(yī)療領域的應用,但在實際應用和落地中,醫(yī)療診斷面臨的最首要的問題還是精度和泛化性能。由于醫(yī)療數(shù)據(jù)是小樣本,這些最重要和最基本的問題沒有被徹底解決,所以主動學習的熱度并不大。但是還是有一些公司在應用,例如騰訊 AI Lab 使用主動學習和難例挖掘方案 中國首款智能顯微鏡獲批進入臨床:病理診斷 AI 化,騰訊 AI Lab 打造
雖然考慮到主動學習的出發(fā)點和要解決的問題都比較實際,但是目前的主動學習方法在實際應用的話還是存在一些問題。 性能不穩(wěn)定:制約主動學習最大的問題就是性能不穩(wěn)定。主動學習是根據(jù)自己指定的選擇策略從樣本中挑選,那么這個過程中策略和數(shù)據(jù)樣本就是影響性能的兩個很重要的因素。對于非常冗余的數(shù)據(jù)集,主動學習往往會比隨機采樣效果要好,但是對于樣本數(shù)據(jù)非常多樣,冗余性較低的數(shù)據(jù)集,主動學習有的時候會存在比隨機采樣還差的效果。數(shù)據(jù)樣本的分布還影響不同主動學習的方法,比如基于不確定性的方法和基于多樣性的方法,在不同數(shù)據(jù)集上的效果并不一致,這種性能的不穩(wěn)定是制約人們應用主動學習的一個重要因素。 在實際應用中,需要先根據(jù)主動學習進行數(shù)據(jù)選擇和標注,如果此時的策略還不如隨機采樣,人們并不能及時改變或者止損,因為數(shù)據(jù)已經(jīng)被標注了,沉沒成本已經(jīng)產(chǎn)生了。而優(yōu)化網(wǎng)絡結(jié)構和性能的這些方法就不存在這個問題,人們可以一直嘗試不同的方法和技巧使得性能達到最好,修改和嘗試的損失很小。 而主動學習被要求得更加苛刻,幾乎需要將設計好的策略拿來直接應用就必須要 work 才行,如果不 work,那些被選擇的樣本還是被標注了,還是損失時間和金錢。苛刻的要求和不穩(wěn)定的性能導致人們還不如省下這個精力,直接采用隨機的標注方式。 臟數(shù)據(jù)的挑戰(zhàn):現(xiàn)在幾乎所有的論文都在公開的數(shù)據(jù)集、現(xiàn)成的數(shù)據(jù)集上進行測試和研究。而這些數(shù)據(jù)集其實已經(jīng)被選擇和篩選過了,去除了極端的離群值,甚至會考慮到樣本平衡,人為的給少樣本的類別多標注一些,多樣本的類別少標注一些。而實際應用中,數(shù)據(jù)的狀況和這種理想數(shù)據(jù)集相差甚遠。主動學習常用不確定性的選擇策略,不難想象,噪聲較大的樣本甚至離群值總會被選擇并標注,這種樣本可能不僅不會提升模型的性能,甚至還會使性能變差。 實際中還存在 OOD(out of distribution)的問題,例如想訓練一個貓狗分類器,直接從網(wǎng)絡中按關鍵字搜索貓狗收集大量圖片,里邊可能存在一些老虎、獅子、狼等不在貓狗類別的無關樣本,但是他們的不確定性是非常高的,被選中的話,并不會提升模型的性能。 難以遷移:主動學習是一種數(shù)據(jù)選擇策略,那么實際應用中必然需求更通用、泛化性更好的主動學習策略。而目前的主動學習策略難以在不同域、不同任務之間進行遷移,比如設計了一個貓狗分類任務的主動學習策略,基于不確定性或多樣性,達到了較好的性能,現(xiàn)在需要做一個新的雞鴨分類的任務,那么是否還需要重新設計一個策略?如果任務是病變組織的分類呢? 由于不同任務的數(shù)據(jù)分布特點可能不一樣,不同任務的難易不一樣,無法保證主動學習的策略能夠在不同數(shù)據(jù)不同任務中通用,往往需要針對固定的任務設計一個主動學習策略。這樣就耗費了精力,如果能有一個通用性好的主動學習策略,那么就可以被不同任務遷移,被更廣泛地應用,甚至直接將其部署為通用標注軟件,為各種任務、數(shù)據(jù)集,提供主動選擇和標注功能。 交互不便:數(shù)據(jù)選擇策略與標注過程聯(lián)系緊密,理想的流程是,有一個整合的軟件能夠提供主動數(shù)據(jù)選擇,然后提供交互界面進行標注,這就是將主動學習流程與標注軟件結(jié)合。僅有高效的主動學習策略,而不方便標注交互,也會造成額外的精力浪費。在流程上,現(xiàn)在主動學習普遍是選擇出一批待標注的樣本后,交給人們?nèi)俗ⅲ谕藗兡鼙M快標注交給模型,模型繼續(xù)訓練后再次選擇。 人們標注的時候,模型既不能訓練,主動學習也不進行其他操作,是個串行的過程,需求等待人工標注結(jié)束后,才能進行接下來的訓練。這樣的流程就不那么方便和高效,想象把主動學習+標注的系統(tǒng)給醫(yī)生應用,策略先選出了一些樣本,醫(yī)生僅標注這些樣本就標注了幾天,然后再給模型訓練,模型訓練一段時間后,又選擇出一些樣本給醫(yī)生,醫(yī)生和模型互相等待對方的操作,降低了效率和便利性。
最新研究方向及論文推薦
下面我介紹一些主動學習目前最新的閱讀價值較高的論文,供大家把握研究方向和熱點。如果大家有興趣,可以持續(xù)關注我 github 上的 awesome-active-learning paper list,我會實時更新有價值的主動學習方面的工作,供大家學習和交流。?
8.1 主動學習問題和方法的探究
目前主動學習的基本方法和問題還存在一些不足,有一些最新的方法試圖解決這些問題。 Mind Your Outliers! Investigating the Negative Impact of Outliers on Active Learning for Visual Question Answering?(作者之一,李飛飛)
Contrastive Coding for Active Learning Under Class Distribution Mismatch:https://openaccess.thecvf.com/content/ICCV2021/html/Du_Contrastive_Coding_for_Active_Lea
基于以下假設:標記數(shù)據(jù)和未標記數(shù)據(jù)是從同一類分布中獲得的,主動學習 (AL) 是成功的。然而,它的性能在類別分布不匹配的情況下會惡化,其中未標記的數(shù)據(jù)包含許多標記數(shù)據(jù)的類分布之外的樣本。為了有效地處理類分布不匹配下的AL問題,作者提出了一種基于對比編碼的 AL 框架,名為 CCAL。 與現(xiàn)有的 AL 方法專注于選擇信息量最大的樣本進行標注不同,CCAL 通過對比學習提取語義和獨特的特征,并將它們組合在查詢策略中,以選擇具有匹配類別的信息量最大的未標記樣本。理論上,作者證明了 CCAL 的 AL 誤差具有嚴格的上限。 LADA: Look-Ahead Data Acquisition via Augmentation for Active Learning:
8.3 主動學習與無監(jiān)督域自適應結(jié)合 無監(jiān)督域自適應要對齊目標域與源域,使模型利用源域的數(shù)據(jù)和標簽,在無標簽的目標域上取得較好的性能。目前出現(xiàn)一些工作考慮源域和目標域的關系,設計了主動學習策略提升模型在目標域的性能。 Multi-Anchor Active Domain Adaptation for Semantic Segmentation:https://arxiv.org/abs/2108.08012 將目標域的分布無條件地與源域?qū)R可能會扭曲目標域數(shù)據(jù)的特有的信息。為此,作者提出了一種新穎的基于多錨點的主動學習策略,以協(xié)助域自適應語義分割任務。通過創(chuàng)新地采用多個點而不是單個質(zhì)心,可以更好地將源域表征為多模態(tài)分布,實習從目標域中選擇更具代表性和互補性的樣本。手動注釋這些樣本的工作量很小,可以有效緩解目標域分布的失真,從而獲得較大的性能增益。另外還采用多錨策略來對目標分布進行建模。通過軟對齊損失,對多個錨點周圍緊湊的目標樣本的潛在表示進行正則化,可以實現(xiàn)更精確的分割。
8.4 主動學習與知識蒸餾結(jié)合 知識蒸餾過程中,teacher 給 student 傳遞知識,但是什么樣的樣本能夠幫助這一過程,也是主動學習可以研究的一個方向。 Active Learning for Lane Detection: A Knowledge Distillation Approach:
8.5 主動學習與對比學習結(jié)合 對比學習最近勢頭比較猛,最近也有主動學習與對比學習結(jié)合解決對比學習的問題,大家可以欣賞一下。 Active Contrastive Learning of Audio-Visual Video Representations:https://arxiv.org/abs/2009.09805 對比學習已被證明可以通過最大化實例的不同視圖之間的互信息(MI)的下限來生成音頻和視覺數(shù)據(jù)的可概括表示。然而,獲得嚴格的下限需要 MI 中的樣本大小指數(shù),因此需要大量的負樣本。我們可以通過構建一個大型的基于隊列的字典來合并更多的樣本,但是即使有大量的負樣本,性能提升也存在理論上的限制。 作者假設隨機負采樣導致高度冗余的字典,導致下游任務的次優(yōu)表示。在本文中,作者提出了一種主動對比學習方法,該方法構建了一個 actively sampled 字典,其中包含多樣化和信息豐富的樣本,從而提高了負樣本的質(zhì)量,并提高了數(shù)據(jù)中互信息量高的任務的性能,例如,視頻分類。
8.7 主動學習在點云方面 點云比圖像的標注時間更長更費精力,尤其是像素級的點云標注。近期主動學習在點云方面的工作漸漸嶄露頭角,而且效果非常驚人,值得期待。下面我介紹一篇有代表性的點云語義分割的工作。 ViewAL: Active Learning with Viewpoint Entropy for Semantic Segmentation: