自監督學習知識遷移

2020-12-22 雷鋒網

譯者:AI研習社(聽風1996)

雙語原文連結:https://www.yanxishe.com/TextTranslation/2916


自監督學習是一個非常有趣的研究領域,其目標是在沒有任何人工標註的情況下,從未標註的數據中學習豐富的表示。

我們可以通過創造性地提出一個問題來實現,這樣你就可以使用數據本身的一部分作為標籤並嘗試進行預測。這樣的表述被稱為前置任務

例如,你可以設置一個前置任務,給定灰度圖情況下來預測圖像的彩色版本。同樣,您可以刪除圖像的一部分,並訓練一個模型從周圍預測該部分。有很多類似這樣的前置任務。

通過對前置任務的預訓練,希望模型能夠學習到有用的表示。之後,我們可以只用一小組標記的訓練數據,可以將模型微調到下遊任務,例如圖像分類、對象檢測和語義分割

評估表示的挑戰

所以,前置任務可以幫助我們學習表徵。但是,這就提出了一個問題:

目前,衡量表徵的標準方法是在一組標準任務和基準數據集上進行評估。

如何判斷一個表示學習的好壞?

我們可以看到,上述評價方法要求我們對前置任務和目標任務使用相同的模型架構。

這就會帶來了一些有趣的挑戰:

  1. 對於前置任務,我們的目標是在大規模的無標籤數據集上學習,因此更深的模型(如ResNet)將會幫助我們學習更好的表示。但是,對於下遊任務,我們則更傾向於實際應用的淺層模型(如AlexNet)。因此,我們目前在設計前置任務時就必須考慮這個限制。

  2. 如果有些方法使用了較簡單的架構,而其他方法使用了較深的架構,那麼就很難公平地比較哪種前置任務更好。

  3. 我們無法將從前置任務中學習到的表徵與HOG等人工設計的特徵進行比較。

  4. 我們可能希望在前置任務中利用多個數據域,如聲音、文本和視頻,但目標任務可能會限制我們的設計選擇。

  5. 在前置任務上訓練的模型可能會學習到對通用視覺識別無用的額外知識。如今,最後一層的任務特定層會被忽略,實際只取權重或特徵到一定的卷積層。

知識遷移

Noroozi等人在他們2018年的一篇論文 「Boosting Self-Supervised Learning via Knowledge Transfer」中提供了一個非常簡單的想法去解決這些問題。

直覺

作者觀察到,在一個良好的表示空間中,語義相似的數據點應該是緊密相連的。

在常規的有監督分類中,圖像在語義上相似的信息是通過人類注釋的標籤進行編碼的。在這種標籤上訓練的模型一般都會有一個表示空間,對語義相似的圖像進行分組。

因此,對於自監督學習中的前置任務,目標是隱式學習一個使相同類別圖像相似而不同類別圖像不相似的度量。因此,如果我們能夠以某種方式將語義相關的圖像編碼到相同的標籤上,我們就可以對學習的表示提供可靠的估計。  

通用框架

作者提出了一個新穎的框架,可以將知識從一個深層的自監督模型轉移到一個獨立的淺層下遊模型。你可以使用不同的模型架構來完成前置任務和下遊任務。

核心想法:

將前置任務中的特徵進行聚類,並將聚類中心分配給未標記的圖像作為偽標籤。然後,在偽標籤上重新訓練一個具有目標任務架構的小型網絡來預測偽標籤,並學習一種新的表示方法。  

這種端到端的處理流程介紹如下:

1.前置任務

在這裡,我們選擇一些深度網絡架構,並在一些數據集上對我們選擇的一些前置任務進行訓練。在模型訓練完成後,我們可以從一些中間層獲取特徵。

  

