Masked Autoencoders Are Scalable Vision Learners(2021)

原論文網址
回到目錄
撰寫日期: 2022/4/20

概述

Masked Autoencoder(MAE)是以Vision Transformer為基礎所設計的Self-Supervised模型。由非對稱的encoder-decoder架構組成,encoder負責處理沒被刪去的patches之訊息,decoder則負責從latent space的特徵重建回原圖。另外,作者經由實驗發現,遮蓋75%的patches能讓MAE的學習效果最佳化,並且同時可以將計算速度加快約3倍(因為資料量被遮蓋的過程所減少了)。以此方法訓練的ViT-H模型,在不使用額外資料集的條件下,於ImageNet1K上取得了87.8%的最高準確率。

下圖是模型的大致結構
img01

Intriduction

Masked Autoencoding是透過遮蓋部分訊息,讓模型學習生成這些被刪除的資訊。此方法在NLP領域的模型上成效斐然,然而,在vision相關任務上卻沒有甚麼成果。主要原因可能是因為:(1)在CV上,CNN在近幾年有著主宰地位,但CNN顯然在結構上跟NLP的主流模型Transformer,有著非常大的差距。因為CNN沒有辦法套用Masked Token這種Indicator,以及Position Embedding這種封裝位置資訊的方法。不過,在ViT問世後,這些結構上的問題都可以被迎刃而解。(2)語言的資訊密度顯然比圖像高出許多,因此,預測一段語句中缺失的單詞是需要對語言有充足的了解。但是,若是要升成一個圖像中缺失的patch,只要一點點對於物件跟場景的理解,就能從鄰近的patch判斷出缺失的部份。所以在實作上,必須隨機遮蓋住大面積的圖像,才能讓這個生成任務足夠困難,讓模型學到足夠整體性的圖像資訊才能成功還原缺失的patch。

Approach

MAE模型的任務是從片段的資訊,還原回原始的圖像。跟普通的Autoencoder一樣,encoder將輸入映射到潛在特徵空間(latent representation),而decoder能夠將這些潛在特徵重建回原本的輸入。為了能夠讓模型只讀到部分的圖像資訊,MAE的設計使用了非對稱的結構。

img01

ImageNet Experiments

使用ImageNet-1K(IN1K)在ViT Large模型上做self-supervised pre-training,並且以(1)end-to-end fine-tuning
或(2)linear probing去評估模型的性能。下圖為3種不同訓練方式的比較,可見MAE效果較佳。

img01

以下是對MAE進行的一系列實驗

img01

img01

img01

img01

img01

img01

img01

img01

Comparisons with self-supervised methods

可以發現,相較於先前的其他ViT self-supervised learning方法,MAE不但表現的更好,而且隨著模型的規模越大,與其他方法的差距也跟著放大。因此,MAE會是一種能夠有效訓練高參數模型的做法,而且在執行效率以及方法設計上都比較簡單能夠實作。

img01

Comparisons with supervised pre-training

根據ViT原論文,使用IN1K訓練出來的ViT模型,在參數量過大時反而性能會下降,必須使用更大規模的資料集(JFT-300M),才能訓練好高參數量的ViT-L。而本文使用的MAE方法,用較小規模的IN1K資料集,就能夠有效使高參數模型之性能能夠提升(下圖可見MAE訓練出的模型和JFT-300M這種超大資料集pretrain出來的模型,同樣能夠受益於參數量的提升),且明顯比supervised的訓練方式來的好。

img01