以下為盧志武教授在機器之心舉辦的ChatGPT 及大模型技術大會上的演講內容,機器之心進行了不改變原意的編輯、整理:
大家好,我是中國人民大學盧志武。我今天報告的題目是《ChatGPT 對多模態通用生成模型的重要啟發》,包含四部分內容。
首先,ChatGPT 帶給我們一些關於研究範式革新的啟發。第一點就是要使用「大模型 大數據」,這是一個已經被再三被驗證過的研究範式,也是 ChatGPT 的基礎研究範式。特別要強調一點,大模型大到一定程度的時候才會有湧現(emergent)能力,例如 In-context learning、CoT 推理等能力,這些能力令人感到非常驚艷。
第二點是要堅持「大模型 推理」,這也是 ChatGPT 讓我印象最深刻的一點。因為在機器學習或人工智慧領域,推理被公認為是最難的,而 ChatGPT 在這一點上也有所突破。當然,ChatGPT 的推理能力可能主要來自於代碼訓練,但是否有必然的連結還不能確定。在推理方面,我們應該下更多的工夫,搞清楚它到底來自什麼,或者還有沒有別的訓練方式把它的推理能力進一步增強。
第三點是大模型一定要和人類對齊(alignment),這是ChatGPT 在工程角度或模型落地角度給我們的重要啟示。如果沒有與人類對齊的話,模型會產生許多有害的訊息,讓模型無法使用。第三點不是說提高模型的上限,而是模型的可靠性和安全性的確非常重要。
ChatGPT 的問世對許多領域,包括我自己,都有非常大的觸動。因為我自己做多模態做了好幾年,我會開始反思為什麼我們沒有做出這麼厲害的模型。
ChatGPT 是在語言或文字上的通用生成,下面我們來了解多模態通用生成領域的最新進展。多模態預訓練模型已開始向多模態通用生成模型轉變,並有了一些初步的探索。首先我們來看看Google 2019 年提出的 Flamingo 模型,下圖就是它的模型結構。
Flamingo 模型架構的主體是大型語言模型的解碼器(Decoder),即上圖右側藍色模組,在每個藍色模組之間加了一些adapter 層,左側視覺的部分是添加了視覺編碼器(Vision Encoder)和感知器重採樣器(Perceiver Resampler)。整個模型的設計就是要把視覺的東西透過編碼和轉換,經過 adapter,跟語言對齊,這樣模型就可以為圖像自動產生文字描述。
Flamingo 這樣的架構設計有什麼好處呢?首先,上圖中的藍色模組是固定不動的(frozen),其中包括語言模型 Decoder;而粉紅色模組本身的參數量是可以控制的,所以 Flamingo 模型實際上訓練的參數量是很少的。所以大家不要覺得多模態通用生成模型很難做,其實沒有那麼悲觀。經過訓練的 Flamingo 模型就可以做很多基於文字生成的通用任務,當然輸入還是多模態的,例如做影片描述、視覺問答、多模態對話等。從這個角度看 Flamingo 算是一個通用生成模型。
第二個範例是前段時間新發布的BLIP-2 模型,它是基於BLIP-1 改進的,它的模型架構和Flamingo 特別像,基本上還是包含圖像編碼器和大型語言模型的解碼器,這兩部分是固定不動的, 然後中間加了一個具有轉換器作用的Q-Former—— 從視覺轉換到語言。那麼,BLIP-2 真正需要訓練的部分就是 Q-Former。
如下圖所示,先將一張圖(右邊的圖)輸入到Image Encoder,中間的Text 是使用者提出的問題或指令,經過Q-Former 編碼以後輸入到大型語言模型裡,最後把答案生成出來,大概是這樣一個生成過程。
這兩個模型的缺點很明顯,因為它們出現的比較早或剛出現,還沒有考慮ChatGPT 用到的工程手段,至少在圖文對話或多模態對話上沒有做指令微調,所以它們整體的生成效果不盡人意。
第三個是微軟最近發布的 Kosmos-1,它的結構特別簡單,並且只用圖文對進行訓練,多模態資料比較單一。 Kosmos-1 跟上面兩個模型最大的差異是:上面兩個模型中的大語言模型本身是固定不動的,而Kosmos-1 中的大型語言模型本身是要經過訓練的,因此Kosmos-1 模型的參數量只有16 億,而16 億參數的模型未必有湧現能力。當然,Kosmos-1 也沒考慮圖文對話上的指令微調,導致它有時也會胡說八道。
下一個例子是Google的多模態具身視覺語言模型 PaLM-E。 PaLM-E 模型和前三個例子是大同小異的,PaLM-E 也用了 ViT 大型語言模型。 PaLM-E 最大的突破是它終於在機器人領域探索了一下多模態大語言模型的落地可能性。 PaLM-E 嘗試了第一步探索,但它考慮的機器人任務類型很有限,並不能達到真正的通用。
最後一個例子是GPT-4—— 在標準資料集上給出了特別驚人的結果,很多時候它的結果甚至比目前在資料集上訓練微調過的SOTA 模型還要好。這可能會讓人特別震驚,但實際上這個評測結果並不代表什麼。我們在兩年前做多模態大模型時就發現大模型的能力不能在標準數據集上評估,在標準數據集上表現好並不代表實際使用的時候效果好,這兩個之間有很大的gap。基於這個原因,我對目前的 GPT-4 有些許失望,因為它只給出了標準資料集上的結果。而且目前可用的 GPT-4 還不是視覺版的,只是純文字版的。
上面幾個模型整體來說是做通用的語言生成,輸入是多模態輸入,下面這兩個模型就不一樣了—— 不僅要做通用語言生成,還要做視覺生成,既能生成語言也能生成影像。
首先是微軟的 Visual ChatGPT,我簡單評價一下。這個模型的想法特別簡單,比較多是產品設計上的考量。與視覺有關的生成有很多種,還有一些視覺偵測模型,這些不同任務的輸入、指令千差萬別,問題就是怎麼用一個模型把這些任務全部包含進來,所以微軟設計了Prompt 管理器,核心部分用到了OpenAI 的ChatGPT,相當於把不同視覺產生任務的指令,透過ChatGPT 翻譯過來。使用者的問題是自然語言描述的指令,透過 ChatGPT 把它翻譯成機器能懂的指令。
Visual ChatGPT 就是做了這樣一個事情。所以從產品的角度看確實很好,但從模型設計的角度看卻沒有新的東西。所以整體從模型的層次看是一個「縫合怪」,沒有統一的模型訓練,導致不同模態之間沒有互相促進。我們為什麼要做多模態,因為我們相信不同模態資料之間一定是互相幫助的。而 Visual ChatGPT 也沒考慮多模態產生指令微調,它的指令微調只是依賴 ChatGPT 本身。
下一個例子是清華朱軍老師的團隊發布的 UniDiffuser 模型。這個模型從學術角度真正做到了多模態輸入生成文字、生成視覺內容,這得益於他們基於transformer 的網絡架構U-ViT,類似於Stable Diffusion 最核心的部件U-Net,進而把圖像的生成和文本的生成統一在一個框架裡。這個工作本身是很有意義的,但還是比較初期,例如只考慮了 Captioning 和 VQA 任務,沒有考慮多輪對話,也沒有做多模態生成上的指令微調。
前面評價了這麼多,那我們自己也做了一個產品叫 ChatImg,如下圖。整體來說,ChatImg 包含圖像編碼器、圖文多模態編碼器和文字解碼器,和 Flamingo、BLIP-2 是類似的,但我們考慮的更多,具體實現的時候有細節差異。
ChatImg 最大的優點是可以接受視訊輸入。我們特別重視多模態通用生成,包括生成文字、生成影像、生成影片。我們希望在這一個框架裡實現多種生成任務,最終希望接入文字生成視訊。
第二,我們特別重視真實用戶的數據,我們希望得到真實用戶數據以後不停優化生成模型本身,提高它的能力,所以我們發布了 ChatImg 應用。
下圖是我們測試的一些例子,作為一個初期模型,雖然還有一些做得不好的地方,但總體來說 ChatImg 對圖片的理解還是可以的。例如,ChatImg 可以在對話中產生畫作的描述,也能做一些 In-context learning。
上圖第一個例子描述了《星夜》這幅畫,在描述中ChatImg 稱梵谷是美國畫家,你告訴它錯了,它馬上就可以糾正過來;第二個例子ChatImg 對圖中的物體做出了物理推斷;第三個例子是我自己拍的一張照片,這個照片裡面有兩道彩虹,它準確地識別到了。
我們注意到上圖第三和第四個例子涉及情緒方面的問題。這其實跟我們接下來要做的工作有關,我們想把 ChatImg 接入機器人裡面。現在的機器人通常是被動的,所有的指令全部都是預設的,看起來很呆板。我們希望接入 ChatImg 的機器人可以主動和人交流。怎麼做到這一點呢?首先機器人一定要能感受到人,可能是客觀地看到世界的狀態和人的情緒,也可能是獲得一種反映;然後機器人才能理解,才能跟人主動溝通。透過這兩個例子我感覺這個目標是可以實現的。
最後,我總結今天的報告。首先,ChatGPT 和 GPT-4 帶來了研究範式的革新,我們所有人都應該去積極擁抱這個變化,不能抱怨,不能找藉口說沒有資源,只要去面對這個變化,總有辦法克服困難。多模態研究甚至不需要幾百張卡片的機器,只要採用對應的策略,少量的機器也可以做出很好的工作。第二,現有的多模態生成模型都存在各自的問題,GPT-4 還沒有開放視覺版,我們所有人也都有機會。而且,我認為 GPT-4 還有一個問題,就是多模態生成模型最終應該是什麼樣子它沒有給一個完美答案(實際上是沒有透露 GPT-4 的任何細節)。這其實是件好事,全世界的人都很聰明,每個人都有自己的想法,這可能會形成百花齊放的研究新局面。我的演講就到這裡,謝謝大家。
#以上是"中國人民大學研究員盧志武提出ChatGPT對多模態生成模型的重要影響"的詳細內容。更多資訊請關注PHP中文網其他相關文章!