圖:在前置任務上訓練(資源

2.K-means聚類

對於數據集中所有未標記的圖像,我們計算前置任務模型中 的特徵向量。然後,我們基於K-means聚類來分組語義上相似的圖像。我們的想法是,聚類中心將與ImageNet中的類別對齊。

  圖:聚類特徵(資源

在論文中,作者使用的K-means在單臺Titan X GPU上運行了4個小時,將130萬張圖片聚成2000個類別。

3. 偽標籤

聚類中心被當作偽標籤。我們可以使用與上一步相同的數據集,也可以自己使用不同的數據集。然後,我們計算這些圖像的特徵向量,並為每個圖像找到最接近的聚類中心。這個聚類中心被用作偽標籤。

圖:生成偽標籤(來源

4. 在偽標籤上訓練

我們採取將用於下遊任務的模型架構,並利用其將未標記的圖像分類為偽標籤。因此,目標架構將學習一個新的表示,這樣它將把原本在預先訓練的特徵空間中接近的圖像映射到接近的點上。

在偽標籤數據上重新訓練(來源

知識遷移的優勢

我們看到了如何通過對特徵進行聚類,然後使用偽標籤,我們可以將任何前置任務表徵中的知識帶入一個共同的參考模型中,比如AlexNet。

因此,我們現在可以輕鬆地比較不同的前置任務,即使它們是使用不同的架構和在不同的數據域上進行訓練的。這也讓我們可以通過使用深度模型和具有挑戰性的前置任務來改進自監督方法。

這個框架的效果如何?

為了定量評價這個想法,作者設置了一個實驗,如下所述:

a. 增加前置任務的複雜性(Jigsaw++)

為了評估他們的方法,作者採取了一個名為 "拼圖 "的老式拼圖式前置任務,我們需要預測用來隨機打亂3 * 3正方形圖像網格的排列。

  

圖來自這篇論文

他們通過在某些隨機位置用另一個隨機圖像中的圖塊隨機替換0到2個圖塊來擴展任務。這增加了難度,因為現在我們只需要使用剩餘的補丁來解決這個問題。新的前置任務被稱為 "Jigsaw++"。

  圖來自這篇論文

在本文中,他們使用了701個總排列,其最小漢明距離為3。他們對每個圖像塊分別應用均值和標準差歸一化。他們還將圖像的灰度化率提高到70%,以防止網絡利用低淺顯的統計信息而作弊。

b. 用更深層次的網絡來解決藉口任務

作者使用VGG-16來解決前置任務並學習表徵。由於VGG-16的容量增加,它可以更好地處理 "Jigsaw++"任務帶來的額外複雜性,從而提取更好的表徵。

c. 將知識遷移至AlexNet

對來自VGG-16的表示進行聚類,並將聚類中心轉換為偽標籤。然後,AlexNet被訓練來對偽標籤進行分類。

d. 在評估數據集上對AlexNet進行微調

對於下遊任務,使用偽標籤分類的權重初始化AlexNet模型的卷積層,並隨機初始化完全連接的層。然後,在各種基準數據集上對預訓練的AlexNet進行微調。

e. 結果

使用像VGG-16這樣的更深層網絡,可以得到更好的表示和偽標籤,也可以在基準任務中獲得更好的結果。它在2018年的幾個基準上得到了最優秀的結果,並進一步縮小了監督和自監督方法之間的差距。

  • 使用VGG16訓練 "Jigsaw++",並使用AlexNet預測集群可獲得最佳性能。

  • 切換到更具挑戰性的前置任務 "Jigsaw++"比 "Jigsaw "提高了性能。

  • 當在Jigsaw++和下遊任務中都使用相同架構的AlexNet時,知識遷移並沒有明顯影響。

 TaskClustering  Pre-text architectureDownstream arch.Classification Detction (SS)Detection(MS) Segmentation 
 Jiasaw no AlexNet AlexNet 67.7 53.2 - -
 Jiasaw++ no AlexNet AlexNet 69.8 55.5 55.7 38.1
 Jiasaw++ yes AlexNet AlexNet 69.9 55.0 55.8 40.0
 Jiasaw++ yes VGG-16 AlexNet 72.556.5  57.2 42.6

2. 在ImageNet上的線性分類

在這種設定下,在從不同卷積層的AlexNet中提取的特徵上訓練線性分類器訓練。對於ImageNet來說,使用VGG-16並通過聚類將知識轉移到AlexNet中,可以大幅提升2%。

3. ImageNet上的非線性分類

對於非線性分類器來說,使用VGG-16將知識遷移到AlexNet上並使用聚類可以在ImageNet上獲得最佳性能。  

來自論文的其他見解

1. 簇的數量對性能有什麼影響?
網絡並沒有受到聚類數量的顯著影響。作者在物體檢測的任務上測試了在不同簇數的偽標籤上訓練的AlexNet。

2. 這與知識蒸餾有什麼不同?

知識遷移與知識蒸餾有著本質的區別。在這裡,我們的目標是只保留表徵中圖像的簇關聯,並將其轉移到目標模型中。與蒸餾不同的是,我們不對teacher的精確輸出做任何回歸。

3. 在聚類與預測偽標籤中可以使用不同的數據集嗎?
可以,這個方法很靈活,你可以在一個數據集上進行預訓練,在另一個數據集上進行聚類,然後得到第三個數據集的偽標籤。

作者做了一個實驗,他們在ImageNet的表示上訓練聚類,然後在 "Places "數據集上計算聚類中心,得到偽標籤。對象分類的性能僅有小幅下降(-1.5%)。

結論

因此,知識遷移是一種簡單有效的方式,可以將表徵從深層模型映射到淺層模型。


AI研習社是AI學術青年和AI開發者技術交流的在線社區。我們與高校、學術機構和產業界合作,通過提供學習、實戰和求職服務,為AI學術青年和開發者的交流互助和職業發展打造一站式平臺,致力成為中國最大的科技創新人才聚集地。

如果,你也是位熱愛分享的AI愛好者。歡迎與譯站一起,學習新知,分享成長。

雷鋒網版權文章,未經授權禁止轉載。詳情見轉載須知。

相關焦點

  • 清華CVer 對自監督學習的一些思考
    來源 | Jack Cui責編 | 晉兆雨頭圖 | CSDN 下載自視覺中國眾所周知,機器學習大致可分為有監督學習和無監督學習。自監督學習作為無監督學習的一個特例,可以理解它是一種沒有人工標註標籤的監督學習,即沒有人類參與的監督學習。
  • 自監督學習,如何從數據困境中拯救深度學習?
    Yann LeCun 在關於自監督學習的研究中,認為至少有3種獲取知識的方法。(1)通過觀察(2)通過監督(大部分來自家長和老師)(3)通過強化反饋監督學習是錦上添花,而自監督學習才是蛋糕!>)自監督學習自監督學習系統學會通過輸入的其他部分預測輸入的一部分。
  • 聯邦學習 OR 遷移學習?No,我們需要聯邦遷移學習
    與此同時,基於遷移學習的的特性,FTL 的參與方可以擁有自己的特徵空間,而無需強制要求所有參與方都擁有或使用相同特徵的數據,這使得 FTL 適合於更多的應用場景。本文關注聯邦遷移學習方法,在介紹聯邦學習和遷移學習相關知識的基礎上,重點探討向經典聯邦學習中引入遷移學習的目的和意義。
  • 谷歌:引領ML發展的遷移學習,究竟在遷移什麼?丨NeurIPS 2020
    每年機器學習和數據挖掘的頂級會議中都有關於遷移學習的文章發表。  顧名思義,遷移學習就是把一個領域已訓練好的模型參數遷移到另一個領域,使得目標領域能夠取得更好的學習效果。鑑於大部分的數據具有存在相關性,遷移學習可以比較輕鬆地將模型已學到的知識分享給新模型,從而避免了從頭學習,這加快效率,也大大提高樣本不充足任務的分類識別結果。
  • BYOL:輕鬆進行自監督學習
    經過谷歌這樣的諸多先驅者若干年的研究,子監督學習如今已取得一系列的進步與發展。在BYOL之前,多數自我監督學習都可分為對比學習或生成學習,其中,生成學習一般GAN建模完整的數據分布,計算成本較高,相比之下,對比學習方法就很少面臨這樣的問題。
  • 德克薩斯A&M大學在讀博士遊宇寧:自監督學習在圖卷積網絡中的研究...
    自監督學習是一種介於無監督和有監督學習之間的新範式,可以有效減少對大量帶注釋數據的需求。在數據訓練的過程中,生成帶有無噪聲標籤的數據集的成本很高,而無標籤的數據又一直在不斷產生。為了有效利用大量的無標籤數據,自監督學習通過設置合理的學習目標和定義前置任務,從數據本身中得到了監督信號。當前自監督學習已經被廣泛用於訓練卷積神經網絡(CNNs),有效地提高了圖像表示學習可傳遞性、泛化能力和魯棒性,並且已在語義分割、目標檢測、圖像分類、人體動作識別等實戰場景中展現出卓越效果。現在更多無需人工標註的前置任務訓練也被提出,如前景對象分割、圖像修補、圖像著色等。
  • |利用基於遷移學習策略的transformer 模型進行Heck...
    遷移學習是一種將某個領域或任務中學習到的基礎知識或模式應用到不同但相關問題中的方法,可以有效緩解因目標任務訓練樣本過少造成的負面影響。由於該方法的強大應用性,因而引發了研究者對其在化學領域的應用探索。該文研究者創新性地提出使用遷移學習(transfer learning)來突破這個困局,使小數據的高精度預測能夠成為現實。值得注意的是,該文所使用的遷移學習,是一類經典的機器學習優化手段。該方法通過將化學領域的基礎知識轉移到特定的小數據預測,可以有效地提高模型對於小數據集的知識理解和性能預測。
  • 他山之石,可以攻玉:認知科學中的迭代模型,何以緩解語言遷移
    「語言迭代模型」表示:語言本身是通過進化來適應個體之間知識傳輸的「學習瓶頸」(learning bottleneck),而這些「學習瓶頸」的共通性,造成了人類語言的結構共通性。雖然迭代模型是一個認知科學理論,但是在深度學習的框架下,是否能加以借鑑呢?
  • 「深度學習」基於RNN實現特定庫的分子生成的遷移學習指南
    通過對不同的遷移學習的配置實驗,作者提出了在基於RNN的分子生成任務中使用遷移學習的經驗性原則和建議。但是相應的特定功能的分子資料庫往往數據量比較小,因此針對於小數據任務的遷移學習經常被應用到其中。常用的操作是讓模型首先在龐大初始分子資料庫上學習基本知識,確保生成分子的有效性,隨後再遷移到作為目標的小資料庫上學習特定的功能。本文的作者試圖通過計算實驗探究目標數據集如何影響模型的遷移學習的表現。
  • 算法庫開源講座第一講:港中文MMLab博士詹曉航帶你實踐自監督學習...
    自監督的表徵學習領域近幾個月來獲得了顯著的突破,特別是隨著Rotation Prediction, DeepCluster, MoCo, SimCLR, BYOL等簡單有效的方法的誕生,大有超越有監督表徵學習的趨勢。
  • 10位AI大牛暢想2020:李開復看好醫療教育 LeCun強調自監督學習
    一起來看看吧~吳恩達:保持學習和好奇心在這份「新年寄語篇」的開頭,吳恩達作為發起人開場,總體是一些關於學習新知識的碎碎念。吳恩達說,他每年冬天的假期都會圍繞一個新的主題進行學習。LeCun:自監督學習帶來AI革命深度學習三巨頭之一、圖靈獎得主Yann LeCun的新年寄語主題,是Learning From Observation。讓人忍不住把它翻譯成「格物致知」。「格」的是開車這件小事。
  • 阿里、浙大聯合推出遷移學習模型「DEPARA」入選CVPR 2020:可將...
    其中介紹了一種通過遷移學習法,高效打造AI深度模型、應對海量應用場景的 「AI訓練師助手」。旨在讓AI訓練模型面對新場景時不用從頭學習,而是在已有模型上進行遷移,從而迅速獲得相同能力的AI模型,進而縮短模型訓練周期,甚至是從一個月縮短為一天。
  • 騰訊天衍實驗室鄭冶楓:醫學影像AI為什麼需要小樣本學習和域自適應...
    介紹小樣本學習案例2:基於魔方變換的自監督學習 剛才介紹的是我們做的第一個小樣本學習的工作,畢竟這個工作還是需要做分割標註,這個工作量很大,於是我們接下來進行了自監督學習,只需要拿原始圖像進來,通過構建自監督學習任務,這樣就可以拿到這個任務本身需要的標註,通過圖像本身訓練,不需要額外的人工標註。
  • 無需任何標記數據,幾張照片就能還原出3D物體結構,自監督學習還能...
    對此,研究者利用強化學習中的好奇心驅動,額外給模型加了一個「批評家」(critic)網絡,它會利用數據分布中隨機提取的有效樣本,來褒貶模型的結果。這樣,模型作為「表演者」(actor),為了獲得更好的評價,就會再試圖去尋找更好的方法,以生成更優的結果。如下圖所示,左邊是沒有利用好奇心驅動的模型,右邊則是加入了好奇心驅動。
  • 無需任何標記數據,幾張照片還原出3D結構,自監督學習還能這樣用
    對此,研究者利用強化學習中的好奇心驅動,額外給模型加了一個「批評家」(critic)網絡,它會利用數據分布中隨機提取的有效樣本,來褒貶模型的結果。這樣,模型作為「表演者」(actor),為了獲得更好的評價,就會再試圖去尋找更好的方法,以生成更優的結果。
  • 覃祖服:用活學習強國 引領監督工作結碩果
    覃祖服:用活學習強國 引領監督工作結碩果 2020-12-11 18:28 來源:澎湃新聞·澎湃號·政務
  • 在PyTorch中使用DeepLabv3進行語義分割的遷移學習
    當我在使用深度學習進行圖像語義分割並想使用PyTorch在DeepLabv3[1]上運行一些實驗時,我找不到任何在線教程。並且torchvision不僅沒有提供分割數據集,而且也沒有關於DeepLabv3類內部結構的詳細解釋。然而,我是通過自己的研究進行了現有模型的遷移學習,我想分享這個過程,這樣可能會對你們有幫助。
  • 談談機器學習的趨勢 - 新三大學習範式
    可以在此處閱讀有關 SGAN 和半監督學習的更多信息[2]。GAN 還參與了混合學習的另一個領域 — 自監督學習,其中無監督問題被明確地定義為監督問題。GAN 通過生成器的引入來人為創建監督數據;創建標記以標識真實的/生成的圖像。在無人監督的前提下,實施了監督任務。或者,考慮使用編碼器 - 解碼器模型進行壓縮。
  • 聚焦遷移學習反向傳播缺陷,百度資深工程師帶來全新 ICML 工作分享
    CV 在前,NLP 在後,遷移學習技術的應用為這兩個領域所帶來的進展和突破,不可謂不矚目。其中,預訓練模型作為當下遷移學習的一種主流方法,讓「從零開始訓練一個新模型」的時代一去不復返。,從而顯著提升遷移學習的效果。
  • 什麼是小樣本學習?這篇綜述文章用166篇參考文獻告訴你答案
    機器之心報導參與:魔王什麼是小樣本學習?它與弱監督學習等問題有何差異?其核心問題是什麼?來自港科大和第四範式的這篇綜述論文提供了解答。近期出現的小樣本學習(Few-Shot Learning,FSL)方法旨在解決該問題。FSL 利用先驗知識,能夠快速泛化至僅包含少量具備監督信息的樣本的新任務中。這篇論文對 FSL 方法進行了綜述。首先,該論文給出了 FSL 的正式定義,並釐清了它與相關機器學習問題(弱監督學習、不平衡學習、遷移學習和元學習)的關聯和差異。