如何高效、精準(zhǔn)地進(jìn)行圖片搜索?看看輕量化視覺預(yù)訓(xùn)練模型
?你是否有過圖像檢索的煩惱?
或是難以在海量化的圖像中準(zhǔn)確地找到所需圖像,或是在基于文本的檢索中得到差強人意的結(jié)果。對于這個難題,微軟亞洲研究院和微軟云計算與人工智能事業(yè)部的研究人員對輕量化視覺模型進(jìn)行了深入研究,并提出了一系列視覺預(yù)訓(xùn)練模型的設(shè)計和壓縮方法,實現(xiàn)了視覺 Transformer 的輕量化部署需求。
目前該方法和模型已成功應(yīng)用于微軟必應(yīng)搜索引擎,實現(xiàn)了百億圖片的精準(zhǔn)、快速推理和檢索。本文將深入講解輕量化視覺預(yù)訓(xùn)練模型的發(fā)展、關(guān)鍵技術(shù)、應(yīng)用和潛力,以及未來的機遇和挑戰(zhàn),希望大家可以更好地了解輕量化視覺預(yù)訓(xùn)練領(lǐng)域,共同推進(jìn)相關(guān)技術(shù)的發(fā)展。
近來,基于 Transformer 的視覺預(yù)訓(xùn)練模型在諸多計算機視覺任務(wù)上都取得了優(yōu)越性能,受到了廣泛關(guān)注。然而,視覺 Transformer 預(yù)訓(xùn)練模型通常參數(shù)量大、復(fù)雜度高,制約了其在實際應(yīng)用中的部署和使用,尤其是在資源受限的設(shè)備中或者對實時性要求很高的場景中。因此,視覺預(yù)訓(xùn)練大模型的“輕量化”研究成為了學(xué)術(shù)界和工業(yè)界關(guān)注的新熱點。
對此,微軟亞洲研究院和微軟云計算與人工智能事業(yè)部的研究員們在視覺大模型的結(jié)構(gòu)設(shè)計和訓(xùn)練推斷上進(jìn)行了深入探索,同時還對大模型的輕量化、實時性以及云端部署也做了創(chuàng)新應(yīng)用。本文將從輕量化視覺預(yù)訓(xùn)練模型的發(fā)展談起,探討模型輕量化研究中的關(guān)鍵技術(shù),以及輕量化視覺 Transformer 模型在實際產(chǎn)品中的應(yīng)用和潛力,最后展望輕量化視覺模型的未來發(fā)展機遇和挑戰(zhàn)。
視覺大模型層出不窮,輕量化預(yù)訓(xùn)練模型卻乏人問津
最近幾年,深度學(xué)習(xí)在 ImageNet 圖像分類任務(wù)上的進(jìn)展主要得益于對視覺模型容量的大幅度擴增。如圖1所示,短短幾年時間,視覺預(yù)訓(xùn)練模型的容量擴大了300多倍,從4,450萬參數(shù)的 ResNet-101 模型,進(jìn)化到了擁有150億參數(shù)的 V-MoE 模型,這些大型視覺預(yù)訓(xùn)練模型在圖像理解和視覺內(nèi)容生成等任務(wù)上都取得了長足進(jìn)步。

圖1:視覺預(yù)訓(xùn)練模型參數(shù)量的變化趨勢圖
無論是微軟的30億參數(shù) Swin-V2 模型,還是谷歌發(fā)布的18億參數(shù) ViT-G/14 模型,視覺大模型在眾多任務(wù)中都展現(xiàn)了優(yōu)越的性能,尤其是其強大的小樣本(few-shot) 甚至是零樣本 (zero-shot) 的泛化能力,對實現(xiàn)通用智能非常關(guān)鍵。
然而,在很多實際場景中,由于存儲、計算資源的限制,大模型難以直接部署或者無法滿足實時需求。因此,輕量級的視覺預(yù)訓(xùn)練模型研究變得越來越重要,且具有很強的實際應(yīng)用價值。盡管目前有一些工作在探討輕量級模型,但是這些方法大多是針對特定任務(wù)、特定結(jié)構(gòu)設(shè)計的,在設(shè)計和訓(xùn)練過程中沒有考慮到模型的通用性,存在跨數(shù)據(jù)域、跨任務(wù)的泛化局限性。
輕量化視覺模型的關(guān)鍵技術(shù)研究
為了實現(xiàn)輕量化視覺預(yù)訓(xùn)練模型,微軟的研究員們發(fā)現(xiàn)了兩大關(guān)鍵問題:1)如何設(shè)計出通用性更強的輕量化模型結(jié)構(gòu)?2)受制于輕量化視覺預(yù)訓(xùn)練模型的有限容量,如何設(shè)計高效的預(yù)訓(xùn)練方法讓小模型也能學(xué)習(xí)到大規(guī)模數(shù)據(jù)中的有效信息?面對這些難題,研究員們通過堅持不懈的研究和探索,目前取得了一些階段性成果。
由于提高輕量化預(yù)訓(xùn)練模型通用性的核心在于如何在資源受限(參數(shù)量,時延等)的情況下強化模型的學(xué)習(xí)能力,使其能夠更好地在大規(guī)模數(shù)據(jù)中學(xué)習(xí)通用特征,因此,研究員們從以下三個角度進(jìn)行了深入探索:
1. 輕量化模塊設(shè)計?
輕量、低延時的模塊是組成輕量級模型的重要部分。在卷積神經(jīng)網(wǎng)絡(luò)中,具有代表性的輕量級模塊有MobileNet的反向殘差模塊(Inverted Residual Block)以及 ShuffleNet 的通道隨機交叉單元(Shuffle Unit)。在視覺 Transformer 結(jié)構(gòu)中,由于圖像塊之間注意力的計算沒有很好地考慮相對位置編碼信息,因此研究員們設(shè)計了即插即用的輕量級二維圖像相對位置編碼方法 iRPE [1],它不需要修改任何的訓(xùn)練超參數(shù),就能提高模型的性能。此外,針對視覺 Transformer 參數(shù)冗余的問題,研究員們設(shè)計了權(quán)重多路復(fù)用(Weight Multiplexing)模塊 [2]。如圖2所示,該方法通過多層權(quán)重復(fù)用減少模型參數(shù)的冗余性,并且引入不共享的線性變換,提高參數(shù)的多樣性。

