自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

新聞 人工智能
來(lái)自港大、騰訊 AI Lab、牛津大學(xué)的研究者用 Transformer 振興 CNN 注意力。

 自監(jiān)督表征學(xué)習(xí)近兩年十分火熱。機(jī)器學(xué)習(xí)界的三位泰斗 Geoffroy Hinton、 Yann Lecun 、 Yoshua Bengio 一致認(rèn)為自監(jiān)督學(xué)習(xí)有望使 AI 產(chǎn)生類人的推理能力,其中 Hinton 與 Lecun 近兩年也在 ICML / NeurIPS 中發(fā)表自監(jiān)督表征學(xué)習(xí)的研究工作。

可以說(shuō)在機(jī)器學(xué)習(xí)頂會(huì)發(fā)表自監(jiān)督表征學(xué)習(xí)的文章,是與 Hinton 和 Lecun 站到了同一賽道上。而今年的 NeurIPS 2021,Lecun 剛發(fā)推感嘆他與另外一位 CV 泰斗 Jean Ponce 的自監(jiān)督投稿 VICReg 被拒掉了,可見(jiàn)在機(jī)器學(xué)習(xí)領(lǐng)域,自監(jiān)督學(xué)習(xí)的競(jìng)爭(zhēng)激烈程度。另外一方面,最近熱門的 Transformer 給計(jì)算機(jī)視覺(jué)算法帶來(lái)了全面的升級(jí)。那么 Transformer 跟自監(jiān)督表征學(xué)習(xí)在一起會(huì)迸發(fā)出怎樣的火花?

來(lái)自港大、騰訊 AI Lab、牛津大學(xué)的學(xué)者在 NeurIPS 2021 發(fā)表的文章會(huì)帶來(lái)一個(gè)啟發(fā)性的答案。

該研究受現(xiàn)有自監(jiān)督表征學(xué)習(xí)架構(gòu) BYOL 的啟示,結(jié)合前沿的 Transformer ,提出利用 Transfomer 來(lái)提升 CNN 注意力的自監(jiān)督表征學(xué)習(xí)算法。本文將現(xiàn)有的架構(gòu)歸為 C-stream,另提出 T-stream。在 CNN 骨干網(wǎng)絡(luò)的輸出并行接入 T-stream。將 Transformer 置于 T-stream 中提升 CNN 輸出的注意力,并以此結(jié)果來(lái)監(jiān)督 CNN 自身的輸出,從而達(dá)到提升 CNN 骨干網(wǎng)絡(luò)注意力的效果。在現(xiàn)有的標(biāo)準(zhǔn)數(shù)據(jù)集中,也進(jìn)一步提升了 CNN 骨干網(wǎng)絡(luò)在下游識(shí)別任務(wù)的各類性能。

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE
  • 論文地址:https://arxiv.org/pdf/2110.05340.pdf
  • Github 地址:https://github.com/ChongjianGE/CARE

背景和啟示:自監(jiān)督表征學(xué)習(xí)與樣本對(duì)比

基于圖像內(nèi)容的自監(jiān)督表征學(xué)習(xí)目標(biāo)為訓(xùn)練一個(gè)普適的視覺(jué)特征編碼器(encoder backbone)。在給定神經(jīng)網(wǎng)絡(luò)架構(gòu)(如 VGG, ResNet)的情況下,擺脫數(shù)據(jù)標(biāo)注依賴構(gòu)建自監(jiān)督的過(guò)程,進(jìn)行從零開(kāi)始的初始化訓(xùn)練(pretext training)。將訓(xùn)練好的網(wǎng)絡(luò)認(rèn)為類似于用 ImageNet 標(biāo)注數(shù)據(jù)預(yù)訓(xùn)練的結(jié)果,后續(xù)將該網(wǎng)絡(luò)進(jìn)行一系列下游識(shí)別任務(wù)的遷移(downstream finetuning),包括圖像分類,物體檢測(cè)和分割。由于在初始化訓(xùn)練中未使用數(shù)據(jù)標(biāo)簽做約束,預(yù)訓(xùn)練的網(wǎng)絡(luò)表征并不針對(duì)下游具體的某個(gè)識(shí)別任務(wù),從而具備普適的視覺(jué)表征能力。其潛在的應(yīng)用在于利用海量的互聯(lián)網(wǎng)數(shù)據(jù),擺脫人工標(biāo)注的、依賴自適應(yīng)學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)的視覺(jué)表征能力,從而能夠受益于一系列的下游識(shí)別任務(wù)。自監(jiān)督學(xué)習(xí)在下游識(shí)別任務(wù)中可以媲美有監(jiān)督學(xué)習(xí)。

