北京商場打折沈陽seo整站優(yōu)化
前言
這一周,LVM在arxiv上剛掛出不久,就被眾多自媒體宣傳為『視覺大模型的GPT時刻』,筆者抱著強烈的好奇心,在繁忙工作之余對原文進行了拜讀,特此筆記并留下讀后感,希望對諸位讀者有所幫助。如有謬誤請見諒并聯(lián)系指出,本文遵守CC 4.0 BY-SA版權協(xié)議,轉載請聯(lián)系作者并注明出處,謝謝。
? \nabla ? 聯(lián)系方式:
e-mail: FesianXu@gmail.com
github: https://github.com/FesianXu
知乎專欄: 計算機視覺/計算機圖形理論與應用(https://www.zhihu.com/column/c_1265262560611299328)
微信公眾號:機器學習雜貨鋪3號店
LVM(Large Vision Models) [1] 自本月1號掛到arxiv以來,引發(fā)了眾多自媒體的追捧,不乏稱之為『視覺大模型的GPT時刻』的盛贊,也有不少大V對此表示持懷疑態(tài)度,這一周一直吃瓜的筆者也非常好奇,想一睹其視覺大模型的GPT風采,于是在工作之余抽空簡單翻閱了下,總得來說還是受益匪淺的。
LVM的整體思想比較直白,既然NLP領域中,基于自回歸的大模型(如GPT、LLaMA等)已經取得令人矚目的成功,何不將視覺的預訓練任務也統(tǒng)一到自回歸中,也許就能產生和GPT一般的『智能』呢?考慮到NLP中,最小處理單元是token(下文翻譯為『令牌』,tokenization則翻譯為『令牌化』),我們不能以圖片的像素級別去進行自回歸,何不將圖片也進行『令牌化』呢?將圖片也轉換成一個個令牌吧!那么我們就可以用NLP原生的預訓練任務,比如自回歸任務進行預訓練了,如Fig 1.所示,將圖片令牌化到若干個令牌后,就將視覺預訓練任務轉化為了『文本』預訓練任務,作者將這樣一個通過視覺令牌構成的句子,稱之為Visual Sentence,也蘊含著將視覺任務文本化的意味?
那么如何將圖像進行令牌化呢?在之前的一些工作,比如VQ-VAE、VQ-GAN中曾經對圖像令牌化有所考慮,讀者可在筆者之前的博文[2]中簡單參考其思路,同時,在BEiT v2 [3] 中也有對VQ-VAE的一些改進(引入更語義的信息),在本篇工作中,作者采用了VQ-GAN對圖片進行令牌化,筆者覺得是由于LVM后續(xù)還需要對視覺令牌進行解碼,生成圖像(見Fig 1的decoder部分),采用VQ-GAN能提供更好的圖像生成能力,向量量化的簡易示意圖可參考Fig 2.所示。
作者在本工作中的一個最大貢獻,就是收集了一套大規(guī)模的用于LVM預訓練的數據集,其中圖像數據形式各種各樣,來自于各種公開數據集,包括:
- 圖片:一般的圖片,如LAION數據集。
- 視頻序列:將視頻抽幀作為圖片序列,此處視頻類型各種各樣,包括一般的視頻,3D物體旋轉的視頻,CAD模型旋轉產生不同視角的圖片序列等等。
- 帶有標注的圖片:比如物體識別,語義分割等圖片,可能包含有包圍框、語義分割、圖片風格轉換、著色等標注在圖片上。
- 帶有標注的視頻:如帶有視頻的分割標注等。
該數據集是一個純圖片數據集,沒有任何配對的文本數據,具體數據收集的細節(jié)請見論文,此處不累述,作者將這個數據集命名為UVD-V1(Unified Vision Dataset),其中包含了50個公開數據集的數據,在將每張圖片大小resize到256*256后,通過VQ-GAN將每個圖片轉化為了256個令牌后(碼表大小8192),產生了4200億個令牌(420B)。此時,每張圖片/視頻序列都可以描述為一個視覺短句,如
[BOS] V1, V2, V3, …, Vn [EOS]
通過自回歸的方式,采用交叉熵損失去建模下一個令牌出現(xiàn)的概率,即是:
L v l m = ∑ i log ? P ( V i ∣ V 1 , ? , V i ? 1 ; Θ ) \mathcal{L}_{vlm} = \sum_{i} \log P(V_{i}|V_{1},\cdots,V_{i-1};\Theta) Lvlm?=i∑?logP(Vi?∣V1?,?,Vi?1?;Θ)
這就是所謂視覺任務語言模型化,因此作者也采用了LLM的開源模型LLaMA作為底座模型建模,大致的模型建模和數據構建部分就簡單介紹到這里,里面很多細節(jié)問題也不在此處討論,筆者主要關注了下論文的實驗和效果展示部分。
在實驗部分,作者通過控制變量法,探討了一些基礎的模型超參數下的模型基礎表現(xiàn),如輸入長度、模型大小、數據集消融等等的影響,具體可見原論文,筆者不進行累述,筆者主要想對論文中的圖像提示詞(prompt)和生成結果進行討論。作者通過圖像提示詞的方式,對諸多傳統(tǒng)的CV任務,如人體關鍵點檢測、物體檢測、視頻幀預測、inpainting、去雨乃至是基礎推理能力進行了研究,如Fig 3.就展示了通過提供一個視頻序列的前15幀,對接續(xù)4幀進行預測的能力,能看到預測的接續(xù)4幀從視覺上看會較為趨同,但是也有一些模型『推理能力』的痕跡在里面,比如最后一個騎摩托的生成結果,有明顯的從近到遠離去的變化。
接下來是通過提供few-shot visual prompt,以<原圖, 目標圖>
的形式喂給LVM進行預測的任務,如Fig 4.所示,在多種傳統(tǒng)CV任務上都有著不俗的表現(xiàn)??紤]到數據集中有著3D渲染的多視角數據,作者還探索了LVM建模3D旋轉的能力(用以證明LVM具有一定的三維視覺理解能力?),如Fig 5.所示,通過提供一系列將同一個3D物體進行某個方向旋轉的visual prompt,LVM可以對接續(xù)的4幀進行預測。
在Fig 6.中,作者還報告了LVM對多種CV任務的組合能力,比如提供的visual prompt是3D旋轉和關鍵點追蹤兩個CV任務的復合體,從生成接續(xù)的3幀來看也能得到合理的結果,表征了LVM似乎能對多種CV任務進行組合,即便這些組合在原始訓練數據中可能不曾出現(xiàn)。
與此同時,想要成為視覺領域的GPT,那么除了基礎的CV能力之外,其邏輯推理能力也不能落下,作者提供了幾個visual prompt,給讀者稍微一些遐想。如Fig 7,LVM對一些規(guī)律性的CV問題,比如圖片內物體遞增、光照變化、尺度放縮等有所感知。如Fig 8.所示,LVM能對一些找規(guī)律的題目進行一些感知。GPT有著諸多體現(xiàn)『智能』的表現(xiàn),如
- 強大的邏輯推理能力
- 代碼理解和生成能力
- 分步思考,思維鏈能力
- 類人的理解能力,包括一些幽默感、反諷、情緒理解等能力
- 世界知識:包括事實性知識 (factual knowledge) 和常識 (commonsense)
- …
其中的邏輯推理能力,可以說是最接近我們通常理解的『智能』的能力,我們之前展示的LVM能力,是否足以證實LVM具有和GPT一般的邏輯推理能力呢?
筆者認為似乎論據仍然不足,首先從論文提供的數據中,能看出推理能力的是Fig 8中展示的幾何圖形找規(guī)律任務,但是我們是從結果上的正確與否確定的,我們是否能『探知』到LVM的思考過程呢?完全沒有看到,如下圖所示,不像LLM能夠通過自我反省的方式,讓它吐出推理的過程,進而判斷是否具有邏輯推理能力,以及模型推理能力的強弱。在LVM中我們只能通過給定一些具有邏輯性的視覺任務(而且還是人類認為具有邏輯性的題目,也許LVM會通過其他信號去擬合,而不是通過『邏輯推理』的方式?),通過直接輸出的結果進行檢測,正如筆者所說,這個方式并不是一個合適的探知推理能力的方法。此外,筆者認為推理能力依賴一些世界知識,比如實體識別能力,實體解釋能力等,從文章中似乎沒有看出明顯的體現(xiàn)?LVM是否可以解釋什么是蘋果?什么是梨子?蘋果和梨子之前有什么共同點和差異?這些能力沒法從現(xiàn)在的LVM中看到。目前的視覺提示詞的方式,似乎不容易從中探知LVM的世界知識能力?
筆者認為單純的視覺大模型很難建模完整的邏輯推理能力(當然也不是不可能,畢竟人類以視覺識別文本,文本完全可以渲染成圖片作為LVM輸入,從而LVM變?yōu)橥ㄓ玫亩嗄B(tài)GPT,但是我們?yōu)槭裁匆釛壩谋灸?#xff1f;),邏輯推理能力依賴一些世界知識和語義,脫離了文本很難建模,并且文本作為表達需求和可以作為自我解釋的手段,也是一個通用AGI模型不能舍棄的。因此筆者對LVM的評價是:一個很不錯和有啟發(fā)的工作,但是稱之為視覺大模型的GPT時刻似乎不妥,稱之為AGI更是有捧殺之意了。
當然,對于筆者來說這篇工作還有更多值得思考的,比如作者采用了視覺令牌化作為模型的直接輸入進行建模這塊,筆者就深表贊同。筆者在工作中也嘗試以各種角度落地多模態(tài)技術,無論是從工業(yè)界遇到的問題,還是學術界研究的角度來看,視覺令牌化都是一個非常值得探索的技術。之前筆者在項目實踐中覺得視覺令牌化應該是對視覺語義的提取,會失去不少視覺細節(jié)信息,但是從Fig 4來看,似乎LVM對很多偏向low-level的視覺任務都有不錯的表現(xiàn)(包括未展示的de-rain任務),這些low-level的任務對視覺的細粒度信息應該還是有所需要的,因此這一點比較刷新作者的認識,筆者猜想可能是由于采用了VQ-GAN技術導致的視覺令牌中可以攜帶更多細粒度的視覺信息?畢竟在實踐中,視覺詞表是一個偏向于利用率不充分的存在,也許采用了VQ-GAN技術后可以更加充分利用詞表,進而對細粒度有所感知。當然,這些都是筆者的一些隨性猜想罷了,希望拋磚引玉得到各位讀者的指教。
Reference
[1]. Bai, Yutong, et al. “Sequential Modeling Enables Scalable Learning for Large Vision Models.” arXiv preprint arXiv:2312.00785 (2023).
[2]. https://blog.csdn.net/LoseInVain/article/details/129224424,【論文極速讀】VQ-VAE:一種稀疏表征學習方法
[3]. Peng, Zhiliang, Li Dong, Hangbo Bao, Qixiang Ye, and Furu Wei. “Beit v2: Masked image modeling with vector-quantized visual tokenizers.” arXiv preprint arXiv:2208.06366 (2022)