導讀
隨著Transformer在視覺中的崛起,Transformer在多模態中應用也是合情合理的事情,甚至以后可能會有更多的類似的paper。先來解釋一下什么多模態,模態譯作modality,多模態譯作multimodel。多模態學習主要有一下幾個方向:表征、轉化、對齊、融合和協同學習。人就是生活在一個多模態的世界里面,文字、視覺、語言都是不同的模態,當我們能夠同時從視覺、聽覺、嗅覺等等來識別當前發生的事情,實際上我們就是在做了多模態的融合。而Transformer is All You Need這篇論文(從Attention is All You Need開始大家都成了標題黨,X is All You Need)是屬于協同學習(Co-learning)的范疇,將多個不同的tasks一起訓練,共享模型參數。
背景介紹
這篇論文出自Facebook AI Research,文章提出了UniT,Unified Transformer model,用一個Transformer模型去同時學習多個不同的tasks,甚至這些tasks的領域都可能不同,從目標檢測到語言理解,一共訓練了7個tasks8個datasets,但是各個beachmark上都取得了不錯的成績。Transformer在各種不同的領域中都取得了極大的成功,例如NLP、images、video和audio,不僅在以上領域表現出色,甚至在一些vision-and-language reasoning的tasks上,比如VQA(visual question answering)也有很強的表現。但是現有的一些多模態的模型基本都是關注某一個領域的不同task或者就是用將近N倍的參數去處理N個不同的領域問題。在17年谷歌提出的《One Model To Learn Them All》[1]中也使用了Transformer encoder-decoder的架構,但是不同的是,它對于每個task都需要一個與之對應的decoder,如下圖。類似的還有MT-DNN[2]和VILBERT-MT[3]等等。
UniT: One transformer to learn them all
用單個模型去訓練跨模態的任務,UniT包括對于不同的task對于的encoder,因為不同模態的數據需要經過處理才能放到同一個網絡,就和人獲得不同模態的信息需要不同的器官一樣。然后這些信息會經過一個共享decoder,最后各個task會有對應的簡單的head進行最后的輸出。UniT有兩種不同模態的輸入:圖像和文本。也就是說只需要兩個對應的encoder就可以訓練7種不同的任務,可以形象地比喻這個網絡有兩個不同的器官(Image encoder和Text encoder)。
Image encoder一些視覺相關的task,比如目標檢測、視覺問答等都需要處理圖像,在UniT中,圖像先經過一個卷積的backbone,然后再用transformer對特征進行編碼,進一步得到編碼后的向量。圖像的處理與DETR[4]類似。xv=B(I),xv是經過卷積神經網絡B得到的特征圖,B采用了ResNet-50,并在C5中使用了空洞卷積。再用encoder Ev得到圖像編碼的向量,這里使用encoder進行編碼時為了區別不同的task加入了task embedding以進行區分,和IPT中的作法類似,因為不同的task它可能關注的點不一樣。
Text encoder對于文本的輸入,采用BERT來進行編碼,BERT是一個在大規模語料庫上預訓練好的模型。給定輸入的文本,和BERT處理一樣,先將文本編碼成tokens的序列{w1, · · · , wS},和image encoder一樣,還需要加入一個wtask來區分不同的task。在實現中,采用了embedding維度是768,12層的BERT。
Domain-agnostic UniT decoder領域不可知的解碼器,和image和text encoder不一樣的是encoder是針對某一特定領域的,但是encoder的輸入可以是來自與image encoder或者是text encoder,所以是領域不可知。對于純視覺、純文本和視覺文本混合的task,encoder的輸入是不一樣的,純視覺和純文本的task的情況下,decoder的輸入就是它們各自encoder的輸出,但是對于視覺文本的task,decoder的輸入是兩個encoder輸出的拼接,這很好理解,因為需要VQA這種同時會有image和text的輸入。
Task-specific output heads每個task可能最后的輸出差別很大,因此最后使用對應的prediction head來進行最后的預測。對于檢測任務來說,最后decoder產生的每個向量都會produce一個輸出,輸出包括類別和bounding box。當然,對于不同的task,decoder輸入的query是不同的。
Experiments
下圖是所用到的8個不同的數據集以及上面的測試結果,可以看到不同任務的區別還是很大的。
根據下圖的對比,其實UniT有些task離SOTA還是差的有點遠,所以這個領域還是有很大的挖掘的空間的。
Conclusion
在這篇論文中,我們可以看到,Transformer確實是可以來處理不同的領域的,跨領域學習確實是個很大的難題,那么Transformer能否成為多模態領域發展的一個跳板呢?我們拭目以待。
Reference論文鏈接:https://arxiv.org/abs/2102.10772
編輯:lyn
-
視覺
+關注
關注
1文章
147瀏覽量
23994 -
paper
+關注
關注
0文章
7瀏覽量
3736 -
Transformer
+關注
關注
0文章
145瀏覽量
6034
原文標題:Facebook提出UniT:Transformer is All You Need
文章出處:【微信號:gh_a204797f977b,微信公眾號:深度學習實戰】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論