在自監(jiān)督表征學(xué)習(xí)的研究中,對(duì)比學(xué)習(xí) (contrastive learning) 為常用的方法。給定一批未標(biāo)注的數(shù)據(jù),以當(dāng)前一個(gè)數(shù)據(jù)為正樣本,其余數(shù)據(jù)為負(fù)樣本。對(duì)比學(xué)習(xí)通過(guò)這樣的方式,構(gòu)建正負(fù)樣本及其增廣的數(shù)據(jù)來(lái)確定損失函數(shù)從而訓(xùn)練網(wǎng)絡(luò)。其中一個(gè)輸入數(shù)據(jù)通過(guò)兩路網(wǎng)絡(luò)形成兩個(gè)不同的 view,進(jìn)行后續(xù)的樣本對(duì)比。在處理海量數(shù)據(jù)的過(guò)程中,有效的從數(shù)據(jù)中構(gòu)建樣本和防止模型坍塌成為了熱門研究方向。從 MoCo[a]的隊(duì)列設(shè)計(jì)及網(wǎng)絡(luò)動(dòng)量更新開(kāi)始,一系列的研究工作應(yīng)運(yùn)而生。這里介紹幾個(gè)代表性的工作,為簡(jiǎn)潔起見(jiàn),算法框架圖中的映射器 (projector) 沒(méi)有畫出:

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

SimCLR

上圖為 Hinton 團(tuán)隊(duì)的 SimCLR[b]算法框架,其采用 large batch 的設(shè)計(jì),擺脫隊(duì)列存儲(chǔ)的依賴,直接對(duì)正負(fù)樣本進(jìn)行對(duì)比構(gòu)造損失來(lái)更新網(wǎng)絡(luò)。

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

BYOL

上圖為 DeepMind 團(tuán)隊(duì)的 BYOL[c]算法框架,其單純利用當(dāng)前樣本進(jìn)行自身的多種數(shù)據(jù)增廣進(jìn)行對(duì)比。同時(shí)引入 projector 來(lái)擺脫上下游任務(wù)對(duì)于網(wǎng)絡(luò)的影響。在更新網(wǎng)絡(luò)時(shí)也采用了動(dòng)量更新的方式防止模型的坍塌。

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

MoCo V3

上圖為 Kaiming He 團(tuán)隊(duì)的 MoCo V3[d],其將 transformer 做為學(xué)習(xí)編碼器(encoder backbone),利用現(xiàn)有的自監(jiān)督學(xué)習(xí)框架進(jìn)行樣本對(duì)比學(xué)習(xí)。同時(shí)也是將 vision transformer (ViT[e])作為編碼器引入自監(jiān)督學(xué)習(xí)中的工作之一。

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

本文方法

與 MoCo V3 的出發(fā)點(diǎn)不同,本文的工作旨在利用 transformer 的自注意力機(jī)制來(lái)提升 CNN 編碼器的性能。其中將原有的 CNN 框架歸為 C-stream,然后提出包含 Transformer 的 T-stream。兩個(gè) stream 同時(shí)接收 CNN 編碼器的輸出,然后用 T-stream 監(jiān)督 C-stream。相比于 Yann Lecun 團(tuán)隊(duì)的 Barlow Twins[f]利用協(xié)方差矩陣衡量?jī)蓚€(gè) view 的冗余,本文引入可學(xué)習(xí)的 transformer 能夠自適應(yīng)的在不同網(wǎng)絡(luò)訓(xùn)練狀態(tài)下提供注意力的輔助,從而更有效的提升 CNN 編碼器的視覺(jué)表征能力。

