視覺提示調優(VPT)是一種有效的調整方法,用于將預訓練的Vision Transformers (ViTs)適應到下游任務。它利用額外的可學習的標記,稱為提示,來引導凍結的預訓練的ViTs。盡管VPT已經證明了其在監督視覺變換器中的應用性,但在自我監督的視覺變換器中常常表現不佳。通過實證觀察,我們推斷出VPT的有效性在很大程度上取決于提示標記與之交互的ViT塊。具體來說,當提示標記插入到后面的塊而不是第一個塊時,VPT在圖像分類任務中的性能有所提高,例如MAE和MoCo v3。這些觀察表明,存在一個插入提示標記的塊的最優位置。不幸的是,確定每個自我監督ViT中提示的最佳塊以適應多樣的未來場景是一個成本高昂的過程。為了緩解這個問題,我們提出了一種簡單而有效的方法,該方法學習每個ViT塊的一個門,以調整其對提示標記的干預。通過我們的方法,提示標記被選擇性地受到需要進行任務適應的塊的影響。我們的方法在FGVC和VTAB圖像分類以及ADE20K語義分割中優于VPT變體。代碼可在
//github.com/ryongithub/GatedPromptTuning 獲取。
源自自然語言處理的新范式——提示法,近來在計算機視覺領域掀起一股浪潮,為各種計算機視覺應用,如圖像識別和圖像生成,帶來顛覆性的變革。與傳統的一次確定、持續學習的架構(如針對特定類別集進行訓練的線性分類器)相比,提示法提供了更大的靈活性和更多用于創新應用的機會。它允許模型通過調整文本指令或修改模型輸入空間中少量參數(同時保持預訓練參數的大部分不變)來執行新任務,如識別新類別。這一范式顯著地推動了人工智能與人類對話交互達到前所未有的水平。在短時間內,提示法在廣泛的問題領域中展示了其有效性,包括圖像分類、物體檢測、圖像生成和編輯、視頻分析和機器人控制。在本教程中,我們的目標是通過建立計算機視覺與自然語言處理研究之間的聯系,為提示法提供全面的背景知識。我們還將回顧使用提示法解決計算機視覺問題的最新進展。
構建最先進的視覺識別系統的常見方法是使用離散標簽來訓練視覺模型,以預測固定的對象類別集合(He et al., 2016; Dosovitskiy et al., 2021)。從技術角度看,這是通過將視覺模型(如ResNet(He et al., 2016)或ViT(Dosovitskiy et al., 2021))生成的圖像特征與被視為視覺概念的固定權重集合相匹配來實現的,這些權重是隨機初始化的。雖然訓練類別通常具有文本形式,如“金魚”或“衛生紙”,但為了簡化交叉熵損失的計算,它們會被轉換為離散標簽,這使得文本中包含的語義在很大程度上未被利用。這種學習范式限制了視覺識別系統僅能處理封閉集的視覺概念,使它們無法處理新的類別,因為學習新的分類器需要額外的數據。
最近,像CLIP(Radford等人,2021年)和ALIGN(Jia等人,2021年)這樣的視覺-語言預訓練方法作為視覺表示學習的有前景的替代方案而出現。其主要思想是使用兩個單獨的編碼器(每種模態一個)來對齊圖像和原始文本。例如,CLIP和ALIGN都將學習目標制定為對比損失,這種損失會在特征空間中拉近圖像及其文本描述,同時推離不匹配的配對。通過大規模的預訓練,模型可以學習多樣化的視覺概念,并且可以通過提示輕松地轉移到任何下游任務(Radford et al., 2021; Jia et al., 2021; F¨urst et al., 2021; Li et al., 2021; Singh et al., 2021; Yuan et al., 2021)。特別是,對于任何新的分類任務,人們可以首先通過給文本編碼器提供描述任務相關類別的句子來合成分類權重,然后與圖像編碼器生成的圖像特征進行比較。
我們觀察到,對于預訓練的視覺-語言模型,文本輸入(稱為提示)在下游數據集中起著關鍵作用。然而,確定正確的提示是一項不簡單的任務,通常需要花費大量時間來調整詞語——詞語的微小變化可能會對性能產生巨大影響。例如,對于Caltech101(圖1(a),第2個與第3個提示),在類別標記前加上“a”可以提高超過5%的準確度。此外,提示工程還需要對任務以及理想情況下語言模型的底層機制有先驗知識。圖1(b-d)中的例子說明,添加與任務相關的上下文可以帶來顯著的改進,即,對于Flowers102添加“flower”,對于DTD添加“texture”,對于EuroSAT添加“satellite”。調整句子結構可以進一步提高性能,例如,對于Flowers102,在類別標記后放置“a type of flower”,對于DTD,只保留上下文中的“texture”,并且對于EuroSAT,在“satellite photo”前加上“centered”。然而,即使進行了大量調整,也無法保證所得到的提示對這些下游任務來說是最優的。
受到自然語言處理(NLP)中最近的提示學習研究的啟發(Shin et al., 2020; Jiang et al., 2020; Zhong et al., 2021),我們提出了一種簡單的方法,稱為上下文優化(Context Optimization,CoOp)1,用于自動化提示工程,特別是針對預訓練的視覺-語言模型。具體來說,CoOp使用可學習的向量來對提示的上下文詞進行建模,這些向量可以用隨機值或預訓練的詞嵌入進行初始化(參見圖2)。我們提供了兩種實現,以處理不同性質的任務:一種是基于統一上下文的,它與所有類別共享相同的上下文,并且在大多數類別上表現良好;而另一種是基于類別特定上下文的,它為每個類別學習一組特定的上下文標記,發現這對一些細粒度類別更加適用。在訓練期間,我們只需使用交叉熵損失來最小化預測誤差,對可學習的上下文向量進行優化,同時保持整個預訓練參數不變。梯度可以通過文本編碼器進行反向傳播,將參數中編碼的豐富知識提煉出來,用于學習與任務相關的上下文。
機器之心專欄機器之心編輯部****本篇文章為大家介紹清華大學在 CVPR 2023 的論文,Learning Imbalanced Data with Vision Transformers(用視覺 Transformer 學習長尾數據),代碼已開源。
背景
**在機器學習領域中,學習不平衡的標注數據一直是一個常見而具有挑戰性的任務。近年來,視覺 Transformer 作為一種強大的模型,在多個視覺任務上展現出令人滿意的效果。然而,視覺 Transformer 處理長尾分布數據的能力和特性,還有待進一步挖掘。
目前,已有的長尾識別模型很少直接利用長尾數據對視覺 Transformer(ViT)進行訓練。基于現成的預訓練權重進行研究可能會導致不公平的比較結果,因此有必要對視覺 Transformer 在長尾數據下的表現進行系統性的分析和總結。
本文旨在填補這一研究空白,詳細探討了視覺 Transformer 在處理長尾數據時的優勢和不足之處。本文將重點關注如何有效利用長尾數據來提升視覺 Transformer 的性能,并探索解決數據不平衡問題的新方法。通過本文的研究和總結,研究團隊有望為進一步改進視覺 Transformer 模型在長尾數據任務中的表現提供有益的指導和啟示。這將為解決現實世界中存在的數據不平衡問題提供新的思路和解決方案。
文章通過一系列實驗發現,在有監督范式下,視覺 Transformer 在處理不平衡數據時會出現嚴重的性能衰退,而使用平衡分布的標注數據訓練出的視覺 Transformer 呈現出明顯的性能優勢。相比于卷積網絡,這一特點在視覺 Transformer 上體現的更為明顯。另一方面,無監督的預訓練方法無需標簽分布,因此在相同的訓練數據量下,視覺 Transformer 可以展現出類似的特征提取和重建能力。
基于以上觀察和發現,研究提出了一種新的學習不平衡數據的范式,旨在讓視覺 Transformer 模型更好地適應長尾數據。通過這種范式的引入,研究團隊希望能夠充分利用長尾數據的信息,提高視覺 Transformer 模型在處理不平衡標注數據時的性能和泛化能力。
文章貢獻
本文是第一個系統性的研究用長尾數據訓練視覺 Transformer 的工作,在此過程中,做出了以下主要貢獻:
首先,本文深入分析了傳統有監督訓練方式對視覺 Transformer 學習不均衡數據的限制因素,并基于此提出了雙階段訓練流程,將視覺 Transformer 模型內在的歸納偏置和標簽分布的統計偏置分階段學習,以降低學習長尾數據的難度。其中第一階段采用了流行的掩碼重建預訓練,第二階段采用了平衡的損失進行微調監督。
其次,本文提出了平衡的二進制交叉熵損失函數,并給出了嚴格的理論推導。平衡的二進制交叉熵損失的形式如下:
與之前的平衡交叉熵損失相比,本文的損失函數在視覺 Transformer 模型上展現出更好的性能,并且具有更快的收斂速度。研究中的理論推導為損失函數的合理性提供了嚴密的解釋,進一步加強了我們方法的可靠性和有效性。
不同損失函數的收斂速度的比較 基于以上貢獻,文章提出了一個全新的學習范式 LiVT,充分發揮視覺 Transformer 模型在長尾數據上的學習能力,顯著提升模型在多個數據集上的性能。該方案在多個數據集上取得了遠好于視覺 Transformer 基線的性能表現。
不同參數量下在 ImageNet-LT 上的準確性。
在 ImagNet-LT(左)和 iNaturalist18(右)數據集上的性能表現 同時,本文還驗證了在相同的訓練數據規模的情況下,使用ImageNet的長尾分布子集(LT)和平衡分布子集(BAL)訓練的 ViT-B 模型展現出相近的重建能力。如 LT-Large-1600 列所示,在 ImageNet-LT 數據集中,可以通過更大的模型和 MGP epoch 獲得更好的重建結果。
總結**
**本文提供了一種新的基于視覺 Transformer 處理不平衡數據的方法 LiVT。LiVT 利用掩碼建模和平衡微調兩個階段的訓練策略,使得視覺 Transformer 能夠更好地適應長尾數據分布并學習到更通用的特征表示。該方法不僅在實驗中取得了顯著的性能提升,而且無需額外的數據,具有實際應用的可行性。 論文的更多細節請參考論文原文和補充材料。
通過提示,大規模預訓練模型變得更具表達力和威力,在近年來受到了顯著的關注。盡管這些大型模型具有零射擊能力,但總的來說,仍需要標簽數據來使它們適應下游任務。為了克服這個關鍵的限制,我們提出了一個無監督的微調框架,直接在未標記的目標數據上微調模型或提示。我們演示了如何通過對齊從提示和目標數據中提取的離散分布,將我們的方法應用于語言增強視覺和掩蔽語言模型。為了驗證我們的方法的適用性,我們在圖像分類、情感分析和自然語言推理任務上進行了大量實驗。在13個與圖像相關的任務和15個與語言相關的任務中,我們的方法都取得了比基線更好的一致性改善。PyTorch的代碼可以在//github.com/korawat-tanwisuth/POUF上找到。
本文介紹來自中國科學院自動化所的最近被ICML2023接收的文章:A Closer Look at Self-Supervised Lightweight Vision Transformers.
論文鏈接://arxiv.org/abs/2205.14443 代碼鏈接:
導讀:最近“預訓練大模型”這個概念異常火爆,大家都期待可以通過增加模型尺寸以達到“涌現”的效果。視覺領域也出現了大量的預訓練方法和預訓練模型,且取得了非常不錯的效果。然而,視覺任務又有其獨特性,隱私性、實時性等一系列應用場景的限制使得邊緣端實際部署的模型多是輕量模型,而這些輕量模型應該怎樣預訓練卻鮮少被研究。本文即針對這一問題,重點關注輕量級ViT的預訓練,通過大量的實驗與分析為輕量級ViT的預訓練提供一個“實踐手冊”。眾多預訓練方法中哪種可以在輕量級模型上表現得更好?不同下游任務中這些方法的優劣對比又會有何種不同?各種輕量級預訓練模型又是為什么會表現出上述的實驗現象?有沒有辦法獲得在各種下游任務中通用的“全能”預訓練模型?這些問題都會在本文中一一被解答。
本文首先將論文中的眾多實驗性結論總結如下,后面會對其進行詳細介紹: * 對于輕量級ViT(例如5.7M的ViT-Tiny),當下游任務的數據比較充足時,基于Masked-Image-Modeling(MIM)的自監督預訓練方法[1][2]表現最好,優于基于Contrastive Learning(CL)的方法[3][4],甚至比基于ImageNet-21k的全監督預訓練模型表現得更好; * 原始的ViT結構在輕量模型這個賽道中仍舊具有巨大潛力,而合適的預訓練手段就是釋放其潛力的一把鑰匙,例如:采用合適的基于MAE(Masked AutoEncoder[1])的預訓練并在ImageNet上進行微調后,僅包含5.7M參數的原始的ViT-Tiny就可以取得79.0%的top1 accuracy,超過了一眾輕量級ConvNets和近兩年各種精心設計的ViT變種網絡; * 基于MAE的預訓練輕量級ViT并不是萬能的,它也有一些缺陷,例如:當下游任務的數據規模比較小時,它的遷移效果就很差,明顯弱于全監督的預訓練模型,也比基于CL的預訓練模型差; * 出現上述現象的原因可能是:基于MIM的預訓練模型淺層(靠近輸入端的若干層)學的非常好,而高層(靠近輸出端的若干層)卻出現了明顯的表征退化;而基于CL的預訓練模型雖然高層能學到還不錯的語義特征,但卻無法學習到可能對下游任務更有幫助的一些歸納偏置(inductive bias); * 通過知識蒸餾,可以借助一個更大規模的基于MAE的預訓練模型(例如MAE-Base)去幫助輕量級ViT的預訓練,僅采用基于attention map的蒸餾就可以顯著改善其在小規模下游任務上的糟糕表現。
接下來會對論文的內容進行具體介紹。
文章基于ViT-Tiny(5.7M)這個采用原始ViT結構的輕量級模型,首先采用各種預訓練方法得到若干預訓練模型(各種方法均針對輕量級模型進行了訓練配置調優),測試了它們在ImageNet-1k上的微調性能。 各種預訓練方法在ImageNet上的對比 表中可以看出:對于輕量級ViT,其同樣可以像大模型一樣,顯著受益于各種預訓練方法。其中,基于MIM的自監督預訓練方法(例如MAE,SimMIM)表現出優于CL的自監督預訓練方法(例如MoCo-v3,DINO)的效果,甚至優于基于更大規模的ImageNet-21k(IN21K)的全監督預訓練;而其中MAE的預訓練成本最低,且精度最高。 于是,我們便好奇,在合適的預訓練手段加持下,ViT-Tiny這個結構足夠原始且簡單的模型的性能上限究竟有多高?
我們對ViT-Tiny采用MAE進行預訓練,然后在ImageNet上進行微調,其與其他一眾輕量級模型的對比如下:
采用合適的預訓練后ViT-Tiny與SOTA輕量級網絡的性能對比
表中可見,即使是在足夠強的fine-tuning的recipe下,MAE的預訓練依舊可以帶來顯著的性能增益(77.8→79.0),且基于MAE預訓練的模型只微調了300 epochs就已超過了從頭訓練1000 epochs的模型(78.5 vs. 77.8)。而與表中的眾多ConvNets和ViT的變種網絡相比,ViT-Tiny依舊表現出非常有競爭力的性能,且具有較高的throughput。這說明:一個“普通”的網絡結構與SOTA的性能之間,差的可能只是一個合適的訓練方案,這為輕量級模型的研究提供了一條除人工設計復雜網絡結構之外的道路。 除此之外,表中還包括一些采用了全監督、自監督預訓練的卷積網絡,但是可以看出:預訓練對于ViT的增益更大(例如:ConvNeXt V2-F采用基于MIM的預訓練只能提升0.5,而ViT-Tiny卻可以提升1.2),這個可以理解為:ViT結構具有更少的人為設計的特性,而預訓練可以以數據/任務驅動的模式對其進行補足,因此其增益更大,且表現出比通過人為設計引入inductive bias的網絡更強的潛力。換句話說:基于naive的網絡結構,通過合適的預訓練與數據驅動,使得它變成下游任務需要的模樣,可能比人為設計模型應該是什么樣子具有更高的性能上限。
首先,我們發現,對于輕量級ViT來說,增加預訓練數據的規模無法使得其取得更好的遷移性能:
甚至MAE對于預訓練數據表現出驚人的魯棒性:只用1%的預訓練數據依舊可以取得與使用100%ImageNet-1k(IN1K)相近的性能,且對于預訓練數據的類別分布也不太敏感。 其次,我們發現,這些輕量級自監督預訓練模型似乎沒辦法很好的遷移到數據規模較小的下游任務上:
其中,在各種下游分類任務上,基于MIM的預訓練模型表現明顯弱于全監督預訓練模型,而基于CL的預訓練模型同樣如此但差距較小;而在COCO檢測任務上,基于CL的DINO預訓練模型則表現出更好的遷移性能;這與在ImageNet上觀察到的現象并不一致。這說明,不同預訓練模型在不同規模的下游數據集上可能表現出不一致的特性,可能需要根據下游數據集的特性選擇合適的預訓練方案。例如:當下游數據集規模較小且數據集類別分布與預訓練數據較為一致時,全監督預訓練方案可能更為合適;而當下游數據足夠充足時,基于MIM的預訓練方案可能效果更好。
接下來,我們嘗試引入一些模型分析手段,對這些預訓練模型進行分析,以期理解出現上述實驗現象的原因。
我們首先以基于IN1K全監督訓練ViT模型(DeiT-Tiny)作為參考模型,研究各種預訓練模型(基于MAE的MAE-Tiny,基于SimMIM的SimMIM-Tiny,基于MoCo v3的MoCov3-Tiny與基于DINO的DINO-Tiny)與其之間的逐層表征相似度[5]。
我們發現: * 同類預訓練模型具有相似的逐層表征結構,例如:基于MIM的MAE-Tiny和SimMIM-Tiny的相似度heatmap比較像,而基于CL的MoCov3-Tiny和DINO-Tiny較為相似; * 基于MIM的預訓練模型高層出現了表征退化,即其高層表現出與DeiT-Tiny淺層較高的相似度; * 基于CL的預訓練模型與DeiT-Tiny具有較好的逐層對齊關系。
據此我們推測,可能正是這些模型高層的差異導致了上述實驗現象。為驗證這個猜想,我們進行了如下實驗:僅保留預訓練模型的若干淺層,測試其在各種規模的下游任務上的遷移性能,已測試預訓練模型各層對于遷移性能的貢獻度。
圖中可以看出: * 僅保留MAE-Tiny的前4層即可在ImageNet上取得良好的遷移性能,這說明,對于數據充足的下游任務,預訓練模型的淺層可能更加重要,而高層的質量則影響較小; * 隨著數據規模減小,MoCov3-Tiny的高層對于性能的增益越來越大,這也是其在這些數據集上性能超過MAE的關鍵,這說明,對于數據規模較小的下游任務,預訓練模型的高層也很重要;
以上分析也說明,想辦法改進MAE-Tiny的高層表征質量,或許可以提高其在小規模下游任務中的遷移性能。
接下來,我們分析預訓練模型逐層的attention map,對于ViT來說,它可以反映模型在自注意力機制中信息融合的偏好特性。具體來說,我們選擇重點分析attention distance與attention entropy,前者可以反映每個token是較多關注到近處(local)的區域還是遠處的區域(即global),后者可以反映每個token的關注點是集中到少數幾個token上(concentrated)還是廣泛地關注到眾多token上(broad)。我們以箱線圖的形式,可視化了預訓練模型逐層attention distance與entropy的分布。
我們首先對比了是否采用MAE-Tiny作為預訓練在ImageNet-1k上微調(訓練)后的模型(MAE-Tiny-FT vs. DeiT-Tiny),發現采用MAE-Tiny作為預訓練可以使得模型的attention更加local與concentrated,這些可能被作為inductive bias被預訓練引入到了模型中,使得其在ImageNet上取得了更好的性能表現。 而對比MoCov3-Tiny與MAE-Tiny可以發現,雖然兩者相較于隨機初始化均可一定程度上引入local inductive bias,但MoCov3-Tiny從淺層到高層仍舊較為global且broad。這種特性可能使得以其為初始化的模型在下游微調時傾向于“走捷徑”,直接關注到全局信息而忽視局部細節信息。這對于較為簡單的下游任務來說可能是足夠的,但卻未必適宜難度較高的需要細粒度識別的分類任務(例如ImageNet)。
最后,文章驗證了采用一種簡單的知識蒸餾手段,即可顯著改善基于MAE的輕量級預訓練的質量,并顯著改善其下游遷移性能。
具體來說,基于MAE的框架,引入一個同樣采用MAE預訓練的較大規模的網絡(例如MAE-Base),并基于教師網絡與學生網絡的attention map之間的相似度構建蒸餾損失:
文章聚焦在輕量級ViT的預訓練上,相當于為相關方向的研究提供了一個benchmark,相關的代碼與模型也都會開源,方便后續大家在這一方向上繼續探索; * 文章的研究也打破了之前人們對于ViT在輕量級賽道上沒有競爭優勢的慣有印象,只要采用合適的預訓練手段,輕量級ViT也會表現出足夠的競爭力;同時,文章也相當于為后續輕量級模型結構設計的相關研究提出了一個新的且足夠高的bar,“你的優勢未必是因為你足夠好,可能只不過是因為你曾經看不上的競爭對手還沒有充分發力”; * 文章首次將知識蒸餾引入基于MIM的輕量級ViT的預訓練中,并以極簡的形式取得了顯著的性能提升; * 文章在解決了一些問題的同時也帶來了更多的問題,例如:有沒有辦法可以讓輕量級ViT吃下更多的預訓練數據帶來更多的增益?有沒有辦法高效融合基于CL和MIM的預訓練方法,使得其兼具兩者的優勢?有沒有辦法不借助知識蒸餾來提升基于MIM的預訓練模型的高層表征質量?這些問題可能都值得未來去進一步探索。
^abMasked Autoencoders Are Scalable Vision Learners. 1. ^SimMIM: A Simple Framework for Masked Image Modeling. 1. ^An Empirical Study of Training Self-Supervised Vision Transformers. 1. ^Emerging Properties in Self-Supervised Vision Transformers. 1. ^Algorithms for Learning Kernels Based on Centered Alignment.
理解視頻的時間動態是學習更好的視頻表現的一個重要方面。最近,基于transformer的架構設計在視頻任務中得到了廣泛的探索,因為它們能夠捕獲輸入序列的長期依賴性。然而,我們發現這些視頻transformer在學習空間動力學而不是時間動力學時仍然是有偏的,去偏偽相關對它們的性能至關重要。基于觀察結果,我們為視頻模型設計了簡單而有效的自監督任務,以更好地學習時間動態。具體來說,為了消除空間偏差,我們的方法學習視頻幀的時間順序作為額外的自監督,并強制隨機洗牌的幀具有低置信輸出。此外,我們的方法學習連續幀之間視頻標記的時間流方向,以增強與時間動態的相關性。在各種視頻動作識別任務下,我們證明了我們的方法的有效性,以及它與最先進的視頻transformer的兼容性。
//www.zhuanzhi.ai/paper/0a5edd1d139682ad788b64f4f65b968e
Transformer在學習視覺和語言表示方面取得了巨大的成功,這在各種下游任務中都是通用的。在視覺控制中,學習可在不同控制任務間遷移的可遷移狀態表示對于減少訓練樣本的大小具有重要意義。然而,將Transformer移植到采樣高效的視覺控制仍然是一個具有挑戰性和未解決的問題。為此,我們提出了一種新穎的控制Transformer(CtrlFormer),它具有許多現有技術所沒有的吸引人的優點。首先,CtrlFormer在不同控制任務之間聯合學習視覺令牌和策略令牌之間的自注意力機制,可以在不發生災難性遺忘的情況下學習和遷移多任務表示。其次,我們精心設計了一個對比強化學習范式來訓練CtrlFormer,使其能夠達到較高的樣本效率,這在控制問題中是非常重要的。例如,在DMControl基準測試中,不像最近的先進方法在使用100k樣本遷移學習后在“Cartpole”任務中產生零分而失敗,CtrlFormer可以在僅使用100k樣本的情況下獲得769±34的最先進的分數,同時保持之前任務的性能。代碼和模型發布在我們的項目主頁上。
//www.zhuanzhi.ai/paper/9692ae63f6623f9fc8ad4d18583f4002
近年來,Transformer架構和變體在許多機器學習任務中取得了顯著的成功。這種成功本質上與處理長序列的能力以及注意力機制中上下文相關的權重的存在有關。我們認為這些能力符合元強化學習算法的核心作用。事實上,元強化學習代理需要從一系列軌跡推斷任務。此外,它需要一個快速適應策略來適應新的任務,這可以通過使用自我注意機制來實現。在這項工作中,我們提出了TrMRL(transformer 元強化學習),一個元強化學習l代理,模仿記憶恢復機制使用transformer 架構。它將最近過去的工作記憶聯系起來,遞歸地通過transformer層建立情景記憶。我們展示了自注意力計算出一種共識表示,在每一層將貝葉斯風險降到最低,并提供了有意義的特征來計算最佳行動。我們在運動和靈巧操作的高維連續控制環境中進行了實驗。結果表明,在這些環境中,與基線相比,TrMRL具有可比或更好的漸近性能、樣本效率和分布外泛化。
//www.zhuanzhi.ai/paper/1a6668cdd5003fa2b3f7803489661a0d
我們提出了提示分布學習,以有效地適應一個預訓練的視覺語言模型,以解決下游的識別任務。我們的方法不僅從一些樣本中學習低偏差提示,而且還捕獲不同提示的分布,以處理不同的視覺表示。這樣,我們提供了高質量的任務相關內容,便于識別。這種快速分布學習是通過一種學習提示的輸出嵌入而不是輸入嵌入的有效方法實現的。因此,我們可以使用高斯分布來有效地建模,并導出有效訓練的替代損失。在12個數據集上的大量實驗表明,我們的方法始終和顯著地優于現有的方法。例如,與人工制作的提示相比,每個類別有一個樣本,它的平均結果相對提高了9.1%。
//www.zhuanzhi.ai/paper/0c6359fedd7bfc3067c0c0ddaf8a29f4
隨著功能強大的預訓練視覺語言模型(如CLIP)的興起,研究如何使這些模型適應下游數據集變得非常必要。最近提出的一種名為上下文優化(CoOp)的方法將提示學習的概念引入視覺領域,以適應預訓練的視覺語言模型。具體來說,CoOp將提示中的上下文單詞轉換為一組可學習的向量,并且僅使用少量標記的圖像進行學習,可以在經過大量調整的手動提示中實現巨大的改進。在我們的研究中,我們確定了CoOp的一個關鍵問題: 學習的上下文不能泛化到同一數據集內更廣泛的不可見類,這表明在訓練期間觀察到的CoOp基類過擬合。 為了解決這個問題,我們提出了條件上下文優化(CoCoOp),它通過進一步學習一個輕量級神經網絡來為每幅圖像生成一個輸入條件標記(向量)來擴展CoCoOp。與CoOp的靜態提示相比,我們的動態提示適應每個實例,因此對類遷移不那么敏感。大量的實驗表明,對于不可見的類,CoCoOp的泛化效果要比CoOp好得多,甚至在單個數據集之外還顯示出很好的可遷移性; 具有較強的域泛化性能。代碼可在//github.com/ KaiyangZhou/CoOp
Vision Prompt Tuning
Xing Nie, Gaofeng Meng, Jianlong Chang, Chunlei Huo, Shiming Xiang, Qi Tian, Zhaoxiang Zhang, Chunhong Pan
在計算機視覺中,微調是一種實用的利用預先訓練的視覺模型來執行下游任務的方法。然而,由于這類方法多采用低效的全局參數更新策略,以及嚴重依賴于高質量的下游數據,在實踐中部署非常具有挑戰性。最近,基于prompt learning的方法增加了與任務相關的提示以使下游任務適應預訓練模型,極大地提高了許多自然語言下游任務的性能。在這項工作中,我們將這種顯著的遷移能力擴展到視覺模型中,作為微調的替代方案。為此,我們提出了視覺提示調整(VPT),這是一種參數有效的視覺調整范式,可將凍結的視覺模型適應到下游數據。VPT 的關鍵是基于提示的調優,即只學習與輸入圖像連接的特定任務視覺提示,并凍結預訓練模型。通過這種方式,VPT 只需訓練少量額外參數即可生成緊湊且穩健的下游模型。大量實驗有力地證明,我們的方法在十五個下游視覺數據集上優于當前的調整范例,包括圖像損壞、對抗性示例、長尾分布和OOD問題等。
VPT結構示意圖