圖2:Transformer 中的權(quán)重多路復(fù)用模塊
2. 輕量化模型搜索?
網(wǎng)絡(luò)結(jié)構(gòu)搜索(Neural Architecture Search)可以從模型設(shè)計空間中自動找到更加輕量、性能更加優(yōu)異的模型結(jié)構(gòu) [3]。在卷積神經(jīng)網(wǎng)絡(luò)中,代表性工作有 NASNet 和 EfficientNet 等。在視覺 Transformer 結(jié)構(gòu)搜索中,針對視覺模型中的通道寬度、網(wǎng)絡(luò)深度以及 head 數(shù)量等多個維度,研究員們先后提出了 AutoFormer [4] 和 S3 [5],實現(xiàn)了視覺模型的動態(tài)可伸縮訓(xùn)練與結(jié)構(gòu)搜索。在同樣模型精度的情況下,搜索得到的新模型具有更小的參數(shù)量和計算量。值得注意的是,在 S3 中,研究員們利用 E-T Error [5]以及權(quán)重共享超網(wǎng)來指導(dǎo)、改進(jìn)搜索空間,在得到更高效的模型結(jié)構(gòu)的同時也分析了搜索空間的演進(jìn)過程,如圖3所示。與此同時,模型結(jié)構(gòu)搜索的過程為輕量化模型的設(shè)計提供了有效的設(shè)計經(jīng)驗和參考。

圖3:輕量級模型搜索空間進(jìn)化過程
3. 視覺大模型壓縮與知識遷移?
輕量級預(yù)訓(xùn)練模型的另一難題在于,由于模型容量有限,難以直接學(xué)習(xí)大規(guī)模數(shù)據(jù)中包含的豐富信息和知識。為了解決這一問題,研究員們提出了快速預(yù)訓(xùn)練蒸餾方案,將大模型的知識遷移到輕量化的小模型中 [6]。如圖4所示,和傳統(tǒng)的單階段知識蒸餾不同,快速預(yù)訓(xùn)練蒸餾分為兩個階段:1)壓縮并保存大模型訓(xùn)練過程中使用的數(shù)據(jù)增廣信息和預(yù)測信息;2)加載并恢復(fù)大模型的預(yù)測信息和數(shù)據(jù)增廣后,利用大模型作為教師,通過預(yù)訓(xùn)練蒸餾指導(dǎo)輕量化學(xué)生模型的學(xué)習(xí)和訓(xùn)練。不同于剪枝和量化,該方法在權(quán)重共享的基礎(chǔ)上使用了上文中提到的權(quán)重復(fù)用[2],通過引入輕量級權(quán)重變換和蒸餾,成功壓縮視覺預(yù)訓(xùn)練大模型,得到了通用性更強的輕量級模型。在不犧牲性能的情況下,該方法可以將原有大模型壓縮數(shù)十倍。