本文的方法:CARE (CNN Attention REvitalization)

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

Proposed pipeline

本文提出的算法流程圖如上所示。首先將輸入圖像x進(jìn)行兩次不同的預(yù)處理得到兩個(gè)正樣本x_1、x_2。然后,用 C-stream 的兩個(gè) CNN 編碼器分別提取x_1、x_2的特征,其中將一路 CNN 提取的特征輸入映射器 projector1 和預(yù)測(cè)器 predictor1 得到高維特征f_1(x),同時(shí)將另一路 CNN 提取的特征僅輸入動(dòng)量更新的映射器 (momentum projector1) 得到高維特征f_2(x)。此外,雙路 CNN 提取的這兩組特征也會(huì)被同時(shí)輸入到 T-stream。其中一路的 Transformer1 提取具有空間注意力的特征,并將此特征輸入到映射器 projector2 和預(yù)測(cè)器 predictor2 得到高維特征f_3(x)。另一路動(dòng)量更新的 Transformer 同樣提取 CNN 特征并輸入動(dòng)量更新的映射器 momentum projector2 得到高維特征f_4(x)。

至此,算法框架的前向過(guò)程已經(jīng)設(shè)計(jì)完成。后續(xù)通過(guò)對(duì)f_1(x)、f_2(x)、f_3(x)、f_4(x)進(jìn)行針對(duì)性的損失函數(shù)設(shè)計(jì)進(jìn)行反向傳播的學(xué)習(xí)。本算法在反向傳播過(guò)程中,僅更新 C-stream 以及 T-stream 的其中一路,而對(duì)應(yīng)的另外一路則利用動(dòng)量更新 (momentum update) 的手段進(jìn)行。具體形式在后續(xù)介紹。

網(wǎng)絡(luò)架構(gòu)設(shè)計(jì):本算法旨在通過(guò)自監(jiān)督學(xué)習(xí)框架的搭建,利用自定義的輔助任務(wù)來(lái)學(xué)習(xí)一個(gè)能夠有效提取圖像特征的 CNN 編碼器。本算法對(duì)任意的 CNN 編碼器均具有一定的適用性,因此在 CNN 編碼器的選取上有著很好的靈活性。例如,ResNet50,ResNet101 以及 ResNet152 皆可以作為本算法的 CNN 編碼器。Transformer 的結(jié)構(gòu)如下圖所示:

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

Transformer 結(jié)構(gòu)示意圖

該 Transformer 以 CNN 編碼器輸出為輸入,并輸出f_1(x)、f_2(x)、f_3(x)、f_4(x)更具空間專注度性質(zhì)的特征。本算法所設(shè)計(jì)的 Transformer 主要包括 4 個(gè)串行的模塊,其中單個(gè)模塊如上圖所示。單個(gè)模塊主要包含由一個(gè) 1x1 的卷積層,一個(gè)多頭自注意力層(Multi-head Self-attention, MHSA)[g]以及額外一個(gè) 1x1 卷積層組成。其中 MHSA 層可以很好地學(xué)習(xí)到具有空間專注度性質(zhì)的特征。此外,映射器 projector 和預(yù)測(cè)器 predictor 的主要結(jié)構(gòu)為多層感知器(Multi-layer perceptron)。兩者皆包含兩個(gè)全線性連接層(fully connected layers),一個(gè)激活層以及一個(gè)標(biāo)準(zhǔn)化層(batch normalization)。

本文設(shè)計(jì)的損失函數(shù)基于流程框架中的四個(gè)輸出f_1(x)、f_2(x)、f_3(x)、f_4(x)。其中本文用

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

表示 C-stream 的損失項(xiàng),用

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

