兼具CNNTransformer優(yōu)勢,靈活使用歸納偏置,F(xiàn)acebook提出ConViT
AI 研究人員在構(gòu)建新的機(jī)器學(xué)習(xí)模型和訓(xùn)練范式時,通常會使用一組被稱為歸納偏置(inductive biases)的特定假設(shè),來幫助模型從更少的數(shù)據(jù)中學(xué)到更通用的解決方案。近十年來,深度學(xué)習(xí)的巨大成功在一定程度上歸功于強(qiáng)大的歸納偏置,基于其卷積架構(gòu)已被證實在視覺任務(wù)上非常成功,它們的 hard 歸納偏置使得樣本高效學(xué)習(xí)成為可能,但代價是可能會降低性能上限。而視覺 Transformer(如 ViT)依賴于更加靈活的自注意力層,最近在一些圖像分類任務(wù)上性能已經(jīng)超過了 CNN,但 ViT 對樣本的需求量更大。
來自 Facebook 的研究者提出了一種名為 ConViT 的新計算機(jī)視覺模型,它結(jié)合了兩種廣泛使用的 AI 架構(gòu)——卷積神經(jīng)網(wǎng)絡(luò) (CNN) 和 Transformer,該模型取長補短,克服了 CNN 和 Transformer 本身的一些局限性。同時,借助這兩種架構(gòu)的優(yōu)勢,這種基于視覺 Transformer 的模型可以勝過現(xiàn)有架構(gòu),尤其是在小數(shù)據(jù)的情況下,同時在大數(shù)據(jù)的情況下也能實現(xiàn)類似的優(yōu)秀性能。

- 論文地址:https://arxiv.org/pdf/2103.10697.pdf
- GitHub 地址:https://github.com/facebookresearch/convit
在視覺任務(wù)上非常成功的 CNN 依賴于架構(gòu)本身內(nèi)置的兩個歸納偏置:局部相關(guān)性:鄰近的像素是相關(guān)的;權(quán)重共享:圖像的不同部分應(yīng)該以相同的方式處理,無論它們的絕對位置如何。
相比之下,基于自注意力機(jī)制的視覺模型(如 DeiT 和 DETR)最小化了歸納偏置。當(dāng)在大數(shù)據(jù)集上進(jìn)行訓(xùn)練時,這些模型的性能已經(jīng)可以媲美甚至超過 CNN 。但在小數(shù)據(jù)集上訓(xùn)練時,它們往往很難學(xué)習(xí)有意義的表征。
這就存在一種取舍權(quán)衡:CNN 強(qiáng)大的歸納偏置使得即使使用非常少的數(shù)據(jù)也能實現(xiàn)高性能,但當(dāng)存在大量數(shù)據(jù)時,這些歸納偏置就可能會限制模型。相比之下,Transformer 具有最小的歸納偏置,這說明在小數(shù)據(jù)設(shè)置下是存在限制的,但同時這種靈活性讓 Transformer 在大數(shù)據(jù)上性能優(yōu)于 CNN。
為此,F(xiàn)acebook 提出的 ConViT 模型使用 soft 卷積歸納偏置進(jìn)行初始化,模型可以在必要時學(xué)會忽略這些偏置。

soft 歸納偏置可以幫助模型不受限制地學(xué)習(xí)。hard 歸納偏置,例如 CNN 的架構(gòu)約束,可以極大地提高學(xué)習(xí)的樣本效率,但當(dāng)數(shù)據(jù)集大小不確定時可能就會成為約束。ConViT 中的 soft 歸納偏置能夠在不需要時被忽略,以避免模型受到約束限制。
ConViT 工作原理
ConViT 在 vision Transformer 的基礎(chǔ)上進(jìn)行了調(diào)整,以利用 soft 卷積歸納偏置,從而激勵網(wǎng)絡(luò)進(jìn)行卷積操作。同時最重要的是,ConViT 允許模型自行決定是否要保持卷積。為了利用這種 soft 歸納偏置,研究者引入了一種稱為「門控位置自注意力(gated positional self-attention,GPSA)」的位置自注意力形式,其模型學(xué)習(xí)門控參數(shù) lambda,該參數(shù)用于平衡基于內(nèi)容的自注意力和卷積初始化位置自注意力。

如上圖所示,ConViT(左)在 ViT 的基礎(chǔ)上,將一些自注意力(SA)層用門控位置自注意力層(GPSA,右)替代。因為 GPSA 層涉及位置信息,因此在最后一個 GPSA層之后,類 token 會與隱藏表征聯(lián)系到一起。
有了 GPSA 層加持,ConViT 的性能優(yōu)于 Facebook 去年提出的 DeiT 模型。例如,ConViT-S+ 性能略優(yōu)于 DeiT-B(對比結(jié)果為 82.2% vs. 81.8%),而 ConViT-S + 使用的參數(shù)量只有 DeiT-B 的一半左右 (48M vs 86M)。而 ConViT 最大的改進(jìn)是在有限的數(shù)據(jù)范圍內(nèi),soft 卷積歸納偏置發(fā)揮了重要作用。例如,僅使用 5% 的訓(xùn)練數(shù)據(jù)時,ConViT 的性能明顯優(yōu)于 DeiT(對比結(jié)果為 47.8% vs. 34.8%)。

此外,ConViT 在樣本效率和參數(shù)效率方面也都優(yōu)于 DeiT。如上圖所示,左圖為 ConViT-S 與 DeiT-S 的樣本效率對比結(jié)果,這兩個模型是在相同的超參數(shù),且都是在 ImageNet-1k 的子集上訓(xùn)練完成的。圖中綠色折線是 ConViT 相對于 DeiT 的提升。研究者還在 ImageNet-1k 上比較了 ConViT 模型與其他 ViT 以及 CNN 的 top-1 準(zhǔn)確率,如上右圖所示。
除了 ConViT 的性能優(yōu)勢外,門控參數(shù)提供了一種簡單的方法來理解模型訓(xùn)練后每一層的卷積程度。查看所有層,研究者發(fā)現(xiàn) ConViT 在訓(xùn)練過程中對卷積位置注意力的關(guān)注逐漸減少。對于靠后的層,門控參數(shù)最終會收斂到接近 0,這表明卷積歸納偏置實際上被忽略了。然而,對于起始層來說,許多注意力頭保持較高的門控值,這表明該網(wǎng)絡(luò)利用早期層的卷積歸納偏置來輔助訓(xùn)練。

上圖展示了 DeiT (b) 及 ConViT (c) 注意力圖的幾個例子。σ(λ) 表示可學(xué)習(xí)的門控參數(shù)。接近 1 的值表示使用了卷積初始化,而接近 0 的值表示只使用了基于內(nèi)容的注意力。注意,早期的 ConViT 層部分地維護(hù)了卷積初始化,而后面的層則完全基于內(nèi)容。
測試是在 ImageNet-1K 上進(jìn)行的,沒有進(jìn)行知識蒸餾,結(jié)果如下:

AI 模型的性能在很大程度上取決于訓(xùn)練這些模型所用的數(shù)據(jù)類型和數(shù)據(jù)規(guī)模。在學(xué)術(shù)研究和現(xiàn)實應(yīng)用中,模型經(jīng)常受到可用數(shù)據(jù)的限制。ConViT 提出的這種 soft 歸納偏置,在適當(dāng)?shù)臅r候能夠被忽略,這種創(chuàng)造性的想法讓構(gòu)建更靈活的人工智能系統(tǒng)前進(jìn)了一步。