圖4:快速預(yù)訓(xùn)練知識蒸餾
這一系列的研究成果,不僅在計算機視覺的頂級學(xué)術(shù)會議上(CVPR、ICCV、ECCV、NeurIPS等 )發(fā)表了多篇論文[1-6],也通過和微軟必應(yīng)的合作,成功將輕量化預(yù)訓(xùn)練模型應(yīng)用到了圖像搜索產(chǎn)品中,提高了實際業(yè)務(wù)中圖像和視頻內(nèi)容理解的能力。
輕量級視覺預(yù)訓(xùn)練模型的應(yīng)用
輕量級視覺預(yù)訓(xùn)練模型在實際中有諸多用途,尤其是在實時性要求高或者資源受限的場景中, 例如:云端視頻實時渲染和增強、端測圖像、視頻內(nèi)容理解。輕量級視覺模型已經(jīng)在智能零售、先進(jìn)制造業(yè)等領(lǐng)域展現(xiàn)出了廣闊的應(yīng)用前景,將來還會在元宇宙、自動駕駛等新興行業(yè)發(fā)揮重要作用。以微軟必應(yīng)產(chǎn)品中的圖像內(nèi)容搜索為例,下面為大家展示一下輕量化視覺模型的實際應(yīng)用和部署。
目前,基于內(nèi)容的圖片搜索在圖片的類別屬性理解上已經(jīng)比較成熟,但對于復(fù)雜場景的內(nèi)容理解仍有很大的挑戰(zhàn)。復(fù)雜場景的圖片通常具有大景深、背景雜亂、人物多、物體關(guān)系復(fù)雜等特點,顯著地增加了內(nèi)容理解的難度,因而對預(yù)訓(xùn)練模型的魯棒性和泛化性提出了更高的要求。
舉例來說,動漫圖片的搜索質(zhì)量在很長一段時間內(nèi)無法得到有效提升,其主要的挑戰(zhàn)包括:繪畫線條和顏色比真實場景圖片更加夸張,包含更多動作和場景,不同漫畫之間的風(fēng)格內(nèi)容差異巨大。圖5到圖7分別展示了“灌籃高手”、“皮卡丘”和“足球小將”三種不同的動漫人物和行為,其漫畫風(fēng)格和內(nèi)容差別迥異。如何有效地理解漫畫圖片內(nèi)容,對視覺預(yù)訓(xùn)練模型提出了較高的要求。

圖5:在微軟必應(yīng)搜索引擎中,對灌籃高手的動作理解包括:扣籃,運球,搶斷,投籃等

圖6:在微軟必應(yīng)搜索引擎中,對皮卡丘行為的理解比如吃蘋果、吃西瓜,吃雪糕等

圖7:在微軟必應(yīng)搜索引擎中,對足球小將射門動作的特寫
上文中提到的輕量級視覺通用模型以及快速預(yù)訓(xùn)練蒸餾算法目前已成功應(yīng)用于微軟必應(yīng)搜索引擎中。借助微軟亞洲研究院提供的視覺語言多模態(tài)預(yù)訓(xùn)練模型,微軟必應(yīng)圖片搜索功能增強了對漫畫內(nèi)容的理解,可以返回與用戶需求更為匹配的圖片內(nèi)容。
與此同時,微軟必應(yīng)搜索引擎龐大的索引庫對于檢索效率有非常高的要求。微軟亞洲研究院提供的快速預(yù)訓(xùn)練蒸餾方法有效地將預(yù)訓(xùn)練大模型的索引能力遷移到輕量化模型中,在識別準(zhǔn)確率上將現(xiàn)有模型提升了14%,同時極大地優(yōu)化了模型的計算效率,實現(xiàn)了百億圖片的快速推理。
未來的機遇與挑戰(zhàn)
模型輕量化是人工智能未來應(yīng)用落地的核心。隨著視覺技術(shù)、算法、算力和數(shù)據(jù)等不斷完善,模型的復(fù)雜度急劇攀升,神經(jīng)網(wǎng)絡(luò)計算的能耗代價越來越高。輕量化視覺模型高效的計算效率和低廉的部署應(yīng)用成本,能夠在未來更多的實際產(chǎn)品中發(fā)揮巨大優(yōu)勢。除此之外,本地化的輕量級預(yù)訓(xùn)練視覺模型在支持更多服務(wù)的同時,還能夠更好地保護用戶數(shù)據(jù)和隱私。用戶的數(shù)據(jù)將不再需要離開設(shè)備,即可實現(xiàn)模型服務(wù)等功能的遠(yuǎn)程升級。
當(dāng)然,研究人員也意識到輕量級預(yù)訓(xùn)練視覺模型所面臨的挑戰(zhàn):一方面在模型結(jié)構(gòu)設(shè)計上,如何在模型參數(shù)量和推理延時的限制下達(dá)到模型的最優(yōu)學(xué)習(xí)能力,一直以來都是學(xué)術(shù)界和工業(yè)界密切關(guān)注的問題。雖然目前已經(jīng)沉淀了不少有效的模型結(jié)構(gòu),在通用近似定理(UAT)、神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)搜索(NAS)等領(lǐng)域也取得了長足的發(fā)展,但是現(xiàn)有的輕量級預(yù)訓(xùn)練視覺模型和視覺大模型之間仍有差距,有待進(jìn)一步優(yōu)化和提升。另一方面在訓(xùn)練方法上,學(xué)術(shù)界和工業(yè)界針對視覺大模型提出了自監(jiān)督、圖像分類和多模態(tài)等多種訓(xùn)練方法,顯著提升了模型的通用能力。如何針對容量有限的輕量級模型設(shè)計更有效的訓(xùn)練方式,還需要進(jìn)一步的研究和探索。微軟亞洲研究院的研究員們將不斷推進(jìn)輕量級預(yù)訓(xùn)練視覺模型的科研進(jìn)展,也歡迎更多科技同仁共同交流、探索該領(lǐng)域的相關(guān)技術(shù)。?