表示 T-stream 的損失項(xiàng)。其具體形式如下:

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

此外,本文用 T-stream 的輸出來(lái)監(jiān)督 C-stream 的輸出。這個(gè)約束用

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

表示,具體形式如下:

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

該約束表明在自監(jiān)督學(xué)習(xí)中,C-stream 的輸出會(huì)與 T-stream 的輸出盡量相似。所以最終整體的損失函數(shù)可以由如下表示:

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

在計(jì)算整體損失后,本算法只后向傳播梯度更新 C-stream 和 T-stream 的上支。其下路分支主要通過(guò)動(dòng)量更新的方式來(lái)更新參數(shù)。所謂動(dòng)量更新指的主要是利用當(dāng)前 C-Stream 和 T-Stream 的上路分支的參數(shù),以及其之前時(shí)刻的參數(shù)信息,來(lái)動(dòng)量更新其下路分支的網(wǎng)絡(luò)參數(shù)。在網(wǎng)絡(luò)訓(xùn)練結(jié)束后,只保留 CNN encoder1 作為目標(biāo)編碼器。該編碼器隨后會(huì)用做下游識(shí)別任務(wù)的 backbone 網(wǎng)絡(luò)。

可視化分析:CNN 編碼器的注意力展示

在自監(jiān)督訓(xùn)練結(jié)束后,本文對(duì) CNN 編碼器進(jìn)行特征響應(yīng)的可視化展示,從而觀察編碼器在訓(xùn)練后對(duì)視覺(jué)內(nèi)容關(guān)注程度的變化。本文對(duì)同樣的編碼器進(jìn)行兩種自監(jiān)督策略,一種是只使用 C-stream 的結(jié)構(gòu)進(jìn)行訓(xùn)練,一種是使用全部結(jié)構(gòu)進(jìn)行訓(xùn)練。本文對(duì)這兩種訓(xùn)練策略下的同樣的編碼器進(jìn)行可視化展示,如下圖所示:

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

CNN 編碼器的注意力可視化展示

從圖中可以看到,第一行為輸入圖像,第二行為單純利用 C-stream 結(jié)構(gòu)進(jìn)行訓(xùn)練的編碼器的注意力,第三行為利用本文提出 CARE 結(jié)構(gòu)進(jìn)行訓(xùn)練的編碼器的注意力。通過(guò)觀察注意力在圖像上面的分布和強(qiáng)度可以看出,本文提出的 CARE 算法訓(xùn)練的編碼器對(duì)圖像中的物體更敏感,注意力更強(qiáng)烈。

實(shí)驗(yàn)結(jié)果

在實(shí)驗(yàn)過(guò)程中,本文從多個(gè)方面驗(yàn)證提出算法的有效性。包括上游訓(xùn)練好的模型在線性分類問(wèn)題中的性能、在半監(jiān)督數(shù)據(jù)中的效果,以及在下游物體檢測(cè)和分割任務(wù)中的性能。在骨干網(wǎng)絡(luò)模型選擇方面,本文選取了 CNN 通用的 ResNet 系列模型進(jìn)行訓(xùn)練。對(duì)比模型為 ResNet 系列和 Transformer 結(jié)構(gòu)。驗(yàn)證的方式為利用不同的自監(jiān)督學(xué)習(xí)算法在多種模型上進(jìn)行各類任務(wù)不同訓(xùn)練階段中的性能驗(yàn)證。在本文算法的訓(xùn)練過(guò)程中,使用 8 卡 V100 算力即可進(jìn)行模型訓(xùn)練的收斂。在當(dāng)前海量算力的視覺(jué)自監(jiān)督表征學(xué)習(xí)任務(wù)下相對(duì)算力友好。

上游任務(wù)線性分類的比較。在固定 ResNet-50 為骨干網(wǎng)絡(luò)情況下,針對(duì)不同的自監(jiān)督學(xué)習(xí)算法進(jìn)行訓(xùn)練,展示在不同訓(xùn)練階段的線性分類效果。如下圖所示,本文提出的 CARE(CNN attention revitalization)方法取得的優(yōu)異的表現(xiàn)。

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

