Molmo,開源多模態模型正在發力!
雖然大家一直在期待谷歌、OpenAI 等等擁有無限資金儲備和頂尖人才的大廠做出新的 Sota 模型。不過,一家默默耕耘的創業公司 Ai2 釋出了一款多模態人工智慧模型 Molmo。
在下面展示的影片中,我們可以看到 Molmo 就像鋼鐵俠的「賈維斯」一樣萬能。想賣腳踏車,諮詢一下 Molmo 的建議,僅靠一張照片,Molmo 就能把腳踏車的顏色、品牌和二手售價搞清楚,並且幫你寫出一句順口的廣告語。
它也可以從虛擬世界幫你解決現實世界的問題,說一句:「Molmo,幫我買杯星巴克的南瓜拿鐵。」剩下的就不用動手了,開啟外賣網頁、點餐、付款,Molmo 一氣呵成。你所要做的,就是坐在家中,靜候咖啡送到你的手中。
機器之心也嘗試了一下他們線上釋出的 Demo 模型。相較於宣傳影片,其功能還很有限,所以我們讓其執行了影像描述任務,可以看到 Molmo 在細節描述和準確度上的表現確實很不錯,它甚至能注意到貓背上的小玩具:「玩具看起來像一隻綠色的老鼠,鼻子是粉紅色的,尾巴是蓬鬆的,羽毛色彩繽紛。」
但遺憾的是,Molmo 的漢語輸出能力非常有限,即使我們明確要求其輸出漢語,它也未能辦到:
除了 Demo,從資料來看,Molmo 的表現也足夠驚豔。在人類測評和一系列測試集中,Molmo 的得分擊敗了 Claude 3.5 Sonnet、GPT4V 等一眾頂尖模型,甚至可以媲美 GPT4o。
不過,Molmo 的體量更小,卻能「以小搏大」,效能超越了比它的引數量大十倍的其他模型。據 Ai2 執行長 Ali Farhadi 稱,Molmo 的體積小到可以在本地執行,它無需 API、無需訂閱、更無需成本高昂的液冷 GPU 叢集。
更重要的是 Molmo 完全免費且開源,所有的權重、程式碼、資料和評估流程都即將公佈。
部分模型權重、推理程式碼和一個基於 Molmo-7B-D 模型的公開演示已經可以使用。
體驗連結:https://huggingface.co/collections/allenai/molmo-66f379e6fe3b8ef090a8ca19
Ai2 又是如何做到「四兩撥千金」的呢?答案在 Ai2 公佈的技術報告和論文中,這個秘訣就是:資料。
論文連結:https://molmo.allenai.org/paper.pdf
目前,最先進的多模態模型大多是閉源的,即使有一些開源的模型表現不錯,但它們通常依賴於專有模型生成的合成資料。因此,如何從零開始構建高效能 VLM,對於開源社群來說,種種基礎知識都很難獲得。
各大多模態模型的開源程度
如上圖所示,Ai2 的研究團隊統計了目前 VLM 的開源程度,除了直接看模型的權重、資料和程式碼是否公開,他們還考慮了模型是否依賴於其他閉源模型。如果一個模型在訓練中用了其他專有模型生成的資料,那它就被標記為「蒸餾」,這意味著它無法完全獨立再現。
針對「閉源」的瓶頸,Ai2 使用語音描述收集了一個高細節度的影像描述資料集,這個資料集完全由人工標註,並可以公開訪問。
該團隊認為提升模型效能的訣竅是使用更少但質量更好的資料。面對數十億張影像,不可能僅靠人力完成篩選、精細標註和去重的工作,因此,他們沒有選擇 scaling law,而是精心挑選並註釋了 60 萬張影像。
資料集連結:https://docs.google.com/forms/u/0/d/e/1FAIpQLSdML1MhNNBDsCHpgWG65Oydg2SjZzVasyqlP08nBrWjZp_c7A/formResponse?pli=1
為了讓 Molmo 能處理更多工,Ai2 還引入了一個多樣化的資料混合對模型進一步微調,其中就包括一種獨特的二維「指向」資料。
因為現在市面上的多模態模型的工作原理是把圖片、聲音、文字等多種模態轉換成自然語言的表示,而基於「指向」資料的 Molmo 更進一步,它可以用非語言的方式(如指向物體)進行解答。
比如,向 Molmo 提問:「你可以指出這塊白板上的哪個模型的訓練時間最短嗎?」它不僅能用語音準確回答,還能直接用箭頭「指向」它是從哪些資料中得到答案的。
Molmo 用紅色的波紋標出了自己識別的物件。
要求 Molmo 數圖中有多少隻狗,它的計數方法是在每隻狗的臉上畫一個點。如果要求它數狗狗舌頭的數量,它會在每隻舌頭上畫一個點。
「指向」讓 Molmo 能夠在零樣本的情況下執行更廣泛的任務,同時,無需檢視網站的程式碼,它可以懂得如何瀏覽頁面、提交表單。
這種能力也讓 Molmo 更自然地連線現實世界和數字世界,為下一代應用程式提供全新的互動方式。
PixMo:資料質量勝過數量
通常而言,要訓練一個大型 VLM,需要數以十億計的影像 - 文字對資料。而這些資料往往取自網路,因此噪聲很高。模型就需要在訓練過程中分離訊號與噪聲。有噪聲文字還會導致模型輸出出現幻覺。
基於這樣的考慮,該團隊採用了不同的方法來獲取資料。他們將資料質量放在了更重要的位置,結果發現,使用少於 1M 的影像 - 文字對就足以訓練出強大的模型 —— 這比許多其它同類方法少了 3 個數量級。
Molmo 系列模型之所以能取得成功,最關鍵的要素莫過於 PixMo——Molmo 的訓練資料。
Pixmo 包含兩大類資料:(1) 用於多模式預訓練的密集描述資料和 (2) 用於實現各種使用者互動的監督式微調資料,包括問答、文件閱讀和指向等行為。
該團隊表示,在收集這些資料時,主要限制是避免使用已有的 VLM,因為「我們希望從頭構建一個高效能 VLM」,而不是蒸餾某個已有的系統(但注意,他們也確實會使用僅語言的 LLM,但並不會把影像輸入這些模型)。
在實踐中,要讓人類來標註大量資料是非常困難的。而且人類編寫的影像描述往往僅會提及一些突出的視覺元素,而缺乏細節。如果強制要求最低字數,標註者要麼需要花費太長時間,使收集過程成本高昂,要麼就會從專有 VLM 複製貼上響應,這又會違背避免蒸餾模型的目標。
因此,開放研究社群一直在努力,在不依賴專有 VLM 的合成資料的前提下,建立這樣的資料集。
該團隊提出了一種簡單但有效的資料收集方法,可以避免這些問題:讓標註者用語音描述影像 60 到 90 秒,而不是要求他們打字。他們讓標註者詳細描述他們看到的一切,包括空間定位和關係的描述。
從結果上看,該團隊發現,透過這種模態切換「技巧」,標註者可以在更短的時間內提供更詳細的描述,並且對於每個描述都有對應的錄音,可證明未使用 VLM。
總的來說,他們收集了 71.2 萬幅影像的詳細音訊描述,涵蓋 50 個高層級主題。
他們的混合微調資料包含了標準的學術資料集以及一些新收集的資料集,這些新資料集也將會公開發布。學術資料集主要用於使模型在基準測試資料上表現良好,而新收集的資料集則能賦予模型大量重要功能,包括在與使用者聊天時能夠回答關於影像的一般性問題(超出學術基準資料範圍)、提升 OCR 相關任務(如讀取文件和圖表)、精準識別模擬時鐘的時間,以及在影像中指向一個或多個視覺元素。
指向功能可為影像中的畫素提供自然的解釋,從而帶來 Molmo 全新且更強大的能力。該團隊認為,指向將成為 VLM 和智慧體之間重要的交流方式。例如,一個機器人可以查詢具有指向功能的 VLM 以獲得路徑點或要拾取物體的位置,而一個網頁智慧體可以查詢 VLM 以定位需要點選的使用者介面元素。這組系列資料集也分為以下六個:
PixMo-Cap:用於預訓練 VLM 的資料集,可讓其理解影像細節,其中包含 71.2 萬張不同影像和大約 130 萬個密集影像描述。
PixMo-AskModelAnything:其設計目標是讓 AI 模型可回答有關影像的不同問題。其中包含 16.2 個問答對,涉及 7.3 萬影像。其中問題由人類標註者編寫,答案則來自一個語言模型。
PixMo-Points:其中的影像描述資料是關於影像中物體的位置。該資料集包含 230 萬個問題 - 位置點對,涉及 42.8 萬張影像。
PixMo-CapQA:包含 21.4 萬個問答對,涉及 16.5 萬個使用語言模型生成的影像描述。
PixMo-Docs:包含 25.5 萬張帶有大量文字和圖表(表格、文件、圖表)的影像,還有語言模型生成的相應程式碼。另有 230 萬對基於生成的程式碼生成的問答。
PixMo-Clocks:這是一個合成資料集,其中包含 82.6 萬張不同款式的模擬時鐘影像,以及有關相應時間的問答。
基準評估和大規模人類偏好排名
為了進行全面的評估,該團隊既使用了學術基準評測,也執行了人類評估以根據使用者偏好對模型進行排名。
從結果上看,學術基準評測結果與人類評估結果高度一致。唯一的例外是 Qwen VL2,其在學術基準上表現很好,但在人類評估中表現相對較差。
該團隊總結得到了一些關鍵結果,並表示「Small is the new big, less is the new more」,詳情如下:
Molmo 系列模型中最高效的是 MolmoE-1B,其基於完全開放的 OLMoE-1B-7B 混合專家 LLM,在學術基準和人類評估上的表現接近 GPT-4V。
在學術基準和人類評估基準上,兩個 Molmo-7B 模型的表現大概在 GPT-4V 和 GPT-4o 之間,並且在這兩個基準上均顯著優於近期釋出的 Pixtral 12B 模型。
表現最好的 Molmo-72B 在學術基準上取得了最高分,但人類評估基準上則僅次於 GPT-4o,居於第二。
表現最好的 Molmo-72B 也勝過當前最佳的一些專有系統,包括 Gemini 1.5 Pro 和 Flash 以及 Claude 3.5 Sonnet。
在接受 TechCrunch 的採訪時, Ai2 執行長 Ali Farhadi 表示,人工智慧界有條定律 ——「越大越好」,訓練資料越多,模型中的引數就越多,需要的算力也就越多。但發展到一定階段時,「scaling law」就會遇到瓶頸,根本無法繼續擴大模型規模了:沒有足夠的資料、或者計算成本和時間變得太高,以至於弄巧成拙。你只能利用現有的資源,或者更好的辦法是,用更少的資源做更多的事情。
Ai2 執行長 Ali Farhadi
模型架構
Molmo 的模型架構採用了簡單的標準設計,也就是將一個語言模型和一個影像編碼器組合起來。其包含 4 個元件:
前處理器,其作用是將輸入影像轉換為一組多尺寸和經過不同裁剪的影像;
ViT 影像編碼器,其作用是將每一張影像都獨立對映成一組視覺 token;
聯結器,其作用是使用 MLP 將視覺 token 投影成語言模型的輸入維度,然後彙集視覺 token 以減少其數量;
僅解碼器 Transformer LLM。
該團隊基於這一模板構建了一個模型系列。透過選擇不同的視覺編碼器和 LLM 可以為其賦予不同的引數。在這些選擇基礎上,所有模型的後續訓練資料和方案都一樣。
對於視覺編碼器,他們釋出的所有模型均使用 OpenAI 的 ViT-L/14 336px CLIP 模型,該模型的效果好且質量穩定。
對於 LLM,他們採用不同的規模,基於不同的開放程度訓練了模型:OLMo-7B-1024 的權重和資料完全開放的(使用了 2024 年 10 月的預釋出權重,其將於晚些時候公佈)、高效的 OLMoE-1B-7B-0924 也是完全開放權重和資料,Qwen2 7B、Qwen2 72B、Mistral 7B、Gemma2 9B 則是僅開放權重。新發布的是該系列的 4 個樣本。
他們的訓練過程也很簡單,首先從已經獨立完成預訓練的視覺編碼器和 LLM 開始,接下來分為兩個階段:
多模態預訓練,以使用他們新收集的描述資料生成描述;
使用上述混合資料集進行監督式微調。
這兩個階段都會對所有引數進行更新,並且過程中不使用 RLHF。
釋出計劃
該團隊首次釋出就分量十足,包含一個演示模型、推理程式碼、一份簡要的技術報告和以下模型權重:
MolmoE-1B,由 1B(活躍引數量)的專家模型構成的混合專家模型,共 7B
Molmo-7B-O,最開放的 7B 模型
Molmo-7B-D,演示版本的模型
Molmo-72B,表現最佳的模型
未來兩個月,該團隊還將陸續釋出以下研究成果:
一份詳細的技術報告
PixMo 系列資料集
更多模型權重和檢查點
訓練和評估程式碼
更多研究細節,可訪問原部落格。