此外,本文也與 BYOL 方法在 ResNet 不同骨干網(wǎng)絡(luò)、不同訓(xùn)練階段的性能進(jìn)行對(duì)比,如下圖所示。本文的 CARE 方法在不同骨干網(wǎng)絡(luò)下性能更佳。

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

以上為相同骨干網(wǎng)絡(luò)、不同學(xué)習(xí)算法的對(duì)比。本文同時(shí)也對(duì)比了 Transformer 的骨干網(wǎng)絡(luò)以及現(xiàn)有的學(xué)習(xí)算法。效果如下圖所示,跟 Transformer 結(jié)構(gòu)相比,本文利用 ResNet 網(wǎng)絡(luò),在參數(shù)量相近的情況下,取得了更好的結(jié)果。

Transformer振興CNN骨干網(wǎng)絡(luò),港大、騰訊視覺(jué)自監(jiān)督表征學(xué)習(xí)CARE

更多的實(shí)驗(yàn)對(duì)比,以及 CARE 算法的 Ablation Study 詳見(jiàn)文章中的實(shí)驗(yàn)章節(jié)。

總結(jié)

綜上,本文提出了一個(gè)利用 Transformer 結(jié)構(gòu)來(lái)輔助 CNN 網(wǎng)絡(luò)訓(xùn)練的視覺(jué)自監(jiān)督表征學(xué)習(xí)框架。其核心貢獻(xiàn)在于利用一種網(wǎng)絡(luò)結(jié)構(gòu)的特性(即 Transformer 的注意力提升特性),在訓(xùn)練中監(jiān)督目標(biāo)網(wǎng)絡(luò)(即 CNN 骨干網(wǎng)絡(luò)),從而使得網(wǎng)絡(luò)特性能夠得到遷移并提升目標(biāo)網(wǎng)絡(luò)性能的效果。在視覺(jué)識(shí)別的各類任務(wù)中也得到了充分驗(yàn)證。本文的框架對(duì)自監(jiān)督表征學(xué)習(xí)具有很強(qiáng)的啟示意義,現(xiàn)有網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)繁多,功能各異。如何利用這些網(wǎng)絡(luò)獨(dú)有的特點(diǎn),進(jìn)而集成在一個(gè)網(wǎng)絡(luò)中達(dá)到渾然一體的目標(biāo),也是后續(xù)自監(jiān)督表征學(xué)習(xí)可探索的重要方向。

 

責(zé)任編輯:張燕妮 來(lái)源: 機(jī)器之心Pro
相關(guān)推薦

2025-01-09 11:14:13

2017-08-15 22:35:54

自監(jiān)督學(xué)習(xí)視覺(jué)傳遞

2025-03-10 08:47:00

模型AI訓(xùn)練

2022-04-26 09:44:29

算法庫(kù)EasyCV開(kāi)源

2024-06-13 11:44:43

2024-07-30 11:20:00

圖像視覺(jué)

2024-05-24 15:53:20

視覺(jué)圖像

2021-07-08 15:39:50

機(jī)器學(xué)習(xí)人工智能計(jì)算

2025-04-25 08:00:00

2023-07-22 13:17:33

人工智能框架

2020-06-19 10:54:07

代碼開(kāi)發(fā)工具

2021-07-14 07:30:51

網(wǎng)絡(luò)建設(shè)互聯(lián)網(wǎng)骨干網(wǎng)絡(luò)

2019-07-10 05:47:37

GAN無(wú)監(jiān)督表征學(xué)習(xí)機(jī)器學(xué)習(xí)

2023-12-28 09:49:19

AI工具模型

2020-10-05 22:00:59

深度學(xué)習(xí)編程人工智能

2025-03-10 08:53:00

2012-03-12 10:01:21

2013-09-18 09:24:47

2012-03-27 16:40:54

2024-11-21 10:58:05

模型AI
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)